[FFmpeg-trac] #11500(undetermined:new): AV1 frame extraction (screenshot) fails

FFmpeg trac at avcodec.org
Mon Mar 10 05:44:11 EET 2025


#11500: AV1 frame extraction (screenshot) fails
-------------------------------------+-------------------------------------
             Reporter:  ffmpegScale  |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug:
 How to reproduce:
 {{{
 % ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -i in.mkv
 -threads 0 -ss 18.280000 -frames:v 1 output.jpg

 ffmpeg version n7.1 Copyright (c) 2000-2024 the FFmpeg developers
   built with gcc 14.2.1 (GCC) 20250207

 built on arch linux (this is the offical package, also built git version
 and other releases. All the same result. I tried native (HW), default sw
 dav1d and svt-av1)
 }}}

 Result native
 {{{
 Stream mapping:
   Stream #0:0 -> #0:0 (av1 (native) -> mjpeg (native))
 Press [q] to stop, [?] for help
 Impossible to convert between the formats supported by the filter 'graph
 -1 input from stream 0:0' and the filter 'auto_scale_0'
 [vf#0:0 @ 0x62c32cbd2540] Error reinitializing filters!
 [vf#0:0 @ 0x62c32cbd2540] Task finished with error code: -38 (Function not
 implemented)
 [vf#0:0 @ 0x62c32cbd2540] Terminating thread with return code -38
 (Function not implemented)
 [vost#0:0/mjpeg @ 0x62c32cc22bc0] Could not open encoder before EOF
 [vost#0:0/mjpeg @ 0x62c32cc22bc0] Task finished with error code: -22
 (Invalid argument)
 [vost#0:0/mjpeg @ 0x62c32cc22bc0] Terminating thread with return code -22
 (Invalid argument)
 [out#0/image2 @ 0x62c32cbdaa80] Nothing was written into output file,
 because at least one of its streams received no packets.
 }}}

 SW
 {{{
 ffmpeg -i in.mkv -threads 0 -ss 18.280000 -frames:v 1 output.jpg
 }}}

 Result sw
 {{{
 Stream mapping:
   Stream #0:0 -> #0:0 (av1 (libdav1d) -> mjpeg (native))
 Press [q] to stop, [?] for help
 Impossible to convert between the formats supported by the filter
 'Parsed_null_0' and the filter 'auto_scale_0'
 [vf#0:0 @ 0x5f4e14aaa500] Error reinitializing filters!
 [vf#0:0 @ 0x5f4e14aaa500] Task finished with error code: -38 (Function not
 implemented)
 [vf#0:0 @ 0x5f4e14aaa500] Terminating thread with return code -38
 (Function not implemented)
 [vost#0:0/mjpeg @ 0x5f4e14af6f40] Could not open encoder before EOF
 [vost#0:0/mjpeg @ 0x5f4e14af6f40] Task finished with error code: -22
 (Invalid argument)
 [vost#0:0/mjpeg @ 0x5f4e14af6f40] Terminating thread with return code -22
 (Invalid argument)
 [out#0/image2 @ 0x5f4e14aabac0] Nothing was written into output file,
 because at least one of its streams received no packets.
 }}}

 Other codecs work.

 Reason I report it now is I had trouble scaling video with a similar
 error. Scale with av1 fails and zscale works for me. I couldn't find a
 parameter for frame extraction (screenshot)

 With scale
 {{{
 ffmpeg -i in.mkv -vf "scale=-2:60" -pix_fmt yuv420p -f rawvideo out.mkv #
 fails

 Stream mapping:
   Stream #0:0 -> #0:0 (av1 (libdav1d) -> rawvideo (native))
 Press [q] to stop, [?] for help
 Impossible to convert between the formats supported by the filter 'graph
 -1 input from stream 0:0' and the filter 'auto_scale_0'
 [vf#0:0 @ 0x55dccafd0800] Error reinitializing filters!
 [vf#0:0 @ 0x55dccafd0800] Task finished with error code: -38 (Function not
 implemented)
 [vf#0:0 @ 0x55dccafd0800] Terminating thread with return code -38
 (Function not implemented)
 [vost#0:0/rawvideo @ 0x55dccaf88600] Could not open encoder before EOF
 [vost#0:0/rawvideo @ 0x55dccaf88600] Task finished with error code: -22
 (Invalid argument)
 [vost#0:0/rawvideo @ 0x55dccaf88600] Terminating thread with return code
 -22 (Invalid argument)
 [out#0/rawvideo @ 0x55dccaf9cb00] Nothing was written into output file,
 because at least one of its streams received no packets.
 }}}

 With zscale
 {{{
 ffmpeg -i in.mkv -vf "scale=-2:60" -an -sn -pix_fmt yuv420p -f rawvideo
 out.mkv # works
 }}}

 Tried my best after finding some information and constant behavior. Had
 the issue since v7.0 a while.

 Last note:
 While reporting, I compared ffmpeg -filters with older working version and
 tried -vf libplacebo - it worked, but normal simple SW/HW without
 libplacebo should work, or?
 {{{
  ffmpeg -i a.mkv -threads 0 -ss 18.280000 -vf libplacebo -frames:v 1
 output%03d.jpg

 Stream mapping:
   Stream #0:0 -> #0:0 (av1 (libdav1d) -> mjpeg (native))
 Press [q] to stop, [?] for help
 MESA-INTEL: warning: ../mesa-25.0.1/src/intel/vulkan/anv_formats.c:834:
 FINISHME: support more multi-planar formats with DRM modifiers
 }}}
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/11500>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list