<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<br>
<br>
<br>
<div class="moz-cite-prefix">Den 26.10.2024 02:12, skrev Andrew
Randrianasulu:<br>
</div>
<blockquote type="cite"
cite="mid:CA+rFky4hL7fbVcpdsqWvtkzNy9QaDDYF-Kf81OmPUV6J+mpwqw@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="auto">
<div><br>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">сб, 26 окт. 2024 г., 03:06
Terje J. Hanssen via Cin <<a
href="mailto:cin@lists.cinelerra-gg.org"
moz-do-not-send="true" class="moz-txt-link-freetext">cin@lists.cinelerra-gg.org</a>>:<br>
</div>
<blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div> An overview over the system FFmpeg 7.1 supported
QSV pixel formats and profiles:<br>
<br>
<br>
<font face="Courier New, Courier, monospace">ffmpeg
-hide_banner -encoders | grep qsv<br>
V..... av1_qsv AV1 (Intel Quick Sync
Video acceleration) (codec av1)<br>
V..... h264_qsv H.264 / AVC / MPEG-4 AVC
/ MPEG-4 part 10 (Intel Quick Sync Video acceleration)
(codec h264)<br>
V..... hevc_qsv HEVC (Intel Quick Sync
Video acceleration) (codec hevc)<br>
V..... mjpeg_qsv MJPEG (Intel Quick Sync
Video acceleration) (codec mjpeg)<br>
V..... mpeg2_qsv MPEG-2 video (Intel Quick
Sync Video acceleration) (codec mpeg2video)<br>
V..... vp9_qsv VP9 video (Intel Quick
Sync Video acceleration) (codec vp9)<br>
<br>
<br>
ffmpeg -hide_banner -h encoder=av1_qsv | egrep
'Supported|profile|main|high|professional'<br>
Supported hardware devices: qsv qsv qsv <br>
Supported pixel formats: nv12 p010le qsv<br>
-profile <int> E..V.......
(from 0 to INT_MAX) (default unknown)<br>
main 1 E..V.......<br>
<br>
<br>
ffmpeg -hide_banner -h encoder=hevc_qsv | egrep
'Supported|profile|main|high|professional'<br>
Supported hardware devices: qsv qsv qsv <br>
Supported pixel formats: nv12 p010le p012le
yuyv422 y210le qsv bgra x2rgb10le vuyx xv30le<br>
-profile <int> E..V.......
(from 0 to INT_MAX) (default unknown)<br>
main 1 E..V.......<br>
main10 2 E..V.......<br>
mainsp 3 E..V.......<br>
-tier <int> E..V.......
Set the encoding tier (only level >= 4 can support
high tier) (from 0 to 256) (default high)<br>
main 0 E..V.......<br>
high 256 E..V.......<br>
<br>
<br>
ffmpeg -hide_banner -h encoder=h264_qsv | egrep
'Supported|profile|main|high|professional'<br>
Supported hardware devices: qsv qsv qsv <br>
Supported pixel formats: nv12 qsv<br>
-profile <int> E..V.......
(from 0 to INT_MAX) (default unknown)<br>
main 77 E..V.......<br>
high 100 E..V.......<br>
</font></div>
</blockquote>
</div>
</div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">from this we can conclude av1/hevc should have
10bit option ...</div>
<div dir="auto"><br>
</div>
<div dir="auto">probably writing down numerical values for
profiles (high, main...) for each codec is also good idea.</div>
<br>
</div>
</blockquote>
<br>
A reference and overview table for QSV capabilties for each iGPU and
dGPU generation is here<br>
<a class="moz-txt-link-freetext" href="https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding">https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding</a><br>
<br>
And finally, after much trying and failing, I was able to prove that
true 10bit 422 color depth hevc_qsv encoding is possible with my
system ffmpeg 7.1<br>
.<br>
While pixel format p010le results in "just" 10bit yuv420p, the clue
is to to use either (trying this for av1_qsv, auto- switch to 8bit
nv12):<br>
<blockquote><font face="Courier New, Courier, monospace">-pix_fmt
y210le</font><br>
<font face="Courier New, Courier, monospace">or</font><br>
<font face="Courier New, Courier, monospace">-v
format=yuv422p010le<br>
</font></blockquote>
<font face="Courier New, Courier, monospace">Code example:<br>
<br>
ffmpeg -hide_banner -hwaccel_output_format qsv -i cfhd01.mkv -c:v
hevc_qsv -pix_fmt y210le cfhd01_hevc_qsv_pxfmt_y210le.mp4<br>
<br>
Input file:<br>
<br>
ffprobe -hide_banner cfhd01.mkv<br>
Input #0, matroska,webm, from 'cfhd01.mkv':<br>
Metadata:<br>
ENCODER : Lavf61.1.100<br>
Duration: 00:01:11.24, start: 0.000000, bitrate: 393480 kb/s<br>
Stream #0:0(eng): Video: cfhd (CFHD / 0x44484643),
yuv422p10le(tv, bt709, top coded first (swapped)), 1920x1080, SAR
1:1 DAR 16:9, 25 fps, 25 tbr, 1k tbn (default)<br>
Metadata:<br>
HANDLER_NAME : Apple Video Media Handler<br>
VENDOR_ID : appl<br>
ENCODER : Lavc61.3.100 cfhd<br>
DURATION : 00:01:11.240000000<br>
<br>
Output file:<br>
<br>
ffprobe -hide_banner cfhd01_hevc_qsv_pxfmt_y210le.mp4<br>
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'cfhd01_hevc_qsv_pxfmt_y210le.mp4':<br>
Metadata:<br>
major_brand : isom<br>
minor_version : 512<br>
compatible_brands: isomiso2mp41<br>
encoder : Lavf61.7.100<br>
Duration: 00:01:11.24, start: 0.000000, bitrate: 31770 kb/s<br>
Stream #0:0[0x1](eng): Video: hevc (Rext) (hev1 / 0x31766568),
yuv422p10le(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9],
31767 kb/s, 25 fps, 25 tbr, 12800 tbn (default)<br>
Metadata:<br>
handler_name : Apple Video Media Handler<br>
vendor_id : [0][0][0][0]<br>
encoder : Lavc61.19.100 hevc_qsv<br>
<br>
</font>
<blockquote><font face="Courier New, Courier, monospace"><br>
</font></blockquote>
<br>
<br>
</body>
</html>