Skip to content

Commit fb7b976

Browse files
committed
Merge branch 'main' into ui
2 parents e8d1f0f + 830ccba commit fb7b976

6 files changed

Lines changed: 25 additions & 10 deletions

File tree

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ The script automatically detect and reports on the following major hardware enco
3333
| Media Foundation | H.264、H.265、AV1 |
3434
| D3D12VA (Direct3D 12 Video Acceleration) | H.264、H.265、AV1 |
3535
| VAAPI (Video Acceleration API) | H.264、H.265、AV1、MJPEG、MPEG-2、VP8、VP9 |
36-
| Vulkan | H.264、H.265 |
37-
| Apple VideoToolbox | H.264、H.265 |
36+
| Vulkan | H.264、H.265、AV1 |
37+
| Apple VideoToolbox | H.264、H.265、ProRes |
3838

3939
### Decoders
4040
The script automatically detect and reports on the following major hardware decoders and their supported formats:
@@ -46,7 +46,7 @@ The script automatically detect and reports on the following major hardware deco
4646
| DXVA2 (DirectX Video Acceleration) | H.264、H.265、MJPEG、MPEG-1、MPEG-2、MPEG-4、VP8 |
4747
| D3D11VA (Direct3D 11 Video Acceleration) | H.264、H.265、AV1、MJPEG、MPEG-1、MPEG-2、MPEG-4、VP8、VP9 |
4848
| Vulkan | H.264、H.265、AV1 |
49-
| Apple VideoToolbox | H.264、H.265、MPEG-2、MPEG-4 |
49+
| Apple VideoToolbox | H.264、H.265、MPEG-2、MPEG-4、ProRes |
5050

5151
### Bit-depth and Chroma Subsampling Detection
5252
In addition to resolution-based testing, the tool now includes comprehensive bit-depth and chroma subsampling detection. This feature tests hardware codec support for different pixel formats, helping you understand the full capabilities of your hardware encoders and decoders.

README.zh.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@
3131
| Media Foundation | H.264、H.265、AV1 |
3232
| D3D12VA (Direct3D 12 Video Acceleration) | H.264、H.265、AV1 |
3333
| VAAPI (Video Acceleration API) | H.264、H.265、AV1、MJPEG、MPEG-2、VP8、VP9 |
34-
| Vulkan | H.264、H.265 |
35-
| Apple VideoToolbox | H.264、H.265 |
34+
| Vulkan | H.264、H.265、AV1 |
35+
| Apple VideoToolbox | H.264、H.265、ProRes |
3636

3737
### 解码器
3838
脚本会自动检测并报告以下主流硬件解码器及其支持的格式:
@@ -44,7 +44,7 @@
4444
| DXVA2 (DirectX Video Acceleration) | H.264、H.265、MJPEG、MPEG-1、MPEG-2、MPEG-4、VP8 |
4545
| D3D11VA (Direct3D 11 Video Acceleration) | H.264、H.265、AV1、MJPEG、MPEG-1、MPEG-2、MPEG-4、VP8、VP9 |
4646
| Vulkan | H.264、H.265、AV1 |
47-
| Apple VideoToolbox | H.264、H.265、MPEG-2、MPEG-4 |
47+
| Apple VideoToolbox | H.264、H.265、MPEG-2、MPEG-4、ProRes |
4848

4949
### 位深和色度采样检测
5050
除了基于分辨率的测试外,该工具现在还包含全面的位深和色度采样检测功能。此功能测试硬件编解码器对不同像素格式的支持,帮助您了解硬件编码器和解码器的完整能力。

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.2.2
1+
0.2.3

src/HwCodecDetect/bitdepth_chroma_detect.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,10 @@
5858
("vp9_vaapi", "vp9"): "Video Acceleration VP9 Encoder(VAAPI)",
5959
("h264_vulkan", "h264"): "Vulkan Hardware H264 Encoder(Vulkan)",
6060
("hevc_vulkan", "h265"): "Vulkan Hardware H265 Encoder(Vulkan)",
61+
("av1_vulkan", "av1"): "Vulkan Hardware AV1 Encoder(Vulkan)",
6162
("h264_videotoolbox", "h264"): "MacOS Hardware H264 Encoder(VideoToolbox)",
6263
("hevc_videotoolbox", "h265"): "MacOS Hardware H265 Encoder(VideoToolbox)",
64+
("prores_videotoolbox", "prores"): "MacOS Hardware ProRes Encoder(VideoToolbox)",
6365
}
6466

6567
# Decoder titles (same as main module)
@@ -101,16 +103,18 @@
101103
("videotoolbox", "h265"): "MacOS Hardware H265 Decoder(VideoToolbox)",
102104
("videotoolbox", "mpeg2"): "MacOS Hardware MPEG-2 Decoder(VideoToolbox)",
103105
("videotoolbox", "mpeg4"): "MacOS Hardware MPEG-4 Decoder(VideoToolbox)",
106+
("videotoolbox", "prores"): "MacOS Hardware ProRes Decoder(VideoToolbox)",
104107
}
105108

