diff options
author | Steinar H. Gunderson <steinar+ffmpeg@gunderson.no> | 2023-08-28 19:03:08 +0200 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2023-08-29 23:28:44 +0300 |
commit | 69c308a6d1f6027bc3328cd8f4d38fb516ee10b8 (patch) | |
tree | 0a7827496bb507eecd9ffe1aa7895a2f960df043 /libavformat/matroskaenc.c | |
parent | a25a60d763061da695c3c563dcafbf392aea5579 (diff) |
avformat/matroskaenc: Fix writing of markers
When the marker writing code was merged from libav to FFmpeg
in dc62016c, it failed to take into account that the meaning of
cluster_pos had changed in bda5b662; in particular, the special
value for “I'm not currently working on a cluster” had changed
from 0 to -1. This makes the avio_write_marker() call never
be called. Update the if statement to fix it.
Fixes: Ticket9843
Signed-off-by: Steinar H. Gunderson <steinar+ffmpeg@gunderson.no>
Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavformat/matroskaenc.c')
-rw-r--r-- | libavformat/matroskaenc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index e813ef86cf..1dfcf763e2 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -3027,7 +3027,7 @@ static int mkv_write_packet(AVFormatContext *s, const AVPacket *pkt) } } - if (!mkv->cluster_pos) + if (mkv->cluster_pos == -1) avio_write_marker(s->pb, av_rescale_q(pkt->dts, s->streams[pkt->stream_index]->time_base, AV_TIME_BASE_Q), keyframe && (mkv->have_video ? codec_type == AVMEDIA_TYPE_VIDEO : 1) ? AVIO_DATA_MARKER_SYNC_POINT : AVIO_DATA_MARKER_BOUNDARY_POINT); |