[FFmpeg-cvslog] rmdec: flush audio packet on seeking
Michael Niedermayer
git at videolan.org
Fri Mar 22 04:14:52 CET 2013
ffmpeg | branch: release/0.11 | Michael Niedermayer <michaelni at gmx.at> | Mon Mar 18 00:00:02 2013 +0100| [faeb2b3e6989c23968434730f8ea371261c3bfc0] | committer: Michael Niedermayer
rmdec: flush audio packet on seeking
Fixes Ticket1605
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
(cherry picked from commit 519ebb5ee5b89b8ecc80b4a4540fcbeb65cda172)
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=faeb2b3e6989c23968434730f8ea371261c3bfc0
---
libavformat/rmdec.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c
index d919a9a..6b39e47 100644
--- a/libavformat/rmdec.c
+++ b/libavformat/rmdec.c
@@ -982,6 +982,18 @@ static int64_t rm_read_dts(AVFormatContext *s, int stream_index,
return dts;
}
+static int rm_read_seek(AVFormatContext *s, int stream_index,
+ int64_t pts, int flags)
+{
+ RMDemuxContext *rm = s->priv_data;
+
+ if (ff_seek_frame_binary(s, stream_index, pts, flags) < 0)
+ return -1;
+ rm->audio_pkt_cnt = 0;
+ return 0;
+}
+
+
AVInputFormat ff_rm_demuxer = {
.name = "rm",
.long_name = NULL_IF_CONFIG_SMALL("RealMedia format"),
@@ -991,6 +1003,7 @@ AVInputFormat ff_rm_demuxer = {
.read_packet = rm_read_packet,
.read_close = rm_read_close,
.read_timestamp = rm_read_dts,
+ .read_seek = rm_read_seek,
};
AVInputFormat ff_rdt_demuxer = {
More information about the ffmpeg-cvslog
mailing list