106109
# Encoder definitions (same as main module)
107110
ENCODERS = {
108111
"h264": {"lib": "libx264", "hw_encoders": ["h264_nvenc", "h264_qsv", "h264_amf", "h264_mf", "h264_d3d12va", "h264_vaapi", "h264_vulkan", "h264_videotoolbox"]},
109112
"h265": {"lib": "libx265", "hw_encoders": ["hevc_nvenc", "hevc_qsv", "hevc_amf", "hevc_mf", "hevc_d3d12va", "hevc_vaapi", "hevc_vulkan", "hevc_videotoolbox"]},
110-
"av1": {"lib": "librav1e", "hw_encoders": ["av1_nvenc", "av1_qsv", "av1_amf", "av1_mf", "av1_d3d12va", "av1_vaapi"]},
113+
"av1": {"lib": "librav1e", "hw_encoders": ["av1_nvenc", "av1_qsv", "av1_amf", "av1_mf", "av1_d3d12va", "av1_vaapi", "av1_vulkan"]},
111114
"mpeg2": {"lib": "mpeg2video", "hw_encoders": ["mpeg2_qsv", "mpeg2_vaapi"]},
112115
"vp8": {"lib": "libvpx", "hw_encoders": ["vp8_vaapi"]},
113116
"vp9": {"lib": "libvpx-vp9", "hw_encoders": ["vp9_qsv", "vp9_vaapi"]},
117+
"prores": {"lib": "prores", "hw_encoders": ["prores_videotoolbox"]},
114118
}
115119

116120
# Decoder definitions (same as main module)
@@ -123,6 +127,7 @@
123127
"mpeg4": {"lib": "mpeg4", "hw_decoders": ["mpeg4_cuvid", "dxva2", "d3d11va", "videotoolbox"]},
124128
"vp8": {"lib": "libvpx", "hw_decoders": ["vp8_cuvid", "vp8_qsv", "dxva2", "d3d11va"]},
125129
"vp9": {"lib": "libvpx-vp9", "hw_decoders": ["vp9_cuvid", "vp9_qsv", "dxva2", "d3d11va"]},
130+
"prores": {"lib": "prores", "hw_decoders": ["videotoolbox"]},
126131
}
127132

128133

src/HwCodecDetect/gui.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@
7979
("videotoolbox", "h265"): "MacOS Hardware H265 Decoder(VideoToolbox)",
8080
("videotoolbox", "mpeg2"): "MacOS Hardware MPEG-2 Decoder(VideoToolbox)",
8181
("videotoolbox", "mpeg4"): "MacOS Hardware MPEG-4 Decoder(VideoToolbox)",
82+
("videotoolbox", "prores"): "MacOS Hardware ProRes Decoder(VideoToolbox)",
8283
}
8384

8485
DECODERS = {
@@ -91,6 +92,7 @@
9192
"mpeg4": {"lib": "mpeg4", "hw_decoders": ["mpeg4_cuvid", "dxva2", "d3d11va", "videotoolbox"]},
9293
"vp8": {"lib": "libvpx", "hw_decoders": ["vp8_cuvid", "vp8_qsv", "dxva2", "d3d11va"]},
9394
"vp9": {"lib": "libvpx-vp9", "hw_decoders": ["vp9_cuvid", "vp9_qsv", "dxva2", "d3d11va"]},
95+
"prores": {"lib": "prores", "hw_decoders": ["videotoolbox"]},
9496
}
9597

9698
# Encoder titles
@@ -122,18 +124,21 @@
122124
("vp9_vaapi", "vp9"): "Video Acceleration VP9 Encoder(VAAPI)",
123125
("h264_vulkan", "h264"): "Vulkan Hardware H264 Encoder(Vulkan)",
124126
("hevc_vulkan", "h265"): "Vulkan Hardware H265 Encoder(Vulkan)",
127+
("av1_vulkan", "av1"): "Vulkan Hardware AV1 Encoder(Vulkan)",
125128
("h264_videotoolbox", "h264"): "MacOS Hardware H264 Encoder(VideoToolbox)",
126129
("hevc_videotoolbox", "h265"): "MacOS Hardware H265 Encoder(VideoToolbox)",
130+
("prores_videotoolbox", "prores"): "MacOS Hardware ProRes Encoder(VideoToolbox)",
127131
}
128132

