[SCM] libav/experimental: low-complexity Bink file seeking

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:01:27 UTC 2013


The following commit has been merged in the experimental branch:
commit dd80be5bfcc4135906cf9aff516c82c6efca18bd
Author: Peter Ross <pross at xvid.org>
Date:   Wed Feb 24 11:43:33 2010 +0000

    low-complexity Bink file seeking
    
    Originally committed as revision 22022 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavformat/bink.c b/libavformat/bink.c
index 5f357a4..10bbbcc 100644
--- a/libavformat/bink.c
+++ b/libavformat/bink.c
@@ -241,6 +241,19 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
     return 0;
 }
 
+static int read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
+{
+    BinkDemuxContext *bink = s->priv_data;
+    AVStream *vst = s->streams[0];
+
+    /* seek to the first frame */
+    url_fseek(s->pb, vst->index_entries[0].pos, SEEK_SET);
+    bink->video_pts = 0;
+    memset(bink->audio_pts, 0, sizeof(bink->audio_pts));
+    bink->current_track = -1;
+    return 0;
+}
+
 AVInputFormat bink_demuxer = {
     "bink",
     NULL_IF_CONFIG_SMALL("Bink"),
@@ -248,4 +261,6 @@ AVInputFormat bink_demuxer = {
     probe,
     read_header,
     read_packet,
+    NULL,
+    read_seek,
 };

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list