[Cin] AV1 yuv422p10le rendering with some output FFStream::seek I/O errors, seek fails

Phyllis Smith phylsmith2017 at gmail.com
Thu Aug 8 00:36:31 CEST 2024


Terje, thanks for noting the problem with av1.webm to our attention.  I
will fix it by adding the g=30 and keyint_min=30 to that render format.
"h265.mp4 and h264.mp4" always work because of the addition of the lines "#
use framerate for 1 keyframe/sec, needed for seeks;
keyint_min=25;x264-params keyint=25".  So the new lines for av1.webm of
"g=30 and keyint_min=30" is the equivalent.

Andrew, I tried using --kf-min-dist=30 and  -kf-max-dist=30  and it
rendered but the output was not playable.  So since the above solution
worked, I just will use the above instead.

Still have to test av1_svt... next.

On Wed, Aug 7, 2024 at 2:52 PM Terje J. Hanssen <terjejhanssen at gmail.com>
wrote:

>
>
> Den 07.08.2024 21:38, skrev Phyllis Smith via Cin:
>
> g=30
>> keyint_min=30
>>
> Seems to work for av1.webm format -- still testing.  I want to test
> Andrew's suggestions next.
>
> On Wed, Aug 7, 2024 at 1:18 PM Andrew Randrianasulu <
> randrianasulu at gmail.com> wrote:
>
>> On Wed, Aug 7, 2024 at 9:13 PM Phyllis Smith via Cin
>> <cin at lists.cinelerra-gg.org> wrote:
>> >
>> > Summary is that the error message is due to lack of keyframes and the
>> workaround is to use Transcode.
>> > BUT hopefully a better solution with the Render format parameters can
>> be found.  The render fix for h264/h265 formats is the addition of the
>> lines below (which obviously is not pertinent to av1).  I will see if I can
>> find an alternative, but might not.
>>
>> aomenc --help mentions
>>
>> --kf-min-dist=<arg>         Minimum keyframe interval (frames)
>> --kf-max-dist=<arg>         Maximum keyframe interval (frames)
>>
>> and there seems to be way (aom-params) to pass libaom specific options
>> via ffmpeg's ...
>>
>> so ..
>> aom-params=kf-min-dist=25:kf-max-dist=25 ?
>>
>> for svt-av1 you hopefully can use just keyint= with svtav1-params line?
>> command line svt av1 encoder seems to default for 5 seconds?
>>
>> Also, may be add keyint_min=25 (for 25 fps vid) as generic libav*
>> (ffmpeg) option
>>
>>
>> >>
>> >> # use framerate for 1 keyframe/sec, needed for seeks
>> >> keyint_min=25                  (or keyint_min=30 for x265)
>> >> x264-params=keyint=25   (or x265-params-keyint=30 for x265)
>> >
>> >
>> > About the error message:
>> >>
>> >> FFStream::seek:
>> /run/media/terje/Videoklipp/Cineform/av1_yuv422p10le_LP.webm
>> >>  retry limit, pos=207 tstmp=8280,   err: Input/output error
>> >> ** seek fail 207, 8280
>> >
>> >
>> > Seeking Issues (
>> https://cinelerra-gg.org/download/CinelerraGG_Manual/Seeking_Issues.html)
>> >>
>> >> If you have an issue playing a video and not seeing it in the
>> Compositor (just see a black
>> >> screen), it is most likely due to the media not being designed to be
>> editable. It is most likely
>> >> not damaged. Generally it just does not have keyframes which are
>> needed for seeking
>> >> which is what is done when you move around the media and start playing
>> in the middle.
>> >> The media plays just fine in the compositor if you always play from the
>> beginning because
>> >> then you don’t need keyframes to seek. You can get around this problem
>> if you proxy the
>> >> media. A good choice to use for the proxy would be use scalar,
>> ffmpeg/mp4 and size of 1/2.
>> >>
>> >> The proxied media can then seek and you will see it play in the
>> compositor because keyframes exist.
>> >
>> > Or use TRANSCODE which adds keyframes when media is not seekable (see
>> Manual for details). This is particularly useful for the mkv container,
>> which often has seek problems.
>> >
>> > Just a reminder about the message below.
>> >>
>> >> FFMPEG::open_decoder: some stream times estimated:
>> >
>> > This is not a problem. Basically, when you open a file if a stream has a
>> known duration, there is no message. If the duration is unknown, it is
>> estimated by using the File Size and Bitrate to estimate the duration.
>> > ----------------------------------------
>
>
> @Andrew, @Phyllis
>
> Thank for your comments and suggestions, which I so far only have read
> while doing some alternative testing.
>
> First, to ensure this was correct understood:
> I didn't notice the same error messages using the same input file and
> rendering to h265.mp4 and h264.mp4
>
> Now I have also tried to render the same input file using the (4.3x
> faster) av1_svt, but with the available 8-bit color depth in 10-bit mode:
>     17M    av1_svt_yuv420p10le_SR.webm
>
> Below follows output messages with no error messages, so yes, I think some
> preset parameters possibly should be added to the av1_aom.webm:
>
> FFMPEG::open_decoder: some stream times estimated:
> /Videoklipp/Cineform/cfhd01.mkv
> Svt[info]: -------------------------------------------
> Svt[info]: SVT [version]:    SVT-AV1 Encoder Lib v1.8.0
> Svt[info]: SVT [build]  :    GCC 10.3.1 20210422 (Red Hat 10.3.1-1)     64
> bit
> Svt[info]: LIB Build date: Jul 31 2024 07:22:12
> Svt[info]: -------------------------------------------
> Svt[info]: Number of logical cores available: 20
> Svt[info]: Number of PPCS 76
> Svt[info]: [asm level on system : up to avx2]
> Svt[info]: [asm level selected : up to avx2]
> Svt[info]: -------------------------------------------
> Svt[info]: SVT [config]: main profile    tier (auto)    level (auto)
> Svt[info]: SVT [config]: width / height / fps numerator / fps denominator
>         : 1920 / 1080 / 25 / 1
> Svt[info]: SVT [config]: bit-depth / color format                     : 10
> / YUV420
> Svt[info]: SVT [config]: preset / tune / pred struct                     :
> 10 / PSNR / random access
> Svt[info]: SVT [config]: gop size / mini-gop size / key-frame type
>     : 161 / 16 / key frame
> Svt[info]: SVT [config]: BRC mode / rate factor                     : CRF
> / 35
> Svt[info]: -------------------------------------------
> FFMPEG::open_decoder: some stream times estimated:
> /Videoklipp/Cineform/cfhd01.mkv
> Render::render_single: Session finished.
> ** rendered 1780 frames in 51.541 secs, 34.536 fps
> FFMPEG::open_decoder: some stream times estimated:
> /Videoklipp/Cineform/av1_svt_yuv420p10le_SR.webm
> FFMPEG::open_decoder: some stream times estimated:
> /Videoklipp/Cineform/av1_svt_yuv420p10le_SR.webm
> FFMPEG::open_decoder: some stream times estimated:
> /Videoklipp/Cineform/av1_svt_yuv420p10le_SR.webm
> FFMPEG::open_decoder: some stream times estimated:
> /Videoklipp/Cineform/cfhd01.mkv
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20240807/79ee58ce/attachment-0001.htm>


More information about the Cin mailing list