[FFmpeg-trac] #10047(undetermined:new): av1_nvenc bugs
FFmpeg
trac at avcodec.org
Mon Nov 21 03:15:50 EET 2022
#10047: av1_nvenc bugs
-------------------------------------+-------------------------------------
Reporter: Jacky | Owner: (none)
Koning |
Type: defect | Status: new
Priority: normal | Component:
| undetermined
Version: unspecified | Resolution:
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Comment (by Jacky Koning):
It is not converting the format at all
{{{
Input #0, lavfi, from 'testsrc':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: wrapped_avframe, rgb24, 320x240 [SAR 1:1 DAR 4:3],
25 fps, 25 tbr, 25 tbn
Stream mapping:
Stream #0:0 -> #0:0 (wrapped_avframe (native) -> av1 (av1_nvenc))
Press [q] to stop, [?] for help
[av1_nvenc @ 0000029855600d40] YUV444P not supported
[av1_nvenc @ 0000029855600d40] No capable devices found
Error initializing output stream 0:0 -- Error while opening encoder for
output stream #0:0 - maybe incorrect parameters such as bit_rate, rate,
width or height
}}}
Look at hevc_nvenc
{{{
Input #0, lavfi, from 'testsrc':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: wrapped_avframe, rgb24, 320x240 [SAR 1:1 DAR 4:3],
25 fps, 25 tbr, 25 tbn
Stream mapping:
Stream #0:0 -> #0:0 (wrapped_avframe (native) -> hevc (hevc_nvenc))
Press [q] to stop, [?] for help
Output #0, null, to 'pipe:':
Metadata:
encoder : Lavf59.34.101
Stream #0:0: Video: hevc (Rext), gbrp(pc, gbr/unknown/unknown,
progressive), 320x240 [SAR 1:1 DAR 4:3], q=2-31, 2000 kb/s, 25 fps, 25 tbn
Metadata:
encoder : Lavc59.52.102 hevc_nvenc
Side data:
cpb: bitrate max/min/avg: 0/0/2000000 buffer size: 4000000
vbv_delay: N/A
}}}
In that one it indeed auto converts to gbrp. But I still think 'this' is a
bug.
We are clearly able to use yuv444p with hevc_nvenc so why not with
av1_nvnec? Like why is it in the list when there is only 1 supported
encoder which is included in every 4000 series GPU when it does not
support it? In my opinion either it should not be in the list and then be
converted to the next best or it should work.
Which could lead to another discussion point that might throw that
argument out of the window. h264_nvenc does not support yuv420p10le either
and it will also error out.
{{{
Input #0, lavfi, from 'testsrc':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: wrapped_avframe, rgb24, 320x240 [SAR 1:1 DAR 4:3],
25 fps, 25 tbr, 25 tbn
Stream mapping:
Stream #0:0 -> #0:0 (wrapped_avframe (native) -> h264 (h264_nvenc))
Press [q] to stop, [?] for help
[h264_nvenc @ 000002aa47630dc0] 10 bit encode not supported
[h264_nvenc @ 000002aa47630dc0] No capable devices found
Error initializing output stream 0:0 -- Error while opening encoder for
output stream #0:0 - maybe incorrect parameters such as bit_rate, rate,
width or height
}}}
But even h264_nvenc supports yuv444p. yuv444p is usefull for lossless
converting to apply several video filters after which you convert it back.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/10047#comment:4>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list