low-complexity Bink file seeking

Originally committed as revision 22022 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Peter Ross 2010-02-24 11:43:33 +00:00
parent 7e276c85b1
commit dd80be5bfc
1 changed files with 15 additions and 0 deletions

View File

@ -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,
};