[Cin] 10bit av1 and h264 QSV and VAAPI encoding
Terje J. Hanssen
terjejhanssen at gmail.com
Sat Nov 16 23:24:44 CET 2024
Den 16.11.2024 22:20, skrev Andrew Randrianasulu:
>
>
> вс, 17 нояб. 2024 г., 00:02 Terje J. Hanssen <terjejhanssen at gmail.com>:
>
>
>
>
> Den 16.11.2024 20:36, skrev Terje J. Hanssen:
>>
>>
>>
>> Den 16.11.2024 19:00, skrev Andrew Randrianasulu:
>>>
>>>
>>> сб, 16 нояб. 2024 г., 20:56 Terje J. Hanssen via Cin
>>> <cin at lists.cinelerra-gg.org>:
>>>
>>> Now when 10bit hevc_qsv and hevc_vaapi accelerated encoding
>>> looks to be in box, I wonder if something prohibits us to
>>> get accelerated encoding for av1 and h264?
>>>
>>>
>>> I think av1 was complaining about invalid picture structure?
>>>
>>>
>>> feel free to experiment. You can also try vp9 ....
>>>
>>>
>>>
>>> According to ffmpeg help the following support should be
>>> available:
>>>
>>> av1_qsv
>>> Supported pixel formats: nv12 p010le qsv
>>> -profile <int> E..V....... (from 0 to INT_MAX)
>>> (default unknown)
>>> unknown 0 E..V.......
>>> main 1 E..V.......
>>>
>>> av1_vaapi
>>> Supported pixel formats: vaapi
>>> -profile <int> E..V....... Set profile
>>> (seq_profile) (from -99 to 255) (default -99)
>>> main 0 E..V.......
>>> high 1 E..V.......
>>> professional 2 E..V.......
>>>
>>>
>>> h264_qsv
>>> Supported pixel formats: nv12 qsv
>>> -profile <int> E..V....... (from 0 to INT_MAX)
>>> (default unknown)
>>> unknown 0 E..V.......
>>> baseline 66 E..V.......
>>> main 77 E..V.......
>>> high 100 E..V.......
>>>
>>>
>>> h264_vaapi
>>> Supported pixel formats: vaapi
>>> -profile <int> E..V....... Set profile
>>> (profile_idc and constraint_set*_flag) (from -99 to 65535)
>>> (default -99)
>>> constrained_baseline 578 E..V.......
>>> main 77 E..V.......
>>> high 100 E..V.......
>>> high10 110 E..V.......
>>>
>>>
>> =============================
>>
>> Starting tests with
>>
>> /Cin # bin/cin
>> Cinelerra Infinity - built: Nov 15 2024 20:29:14
>>
>>
>> 1) AV1_QSV
>> -----------
>>
>> av1_qsv.mp4
>>
>> mp4 av1_qsv
>> # only usable with ext. ffmpeg
>> cin_pix_fmt=nv12
>>
>> DV input renders ok to yuv420p
>> ** rendered 2832 frames in 5.475 secs, 517.260 fps
>>
>> HDV input fails:
>> [av1_qsv @ 0x7ff7cca8b9c0] Current picture structure is unsupported
>> [av1_qsv @ 0x7ff7cca8b9c0] some encoding parameters are not
>> supported by the QSV runtime. Please double check the input
>> parameters.
>> FFMPEG::open_encoder err: Function not implemented
>> int FFMPEG::open_encoder(const char*, const char*):
>> open failed av1_qsv:/Videoklipp/QSV/hdv09_04_av1_qsv.mp4
>>
>> FHD input fails
>> [av1_qsv @ 0x7ff7918e82c0] Current picture structure is unsupported
>> [av1_qsv @ 0x7ff7918e82c0] some encoding parameters are not
>> supported by the QSV runtime. Please double check the input
>> parameters.
>> FFMPEG::open_encoder err: Function not implemented
>> int FFMPEG::open_encoder(const char*, const char*):
>> open failed av1_qsv:/Videoklipp/QSV/hd01_av1_qsv.mp4
>>
>>
>> 2) AV1_VAAPI
>> ------------
>>
>> vaapi.mp4
>>
>> mp4 av1_vaapi
>> cin_hw_dev=vaapi
>> profile=main
>>
>> DV input renders ok to yuv420p
>> ** rendered 2832 frames in 5.095 secs, 555.839 fps
>>
>> HDV input renders ok to yuv420p
>> ** rendered 5972 frames in 16.155 secs, 369.669 fps
>>
>>
>> FHD input renders ok to yuv420p
>> ** rendered 1780 frames in 41.731 secs, 42.654 fps
>>
>> FHD input fails with profile=high
>> [av1_vaapi @ 0x7ff415aa0740] No usable encoding profile found.
>> FFMPEG::open_encoder err: Function not implemented
>> int FFMPEG::open_encoder(const char*, const char*):
>> open failed av1_vaapi:/Videoklipp/VAAPI/hd01_av1_vaapi.mp4
>>
>>
>
> I add and continue with VP9 as suggested:
>
>
> 3) VP9_QSV
> -----------
>
> vp9_qsv.mp4
>
> mp4 vp9_qsv
> # only usable with ext. ffmpeg
>
>
>
> DV input renders ok to yuv420p
> ** rendered 2832 frames in 10.284 secs, 275.379 fps
>
>
> HDV input fails:
> [vp9_qsv @ 0x7f0bdc2acec0] Current picture structure is unsupported
> [vp9_qsv @ 0x7f0bdc2acec0] some encoding parameters are not
> supported by the QSV runtime. Please double check the input
> parameters.
> FFMPEG::open_encoder err: Function not implemented
> int FFMPEG::open_encoder(const char*, const char*):
> open failed vp9_qsv:/Videoklipp/QSV/hdv09_04_vp9_qsv.mp4
>
>
> FHD input fails
> [vp9_qsv @ 0x7f0c3c07f5c0] Current picture structure is unsupported
> [vp9_qsv @ 0x7f0c3c07f5c0] some encoding parameters are not
> supported by the QSV runtime. Please double check the input
> parameters.
> FFMPEG::open_encoder err: Function not implemented
> int FFMPEG::open_encoder(const char*, const char*):
> open failed vp9_qsv:/Videoklipp/QSV/hd01_vp9_qsv.mp4
> Render::render_single: Session finished.
>
>
> so, qsv av1/h264/vp9 chokes on some files .....
>
>
>
>
> 4) VP9_VAAPI
> ------------
>
> vp9_qsv.mp4
>
> preset doesn't exist
>
>
> Hopefully easy to create?
>
vp9_vaapi.mp4
mp4 vp9_vaapi
cin_hw_dev=vaapi
# profile=main
DV input renders ok to yuv420p
** rendered 2832 frames in 4.932 secs, 574.209 fps
HDV input renders ok to yuv420p
** rendered 5972 frames in 35.209 secs, 169.616 fps
FHD input renders ok to yuv420p
** rendered 1780 frames in 39.149 secs, 45.467 fps
5) H264_QSV
-----------
h264_qsv.mp4
mp4 h264_qsv
# only usable with ext. ffmpeg
profile=high
cin_pix_fmt=nv12
DV input renders ok to yuv420p
** rendered 2832 frames in 5.154 secs, 549.476 fps
HDV input fails:
[h264_qsv @ 0x7fdf0006fc00] Current picture structure is unsupported
[h264_qsv @ 0x7fdf0006fc00] some encoding parameters are not supported
by the QSV runtime. Please double check the input parameters.
FFMPEG::open_encoder err: Function not implemented
int FFMPEG::open_encoder(const char*, const char*):
open failed h264_qsv:/Videoklipp/QSV/hdv09_04_h264_qsv.mp4
FHD input fails
[h264_qsv @ 0x7fdef004f140] Current picture structure is unsupported
[h264_qsv @ 0x7fdef004f140] some encoding parameters are not supported
by the QSV runtime. Please double check the input parameters.
FFMPEG::open_encoder err: Function not implemented
int FFMPEG::open_encoder(const char*, const char*):
open failed h264_qsv:/Videoklipp/QSV/hd01_h264_qsv.mp4
6) H264_VAAPI
------------
h264_vaapi.mp4
mp4 h264_vaapi
cin_hw_dev=vaapi
cin_pix_fmt=nv12
profile=high
DV input renders ok to yuv420p
** rendered 2832 frames in 5.688 secs, 497.890 fps
HDV input renders ok to yuv420p
** rendered 5972 frames in 15.325 secs, 389.690 fps
FHD input renders ok to yuv420p
** rendered 1780 frames in 39.067 secs, 45.563 fps
FHD input with profile=high/cin_pix_fmt=p010le renders yuv420p
** rendered 1780 frames in 41.677 secs, 42.709 fps
FHD input with profile=high10/cin_pix_fmt=p010le fails
[h264_vaapi @ 0x7f27d4212e40] No usable encoding profile found.
FFMPEG::open_encoder err: Function not implemented
int FFMPEG::open_encoder(const char*, const char*):
open failed h264_vaapi:/Videoklipp/VAAPI/hd01_h264_vaapi.mp4
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20241116/0b6feef8/attachment.htm>
More information about the Cin
mailing list