#11500: AV1 frame extraction (screenshot) fails -------------------------------------+----------------------------------- Reporter: ffmpegScale | Owner: (none) Type: defect | Status: new Priority: normal | Component: swscale Version: unspecified | Resolution: Keywords: | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 1 | -------------------------------------+----------------------------------- Comment (by ffmpegScale):
Replying to [comment:5 MasterQuestionable]: > ͏ Is it AV1 specific? Yes I think so. Didn't encounter the error with AVC > ͏ And per previous description hardware decoding shouldn't matter? Hardware decoding doesn't matter, except for libplacebo that works. Before v7 every file worked. I think I also had a working AV1 file, but most won't work. (Attached file won't work) > > ͏ What happens? > ͏ `ffmpeg -v debug -hide_banner -nostdin -nostats -f lavfi -i "testsrc" -vframes 1 -vf "scale=1x1" -f null -` This won't work, because it tries to sue the input as filter: {{{ ffmpeg -v debug -hide_banner -nostdin -nostats -f lavfi -i "in.mkv" -vframes 1 -vf "scale=1x1" -f null - }}} [AVFilterGraph @ 0x583487e06ec0] No such filter: 'in.mkv' [AVFilterGraph @ 0x583487e06ec0] Error processing filtergraph: Filter not found I put the -f lavfi to the filters {{{ ffmpeg -v debug -hide_banner -nostdin -nostats -i in.mkv -f lavfi -vframes 1 -vf "scale=1x1" -f null - Splitting the commandline. Reading option '-v' ... matched as option 'v' (set logging level) with argument 'debug'. Reading option '-hide_banner' ... matched as option 'hide_banner' (do not show program banner) with argument '1'. Reading option '-nostdin' ... matched as option 'stdin' (enable or disable interaction on standard input) with argument 0. Reading option '-nostats' ... matched as option 'stats' (print progress report during encoding) with argument 0. Reading option '-i' ... matched as input url with argument 'in.mkv'. Reading option '-f' ... matched as option 'f' (force container format (auto-detected otherwise)) with argument 'lavfi'. Reading option '-vframes' ... matched as option 'vframes' (set the number of video frames to output) with argument '1'. Reading option '-vf' ... matched as option 'vf' (alias for -filter:v (apply filters to video streams)) with argument 'scale=1x1'. Reading option '-f' ... matched as option 'f' (force container format (auto-detected otherwise)) with argument 'null'. Reading option '-' ... matched as output url. Finished splitting the commandline. Parsing a group of options: global . Applying option v (set logging level) with argument debug. Applying option hide_banner (do not show program banner) with argument 1. Applying option nostdin (enable or disable interaction on standard input) with argument 0. Applying option nostats (print progress report during encoding) with argument 0. Successfully parsed a group of options. Parsing a group of options: input url in.mkv. Successfully parsed a group of options. Opening an input file: in.mkv. [AVFormatContext @ 0x635303eb48c0] Opening 'in.mkv' for reading [file @ 0x635303eb4f80] Setting default whitelist 'file,crypto,data' [matroska,webm @ 0x635303eb48c0] Format matroska,webm probed with size=2048 and score=100 st:0 removing common factor 1000000 from timebase [matroska,webm @ 0x635303eb48c0] Before avformat_find_stream_info() pos: 524 bytes read:32768 seeks:0 nb_streams:1 [libdav1d @ 0x635303eb67c0] libdav1d 1.5.1 [libdav1d @ 0x635303eb67c0] Using 1 threads, 0 max_frame_delay [libdav1d @ 0x635303eb67c0] Frame 0: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [matroska,webm @ 0x635303eb48c0] All info found [matroska,webm @ 0x635303eb48c0] After avformat_find_stream_info() pos: 607 bytes read:32768 seeks:0 frames:1 Input #0, matroska,webm, from 'in.mkv': Metadata: ENCODER : Lavf61.7.100 Duration: 00:00:10.00, start: 0.000000, bitrate: 127 kb/s Stream #0:0, 1, 1/1000: Video: av1 (libdav1d) (Main), 1 reference frame, yuv420p10le(tv, ictcp/bt709/bt709), 320x180, 0/1, SAR 1:1 DAR 16:9, 24 fps, 24 tbr, 1k tbn Metadata: DURATION : 00:00:10.000000000 Successfully opened the file. Parsing a group of options: output url -. Applying option f (force container format (auto-detected otherwise)) with argument lavfi. Applying option vframes (set the number of video frames to output) with argument 1. Applying option vf (alias for -filter:v (apply filters to video streams)) with argument scale=1x1. Applying option f (force container format (auto-detected otherwise)) with argument null. Successfully parsed a group of options. Opening an output file: -. [out#0/null @ 0x635303eba7c0] No explicit maps, mapping streams automatically... [vost#0:0/wrapped_avframe @ 0x635303eb8bc0] Created video stream from input stream 0:0 [AVFilterGraph @ 0x635303eb9200] Setting 'w' to value '1x1' [Parsed_scale_0 @ 0x635303eb9500] w:1 h:1 flags:'' interl:0 [libdav1d @ 0x635303ebca80] libdav1d 1.5.1 [libdav1d @ 0x635303ebca80] Using 0 threads, 0 max_frame_delay Successfully opened the file. Stream mapping: Stream #0:0 -> #0:0 (av1 (libdav1d) -> wrapped_avframe (native)) [vost#0:0/wrapped_avframe @ 0x635303eb8bc0] Starting thread... [vf#0:0 @ 0x635303eb9140] Starting thread... [vist#0:0/av1 @ 0x635303eba600] [dec:libdav1d @ 0x635303ebc240] Starting thread... [in#0/matroska,webm @ 0x635303eb4600] Starting thread... [libdav1d @ 0x635303eb9f40] Frame 16: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 8: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 4: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 2: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 1: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 3: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 6: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 5: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 7: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 12: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 10: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 9: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 11: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [AVFilterGraph @ 0x7755a8001000] Setting 'w' to value '1x1' detected 20 logical cores [libdav1d @ 0x635303eb9f40] Frame 14: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 13: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [Parsed_scale_0 @ 0x7755a8003d80] w:1 h:1 flags:'' interl:0 [graph -1 input from stream 0:0 @ 0x7755a8011840] Setting 'video_size' to value '320x180' [graph -1 input from stream 0:0 @ 0x7755a8011840] Setting 'pix_fmt' to value '62' [graph -1 input from stream 0:0 @ 0x7755a8011840] Setting 'time_base' to value '1/1000' [graph -1 input from stream 0:0 @ 0x7755a8011840] Setting 'pixel_aspect' to value '1/1' [graph -1 input from stream 0:0 @ 0x7755a8011840] Setting 'colorspace' to value '14' [graph -1 input from stream 0:0 @ 0x7755a8011840] Setting 'range' to value '1' [graph -1 input from stream 0:0 @ 0x7755a8011840] Setting 'frame_rate' to value '24/1' [libdav1d @ 0x635303eb9f40] Frame 15: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [graph -1 input from stream 0:0 @ 0x7755a8011840] w:320 h:180 pixfmt:yuv420p10le tb:1/1000 fr:24/1 sar:1/1 csp:ictcp range:tv [libdav1d @ 0x635303eb9f40] Frame 32: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 24: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 20: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 18: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [libdav1d @ 0x635303eb9f40] Frame 17: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [auto_scale_0 @ 0x7755a80139c0] w:iw h:ih flags:'' interl:0 [Parsed_scale_0 @ 0x7755a8003d80] auto-inserting filter 'auto_scale_0' between the filter 'graph -1 input from stream 0:0' and the filter 'Parsed_scale_0' Impossible to convert between the formats supported by the filter 'graph -1 input from stream 0:0' and the filter 'auto_scale_0' [libdav1d @ 0x635303eb9f40] Frame 19: size 320x180 upscaled 320 render 320x180 subsample 2x2 bitdepth 10 tiles 1x1. [vf#0:0 @ 0x635303eb9140] Error reinitializing filters! [vf#0:0 @ 0x635303eb9140] Task finished with error code: -38 (Function not implemented) [out#0/null @ 0x635303eba7c0] sq: 0 EOF [out#0/null @ 0x635303eba7c0] sq: finish 0; head ts NOPTS [out#0/null @ 0x635303eba7c0] sq: finish queue [vf#0:0 @ 0x635303eb9140] Terminating thread with return code -38 (Function not implemented) [vost#0:0/wrapped_avframe @ 0x635303eb8bc0] Encoder thread received EOF [vost#0:0/wrapped_avframe @ 0x635303eb8bc0] Could not open encoder before EOF [vost#0:0/wrapped_avframe @ 0x635303eb8bc0] Task finished with error code: -22 (Invalid argument) [vost#0:0/wrapped_avframe @ 0x635303eb8bc0] Terminating thread with return code -22 (Invalid argument) [vist#0:0/av1 @ 0x635303eba600] [dec:libdav1d @ 0x635303ebc240] Decoder returned EOF, finishing [vist#0:0/av1 @ 0x635303eba600] [dec:libdav1d @ 0x635303ebc240] Terminating thread with return code 0 (success) [vist#0:0/av1 @ 0x635303eba600] All consumers of this stream are done [in#0/matroska,webm @ 0x635303eb4600] All consumers are done [in#0/matroska,webm @ 0x635303eb4600] Terminating thread with return code 0 (success) [out#0/null @ 0x635303eba7c0] Nothing was written into output file, because at least one of its streams received no packets. frame= 0 fps=0.0 q=0.0 Lsize= 0KiB time=N/A bitrate=N/A speed=N/A [in#0/matroska,webm @ 0x635303eb4600] Input file #0 (in.mkv): [in#0/matroska,webm @ 0x635303eb4600] Input stream #0:0 (video): 20 packets read (5580 bytes); 7 frames decoded; 0 decode errors; [in#0/matroska,webm @ 0x635303eb4600] Total: 20 packets (5580 bytes) demuxed [AVIOContext @ 0x635303ebd1c0] Statistics: 32768 bytes read, 0 seeks Conversion failed! }}} -- Ticket URL: <https://trac.ffmpeg.org/ticket/11500#comment:6> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
_______________________________________________ FFmpeg-trac mailing list FFmpeg-trac@avcodec.org https://ffmpeg.org/mailman/listinfo/ffmpeg-trac To unsubscribe, visit link above, or email ffmpeg-trac-requ...@ffmpeg.org with subject "unsubscribe".