diff options
author | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-03-09 20:29:50 +0000 |
---|---|---|
committer | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-03-09 20:29:50 +0000 |
commit | 0c7b6fc2123db6a4f77064d9bfe8f7f7c185a102 (patch) | |
tree | 727dabfcf99c9f90be5af7612353647673965c32 /libmpdemux/demux_rawdv.c | |
parent | 5408489488e75903594baee798efcf5b665cb551 (diff) | |
download | mpv-0c7b6fc2123db6a4f77064d9bfe8f7f7c185a102.tar.bz2 mpv-0c7b6fc2123db6a4f77064d9bfe8f7f7c185a102.tar.xz |
Rather simple patch for RAWDV demuxer which lets it say whats the total
movie length.
Patch by Oded Shimon
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14935 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_rawdv.c')
-rw-r--r-- | libmpdemux/demux_rawdv.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libmpdemux/demux_rawdv.c b/libmpdemux/demux_rawdv.c index dea8463092..ad7a903137 100644 --- a/libmpdemux/demux_rawdv.c +++ b/libmpdemux/demux_rawdv.c @@ -225,4 +225,22 @@ void demux_close_rawdv(demuxer_t* demuxer) free(frames); } +int demux_rawdv_control(demuxer_t *demuxer,int cmd, void *arg) { + rawdv_frames_t *frames = (rawdv_frames_t *)demuxer->priv; + sh_video_t *sh_video=demuxer->video->sh; + + switch(cmd) { + case DEMUXER_CTRL_GET_TIME_LENGTH: + *((unsigned long *)arg)=frames->frame_number / sh_video->fps; + return DEMUXER_CTRL_OK; + + case DEMUXER_CTRL_GET_PERCENT_POS: + *((int *)arg)=(int)(frames->current_frame * 100. / frames->frame_number); + return DEMUXER_CTRL_OK; + + default: + return DEMUXER_CTRL_NOTIMPL; + } +} + #endif |