[FFmpeg-cvslog] avformat/matroskaenc: Fix writing of markers
Steinar H. Gunderson
git at videolan.org
Tue Aug 29 23:38:49 EEST 2023
ffmpeg | branch: master | Steinar H. Gunderson <steinar+ffmpeg at gunderson.no> | Mon Aug 28 19:03:08 2023 +0200| [69c308a6d1f6027bc3328cd8f4d38fb516ee10b8] | committer: Martin Storsjö
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 at gunderson.no>
Signed-off-by: Martin Storsjö <martin at martin.st>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=69c308a6d1f6027bc3328cd8f4d38fb516ee10b8
---
libavformat/matroskaenc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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);
More information about the ffmpeg-cvslog
mailing list