[FFmpeg-cvslog] avformat/matroskaenc: Use avoid_negative_ts_use_pts if no stream writes dts
Michael Niedermayer
git at videolan.org
Tue May 5 13:27:55 CEST 2015
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Tue May 5 12:57:24 2015 +0200| [9d4fdfe24c731d1880797dee65365154b41c1dea] | committer: Michael Niedermayer
avformat/matroskaenc: Use avoid_negative_ts_use_pts if no stream writes dts
This reduces the number of cases where timestamps need to be shifted
Fixes Ticket4487
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9d4fdfe24c731d1880797dee65365154b41c1dea
---
libavformat/matroskaenc.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
index 6f55c69..4e87eb0 100644
--- a/libavformat/matroskaenc.c
+++ b/libavformat/matroskaenc.c
@@ -942,6 +942,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
// if there is no mkv-specific codec ID, use VFW mode
put_ebml_string(pb, MATROSKA_ID_CODECID, "V_MS/VFW/FOURCC");
mkv->tracks[i].write_dts = 1;
+ s->internal->avoid_negative_ts_use_pts = 0;
}
subinfo = start_ebml_master(pb, MATROSKA_ID_TRACKVIDEO, 0);
@@ -1322,8 +1323,10 @@ static int mkv_write_header(AVFormatContext *s)
else
mkv->mode = MODE_MATROSKAv2;
- if (s->avoid_negative_ts < 0)
+ if (s->avoid_negative_ts < 0) {
s->avoid_negative_ts = 1;
+ s->internal->avoid_negative_ts_use_pts = 1;
+ }
if (mkv->mode != MODE_WEBM ||
av_dict_get(s->metadata, "stereo_mode", NULL, 0) ||
More information about the ffmpeg-cvslog
mailing list