[FFmpeg-cvslog] mmaldec: fix pkt_dts determination

wm4 git at videolan.org
Sat Sep 12 13:30:55 CEST 2015


ffmpeg | branch: master | wm4 <nfxjfg at googlemail.com> | Tue Sep  8 19:42:26 2015 +0200| [99404597201911de90cff2ef85f2d44176d39147] | committer: Luca Barbato

mmaldec: fix pkt_dts determination

This also drops setting the frame->pts field. This is usually not set by
decoders, so this would be an inconsistency that's at worst a danger to
the API user.

It appears the buffer->dts field is normally not set by the MMAL
decoder, so don't use it. If it's ever going to be set by MMAL, we
don't know whether the value will be what we want.

Signed-off-by: Luca Barbato <lu_zero at gentoo.org>

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

 libavcodec/mmaldec.c |    6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/libavcodec/mmaldec.c b/libavcodec/mmaldec.c
index a23a97f..1099129 100644
--- a/libavcodec/mmaldec.c
+++ b/libavcodec/mmaldec.c
@@ -621,10 +621,8 @@ static int ffmal_copy_frame(AVCodecContext *avctx,  AVFrame *frame,
         }
     }
 
-    if (buffer->pts != MMAL_TIME_UNKNOWN) {
-        frame->pkt_pts = buffer->pts;
-        frame->pts = buffer->pts;
-    }
+    frame->pkt_pts = buffer->pts == MMAL_TIME_UNKNOWN ? AV_NOPTS_VALUE : buffer->pts;
+    frame->pkt_dts = AV_NOPTS_VALUE;
 
 done:
     return ret;



More information about the ffmpeg-cvslog mailing list