[FFmpeg-cvslog] avformat/mux: use a local variable for offset

Michael Niedermayer git at videolan.org
Fri Apr 26 14:58:16 CEST 2013


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Fri Apr 26 11:52:28 2013 +0200| [c329195a27129c7e64af595ce351e3bbf1b9bf1c] | committer: Michael Niedermayer

avformat/mux: use a local variable for offset

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c329195a27129c7e64af595ce351e3bbf1b9bf1c
---

 libavformat/mux.c |    9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/libavformat/mux.c b/libavformat/mux.c
index 1e18309..de8d198 100644
--- a/libavformat/mux.c
+++ b/libavformat/mux.c
@@ -499,14 +499,15 @@ static int write_packet(AVFormatContext *s, AVPacket *pkt)
 
     if (s->avoid_negative_ts > 0) {
         AVStream *st = s->streams[pkt->stream_index];
+        int64_t offset = st->mux_ts_offset;
 
         if (pkt->dts < 0 && pkt->dts != AV_NOPTS_VALUE && !s->offset) {
             s->offset = -pkt->dts;
             s->offset_timebase = st->time_base;
         }
 
-        if (s->offset && !st->mux_ts_offset) {
-            st->mux_ts_offset =
+        if (s->offset && !offset) {
+            offset = st->mux_ts_offset =
                 av_rescale_q_rnd(s->offset,
                                  s->offset_timebase,
                                  st->time_base,
@@ -514,9 +515,9 @@ static int write_packet(AVFormatContext *s, AVPacket *pkt)
         }
 
         if (pkt->dts != AV_NOPTS_VALUE)
-            pkt->dts += st->mux_ts_offset;
+            pkt->dts += offset;
         if (pkt->pts != AV_NOPTS_VALUE)
-            pkt->pts += st->mux_ts_offset;
+            pkt->pts += offset;
     }
 
     if (!(s->oformat->flags & (AVFMT_TS_NEGATIVE | AVFMT_NOTIMESTAMPS)) && 0) {



More information about the ffmpeg-cvslog mailing list