129133
ENCODERS = {
130134
"h264": {"lib": "libx264", "hw_encoders": ["h264_nvenc", "h264_qsv", "h264_amf", "h264_mf", "h264_d3d12va", "h264_vaapi", "h264_vulkan", "h264_videotoolbox"]},
131135
"h265": {"lib": "libx265", "hw_encoders": ["hevc_nvenc", "hevc_qsv", "hevc_amf", "hevc_mf", "hevc_d3d12va", "hevc_vaapi", "hevc_vulkan", "hevc_videotoolbox"]},
132-
"av1": {"lib": "librav1e", "hw_encoders": ["av1_nvenc", "av1_qsv", "av1_amf", "av1_mf", "av1_d3d12va", "av1_vaapi"]},
136+
"av1": {"lib": "librav1e", "hw_encoders": ["av1_nvenc", "av1_qsv", "av1_amf", "av1_mf", "av1_d3d12va", "av1_vaapi", "av1_vulkan"]},
133137
"mjpeg": {"lib": "mjpeg", "hw_encoders": ["mjpeg_qsv", "mjpeg_vaapi"]},
134138
"mpeg2": {"lib": "mpeg2video", "hw_encoders": ["mpeg2_qsv", "mpeg2_vaapi"]},
135139
"vp8": {"lib": "libvpx", "hw_encoders": ["vp8_vaapi"]},
136140
"vp9": {"lib": "libvpx-vp9", "hw_encoders": ["vp9_qsv", "vp9_vaapi"]},
141+
"prores": {"lib": "prores", "hw_encoders": ["prores_videotoolbox"]},
137142
}
138143

139144
# Combine both decoder and encoder data

src/HwCodecDetect/run_tests.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@
7979
("videotoolbox", "h265"): "MacOS Hardware H265 Decoder(VideoToolbox)",
8080
("videotoolbox", "mpeg2"): "MacOS Hardware MPEG-2 Decoder(VideoToolbox)",
8181
("videotoolbox", "mpeg4"): "MacOS Hardware MPEG-4 Decoder(VideoToolbox)",
82+
("videotoolbox", "prores"): "MacOS Hardware ProRes Decoder(VideoToolbox)",
8283
}
8384

8485
DECODERS = {
@@ -91,6 +92,7 @@
9192
"mpeg4": {"lib": "mpeg4", "hw_decoders": ["mpeg4_cuvid", "dxva2", "d3d11va", "videotoolbox"]},
9293
"vp8": {"lib": "libvpx", "hw_decoders": ["vp8_cuvid", "vp8_qsv", "dxva2", "d3d11va"]},
9394
"vp9": {"lib": "libvpx-vp9", "hw_decoders": ["vp9_cuvid", "vp9_qsv", "dxva2", "d3d11va"]},
95+
"prores": {"lib": "prores", "hw_decoders": ["videotoolbox"]},
9496
}
9597

9698
# --- Encoder Definitions ---
@@ -122,18 +124,21 @@
122124
("vp9_vaapi", "vp9"): "Video Acceleration VP9 Encoder(VAAPI)",
123125
("h264_vulkan", "h264"): "Vulkan Hardware H264 Encoder(Vulkan)",
124126
("hevc_vulkan", "h265"): "Vulkan Hardware H265 Encoder(Vulkan)",
127+
("av1_vulkan", "av1"): "Vulkan Hardware AV1 Encoder(Vulkan)",
125128
("h264_videotoolbox", "h264"): "MacOS Hardware H264 Encoder(VideoToolbox)",
126129
("hevc_videotoolbox", "h265"): "MacOS Hardware H265 Encoder(VideoToolbox)",
130+
("prores_videotoolbox", "prores"): "MacOS Hardware ProRes Encoder(VideoToolbox)",
127131
}
128132

129133
ENCODERS = {
130134
"h264": {"lib": "libx264", "hw_encoders": ["h264_nvenc", "h264_qsv", "h264_amf", "h264_mf", "h264_d3d12va", "h264_vaapi", "h264_vulkan", "h264_videotoolbox"]},
131135
"h265": {"lib": "libx265", "hw_encoders": ["hevc_nvenc", "hevc_qsv", "hevc_amf", "hevc_mf", "hevc_d3d12va", "hevc_vaapi", "hevc_vulkan", "hevc_videotoolbox"]},
132-
"av1": {"lib": "librav1e", "hw_encoders": ["av1_nvenc", "av1_qsv", "av1_amf", "av1_mf", "av1_d3d12va", "av1_vaapi"]},
136+
"av1": {"lib": "librav1e", "hw_encoders": ["av1_nvenc", "av1_qsv", "av1_amf", "av1_mf", "av1_d3d12va", "av1_vaapi", "av1_vulkan"]},
133137
"mjpeg": {"lib": "mjpeg", "hw_encoders": ["mjpeg_qsv", "mjpeg_vaapi"]},
134138
"mpeg2": {"lib": "mpeg2video", "hw_encoders": ["mpeg2_qsv", "mpeg2_vaapi"]},
135139
"vp8": {"lib": "libvpx", "hw_encoders": ["vp8_vaapi"]},
136140
"vp9": {"lib": "libvpx-vp9", "hw_encoders": ["vp9_qsv", "vp9_vaapi"]},
141+
"prores": {"lib": "prores", "hw_encoders": ["prores_videotoolbox"]},
137142
}
138143

139144
# Combine both decoder and encoder data into a single structure

0 commit comments

Comments
 (0)