summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormplayer-svn <svn@mplayerhq.hu>2012-05-18 17:03:09 +0000
committerwm4 <wm4@nowhere>2012-08-03 03:34:38 +0200
commitd0525a0f59d0525167f8b665f1b76df304241298 (patch)
treebb0246cf19634b7fc4f7230b22994755434e880c
parentad8ef269cfd913c00f5644b7d3379b3116c38809 (diff)
downloadmpv-d0525a0f59d0525167f8b665f1b76df304241298.tar.bz2
mpv-d0525a0f59d0525167f8b665f1b76df304241298.tar.xz
demux_audio: fix calculation of audio length
Take start offset into account when calculating amount of audio data. Patch by Benoît Thébaudeau [benoit thebaudeau advansee com] git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@34915 b3059339-0415-0410-9bf9-f77b7e298cf2 Author: reimar
-rw-r--r--libmpdemux/demux_audio.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libmpdemux/demux_audio.c b/libmpdemux/demux_audio.c
index 0370ec7591..802d36eacc 100644
--- a/libmpdemux/demux_audio.c
+++ b/libmpdemux/demux_audio.c
@@ -790,7 +790,8 @@ static void demux_close_audio(demuxer_t* demuxer) {
static int demux_audio_control(demuxer_t *demuxer,int cmd, void *arg){
sh_audio_t *sh_audio=demuxer->audio->sh;
- int audio_length = sh_audio->i_bps ? demuxer->movi_end / sh_audio->i_bps : 0;
+ int audio_length = sh_audio->i_bps && demuxer->movi_end > demuxer->movi_start ?
+ (demuxer->movi_end - demuxer->movi_start) / sh_audio->i_bps : 0;
da_priv_t* priv = demuxer->priv;
switch(cmd) {