Module: libav
Branch: master
Commit: 74383def8f46805faf3391c98516b248108a9a6b

Author:    Martin Storsjö <[email protected]>
Committer: Martin Storsjö <[email protected]>
Date:      Wed Apr 20 13:22:41 2016 +0300

movenc: Handle pts == NOPTS when autoflushing

This muxer generally handles pts == NOPTS by using dts instead;
do this for consistency here as well.

Signed-off-by: Martin Storsjö <[email protected]>

---

 libavformat/movenc.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 78ff4ee..b792a3b 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -3635,7 +3635,10 @@ static int mov_write_packet(AVFormatContext *s, AVPacket 
*pkt)
                 // duration, but only helps for this particular track, not
                 // for the other ones that are flushed at the same time.
                 trk->track_duration = pkt->dts - trk->start_dts;
-                trk->end_pts = pkt->pts;
+                if (pkt->pts != AV_NOPTS_VALUE)
+                    trk->end_pts = pkt->pts;
+                else
+                    trk->end_pts = pkt->dts;
                 mov_auto_flush_fragment(s, 0);
             }
         }

_______________________________________________
libav-commits mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-commits

Reply via email to