Skip to content

Commit

Permalink
Fix AV1 demuxing
Browse files Browse the repository at this point in the history
For AV1, the config packet must not be merged with the next non-config
packet.

This fixes the following error when passing --video-codec=av1:

> INFO: [FFmpeg] libdav1d 1.3.0
> ERROR: [FFmpeg] Unknown OBU type 0 of size 29393
> ERROR: [FFmpeg] Error parsing OBU data
> ERROR: Decoder 'video': could not send video packet: -1094995529
  • Loading branch information
rom1v committed Dec 1, 2023
1 parent 9497f39 commit f46471c
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions app/src/demuxer.c
Original file line number Diff line number Diff line change
Expand Up @@ -227,8 +227,9 @@ run_demuxer(void *data) {
}

// Config packets must be merged with the next non-config packet only for
// video streams
bool must_merge_config_packet = codec->type == AVMEDIA_TYPE_VIDEO;
// H.26x
bool must_merge_config_packet = raw_codec_id == SC_CODEC_ID_H264
|| raw_codec_id == SC_CODEC_ID_H265;

struct sc_packet_merger merger;

Expand Down

0 comments on commit f46471c

Please sign in to comment.