[Cin] FFmpeg supported QSV pixel formats and profiles

Andrew Randrianasulu randrianasulu at gmail.com
Sat Oct 12 18:43:01 CEST 2024


сб, 12 окт. 2024 г., 16:59 Terje J. Hanssen <terjejhanssen at gmail.com>:

>
>
> Den 12.10.2024 15:09, skrev Terje J. Hanssen:
>
>
>
> Den 12.10.2024 14:39, skrev Andrew Randrianasulu:
>
>
>
> сб, 12 окт. 2024 г., 13:23 Terje J. Hanssen via Cin <
> cin at lists.cinelerra-gg.org>:
>
>>
>>
>> Den 12.10.2024 12:08, skrev Terje J. Hanssen:
>>
>>  An overview over the system FFmpeg 7.x supported QSV pixel formats and
>> profiles:
>>
>>
>> ffmpeg -hide_banner -h encoder=hevc_qsv | egrep 'Supported|profile|main'
>>     Supported hardware devices: qsv qsv qsv
>>     Supported pixel formats: nv12 p010le p012le yuyv422 y210le qsv bgra
>> x2rgb10le vuyx xv30le
>>   -profile           <int>        E..V....... (from 0 to INT_MAX)
>> (default unknown)
>>      main            1            E..V.......
>>      main10          2            E..V.......
>>      mainsp          3            E..V.......
>>      main            0            E..V.......
>>
>>
>> ffmpeg -hide_banner -h encoder=h264_qsv | egrep 'Supported|profile|main'
>>     Supported hardware devices: qsv qsv qsv
>>     Supported pixel formats: nv12 qsv
>>   -profile           <int>        E..V....... (from 0 to INT_MAX)
>> (default unknown)
>>      main            77           E..V.......
>>
>>
> I think we can concentrate on av1 for now.
>
> does it fail if you add "-profile main" to ffmpeg command line for dv av1
> encode?
>
> dv due to it being software codec, so ffmpeg forced to push and convert
> frames from system memory, as opposed to hdv (hw) = > av1 on-gpu transcode)
>
>
> No, it doesn't fail:
>
>
> but claims:
> "Please use -profile:a or -profile:v, -profile is ambiguous"
>


ah, I think it mostly relevant to ffmpeg as cli application.

Now, moving to cingg, does adding

preset 4
b 1570k

into profile file

fix anything?

you can change loglevel to debug in bin/ffmpeg/encode.opts too, it will
produce bugger log, hopefully with more detailed error msg.




> ffmpeg -hide_banner -hwaccel_output_format qsv -qsv_device
> /dev/dri/renderD128 -i dv01_07.dv -c:v av1_qsv -preset 4 -profile main -b:v
> 1570k dv01_07_av1_qsv_main_pr4_bv1570k.webm
> libva info: VA-API version 1.22.0
> libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
> libva info: Found init function __vaDriverInit_1_22
> libva info: va_openDriver() returns 0
> libva info: VA-API version 1.22.0
> libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
> libva info: Found init function __vaDriverInit_1_22
> libva info: va_openDriver() returns 0
> [dv @ 0x5606d5914c00] Estimating duration from bitrate, this may be
> inaccurate
> Input #0, dv, from 'dv01_07.dv':
>   Metadata:
>     timecode        : 01:09:35:09
>   Duration: 00:01:53.28, start: 0.000000, bitrate: 28800 kb/s
>   Stream #0:0: Video: dvvideo, yuv420p, 720x576 [SAR 16:15 DAR 4:3], 28800
> kb/s, 60k fps, 25 tbr, 60k tbn
>   Stream #0:1: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
> Please use -profile:a or -profile:v, -profile is ambiguous
> Stream mapping:
>   Stream #0:0 -> #0:0 (dvvideo (native) -> av1 (av1_qsv))
>   Stream #0:1 -> #0:1 (pcm_s16le (native) -> opus (libopus))
> Press [q] to stop, [?] for help
> [libopus @ 0x5606d5ac5100] No bit rate set. Defaulting to 96000 bps.
> Output #0, webm, to 'dv01_07_av1_qsv_main_pr4_bv1570k.webm':
>   Metadata:
>     timecode        : 01:09:35:09
>     encoder         : Lavf61.1.100
>   Stream #0:0: Video: av1, nv12(bottom coded first (swapped)), 720x576
> [SAR 16:15 DAR 4:3], q=2-31, 1570 kb/s, 25 fps, 1k tbn
>       Metadata:
>         encoder         : Lavc61.3.100 av1_qsv
>   Stream #0:1: Audio: opus, 48000 Hz, stereo, s16, 96 kb/s
>       Metadata:
>         encoder         : Lavc61.3.100 libopus
> [out#0/webm @ 0x5606d591cf40] video:22613KiB audio:1186KiB subtitle:0KiB
> other streams:0KiB global headers:0KiB muxing overhead: 0.223557%
> frame= 2832 fps=1764 q=-0.0 Lsize=   23852KiB time=00:01:53.24
> bitrate=1725.5kbits/s speed=70.5x
>
>
>
>
>>
>> hevc_qsv and h264_qsv encoders also have "high" profile:
>>
>>
>> ffmpeg -hide_banner -h encoder=hevc_qsv | egrep
>> 'Supported|profile|main|high'
>>     Supported hardware devices: qsv qsv qsv
>>     Supported pixel formats: nv12 p010le p012le yuyv422 y210le qsv bgra
>> x2rgb10le vuyx xv30le
>>   -profile           <int>        E..V....... (from 0 to INT_MAX)
>> (default unknown)
>>      main            1            E..V.......
>>      main10          2            E..V.......
>>      mainsp          3            E..V.......
>>   -tier              <int>        E..V....... Set the encoding tier (only
>> level >= 4 can support high tier) (from 0 to 256) (default high)
>>      main            0            E..V.......
>>      high            256          E..V.......
>>
>>
>> ffmpeg -hide_banner -h encoder=h264_qsv | egrep
>> 'Supported|profile|main|high'
>>     Supported hardware devices: qsv qsv qsv
>>     Supported pixel formats: nv12 qsv
>>   -profile           <int>        E..V....... (from 0 to INT_MAX)
>> (default unknown)
>>      main            77           E..V.......
>>      high            100          E..V.......
>>
>>
>>
>>
>> ffmpeg -hide_banner -h encoder=av1_qsv | egrep 'Supported|profile|main'
>>     Supported hardware devices: qsv qsv qsv
>>     Supported pixel formats: nv12 p010le qsv
>>   -profile           <int>        E..V....... (from 0 to INT_MAX)
>> (default unknown)
>>      main            1            E..V.......
>>
>>
>> ffmpeg -hide_banner -h encoder=vp9_qsv | egrep 'Supported|profile|main'
>>     Supported hardware devices: qsv qsv qsv
>>     Supported pixel formats: nv12 p010le vuyx qsv xv30le
>>   -profile           <int>        E..V....... (from 0 to INT_MAX)
>> (default unknown)
>>      profile0        1            E..V.......
>>      profile1        2            E..V.......
>>      profile2        3            E..V.......
>>      profile3        4            E..V.......
>>
>>
>> ffmpeg -hide_banner -h encoder=vp9_qsv | egrep 'Supported|main'
>>     Supported hardware devices: qsv qsv qsv
>>     Supported pixel formats: nv12 p010le vuyx qsv xv30le
>>
>>
>> --
>> Cin mailing list
>> Cin at lists.cinelerra-gg.org
>> https://lists.cinelerra-gg.org/mailman/listinfo/cin
>>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20241012/3178f9d1/attachment-0001.htm>


More information about the Cin mailing list