Opened 19 months ago

Closed 7 months ago

#9395 closed enhancement (fixed)

"-skip_frame nokey" ignored for AV1

Reported by: nobody Owned by:
Priority: wish Component: avcodec
Version: git-master Keywords: av1
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description (last modified by nobody)

I want to process video key frames only. I've been using -skip_frame nokey. This works for other video formats, but not AV1.

To reproduce this, execute:

ffprobe -select_streams v:0 -show_frames -skip_frame nokey -of compact foo.mp4

For AV1, although the output correctly marks frames as key_frame=1 or key_frame=0, it includes every frame.

I am using the ffmpeg builds from https://johnvansickle.com/ffmpeg/. Specifically ffmpeg-git-20210724-amd64-static.tar.xz, which says it uses libaom 3.1.2 and libdav1d 0.9.0.

Change History (6)

comment:1 by nobody, 19 months ago

Description: modified (diff)

in reply to:  2 comment:3 by nobody, 19 months ago

Replying to Balling:

See https://trac.ffmpeg.org/ticket/9180#comment:8

Is that related? The "pict_type" field already seems to be set correctly.

comment:4 by Balling, 19 months ago

Does ffplay -vcodec libaom-av1 -i file work? What about ffplay -vcodec libdav1d -i input? Can you try https://github.com/BtbN/FFmpeg-Builds/releases builds?

Last edited 19 months ago by Balling (previous) (diff)

in reply to:  4 comment:5 by nobody, 19 months ago

Replying to Balling:

Can you try https://github.com/BtbN/FFmpeg-Builds/releases builds?

Yes, the bug is still present in the latest build. For AV1 video files, ffprobe simply ignores -skip_frame nokey and ffmpeg additionally ignores -discard nokey. Curiously, -vf select=key works.

Does ffplay -vcodec libaom-av1 -i file work? What about ffplay -vcodec libdav1d -i input?

I can't try ffplay. I can't seem to get past this error (using Debian 10 Buster):

Could not initialize SDL - No available video device
(Did you set the DISPLAY variable?)

comment:6 by Carl Eugen Hoyos, 7 months ago

Component: undeterminedavcodec
Keywords: av1 added
Priority: normalwish
Resolution: fixed
Status: newclosed
Type: defectenhancement
Version: unspecifiedgit-master

I believe this was fixed by James Almer in 4b053b8db18eb0610b62a2c40d0327ae53f2387c

Note: See TracTickets for help on using tickets.