<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">вт, 12 нояб. 2024 г., 00:00 Terje J. Hanssen <<a href="mailto:terjejhanssen@gmail.com" target="_blank" rel="noreferrer">terjejhanssen@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u>
<div>
<br>
<br>
<br>
<div>Den 26.10.2024 18:31, skrev Terje J.
Hanssen:<br>
</div>
<blockquote type="cite">
<br>
<br>
<br>
<div>Den 26.10.2024 17:26, skrev Terje J.
Hanssen:<br>
</div>
<blockquote type="cite">
<br>
<br>
<br>
<div>Den 26.10.2024 17:10, skrev Andrew
Randrianasulu:<br>
</div>
<blockquote type="cite">
<div dir="auto">
<div><br>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">сб, 26 окт. 2024 г.,
17:39 Terje J. Hanssen <<a href="mailto:terjejhanssen@gmail.com" rel="noreferrer noreferrer" target="_blank">terjejhanssen@gmail.com</a>>:<br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div> <br>
<br>
<br>
<div>Den 26.10.2024 02:12, skrev Andrew
Randrianasulu:<br>
</div>
<blockquote type="cite">
<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" rel="noreferrer noreferrer noreferrer" target="_blank">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 href="https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding" rel="noreferrer noreferrer noreferrer" target="_blank">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>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</blockquote>
<font face="Courier New, Courier, monospace">typo, should be<br>
-vf format=yuv422p10le<br>
<br>
</font>
<blockquote type="cite">
<blockquote type="cite">
<div dir="auto">
<div>
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<blockquote><font face="Courier New, Courier, monospace"> </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>
</font></div>
</blockquote>
</div>
</div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">Good to know.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Hopefully if we on the right track with
"just" 10bit yuv420 encoding we will find way to stuff
more complex cases in there too ....</div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">Does it work with vaapi encoder (system
ffmpeg as cli application) too?</div>
</div>
</blockquote>
<br>
I am testing similar now with vaapi and will report on that
thread soon.<br>
The above i/o files and simple code line are video only, to
avoid confusing from 16ch audio in the prores_hq.mov <br>
</blockquote>
</blockquote>
<br>
Regarding ffmpeg quality flags or parameters, I wonder if is an idea
to standardized on "-global_quality" at least for qsv and VAAPI if
possible?<br>
Documentation is limited, though it looks like the range may be: 1
(best) - 51; 18 and 25 and even 50 and 90 are used by ffmpeg
examples as follows:<br></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">as long as resulting profiles still run on AMD's (mesa3d) vaapi implementation and older Intels ...</div><div dir="auto"><br></div><div dir="auto">feel free to modify them and post them here with note to Phyllis so she hopefully will re-test them on her hardware and if no error arise add to our main git </div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>
<br>
<a href="https://nelsonslog.wordpress.com/2022/08/22/ffmpeg-and-hevc_qsv-intel-quick-sync-settings/" rel="noreferrer noreferrer" target="_blank">https://nelsonslog.wordpress.com/2022/08/22/ffmpeg-and-hevc_qsv-intel-quick-sync-settings/</a><br>
<a href="https://kimathir.wordpress.com/2018/05/07/intel-qsv-encoding-coffee-lake/" rel="noreferrer noreferrer" target="_blank">https://kimathir.wordpress.com/2018/05/07/intel-qsv-encoding-coffee-lake/</a><br>
<a href="https://superuser.com/questions/1830920/constructing-encoding-statements-using-ffmpeg-qsv-and-intel-arc-card" rel="noreferrer noreferrer" target="_blank">https://superuser.com/questions/1830920/constructing-encoding-statements-using-ffmpeg-qsv-and-intel-arc-card</a><br>
<a href="https://trac.ffmpeg.org/wiki/Hardware/QuickSync#FullExamples" rel="noreferrer noreferrer" target="_blank">https://trac.ffmpeg.org/wiki/Hardware/QuickSync#FullExamples</a><br>
<a href="https://trac.ffmpeg.org/wiki/Hardware/VAAPI#FullExamples" rel="noreferrer noreferrer" target="_blank">https://trac.ffmpeg.org/wiki/Hardware/VAAPI#FullExamples</a><br>
<br>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<div dir="auto">
<div dir="auto"><br>
</div>
<div dir="auto">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><font face="Courier New, Courier, monospace"> <br>
</font>
<blockquote><font face="Courier New, Courier, monospace"><br>
</font></blockquote>
<br>
<br>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
<br>
</blockquote>
<br>
</blockquote>
<br>
</div>
</blockquote></div></div></div>