diff options
author | Uoti Urpala <uau@glyph.nonexistent.invalid> | 2010-11-08 02:38:51 +0200 |
---|---|---|
committer | Uoti Urpala <uau@glyph.nonexistent.invalid> | 2010-11-08 18:05:12 +0200 |
commit | a7b91626cf04139b3a42db048fe5b5aea96e141a (patch) | |
tree | 66c48a2ffe943c260ca62e3f9b39481fda97cac0 /libmpdemux | |
parent | 82cd2f7aecef6594f1aea15251b547365bebb183 (diff) | |
download | mpv-a7b91626cf04139b3a42db048fe5b5aea96e141a.tar.bz2 mpv-a7b91626cf04139b3a42db048fe5b5aea96e141a.tar.xz |
core: use correct demuxer with -audiofile / -subfile
Various code referred to "mpctx->demuxer" where it should really have
referred to the one used for audio/subtitles in case those differ. Fix
by using "mpctx->d_audio->demuxer" etc instead. Disable the copying of
streams in demux_demuxers; that was a partial workaround for things
referring to the main demuxer (and it wasn't enough anyway).
This fixes, among other things, switching audio tracks within the file
specified by -audiofile.
Diffstat (limited to 'libmpdemux')
-rw-r--r-- | libmpdemux/demux_demuxers.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libmpdemux/demux_demuxers.c b/libmpdemux/demux_demuxers.c index 1c71787008..3de307db0f 100644 --- a/libmpdemux/demux_demuxers.c +++ b/libmpdemux/demux_demuxers.c @@ -63,12 +63,12 @@ demuxer_t* new_demuxers_demuxer(demuxer_t* vd, demuxer_t* ad, demuxer_t* sd) { if (vd) vd->video->demuxer = ret; if (ad) ad->audio->demuxer = ret; if (sd) sd->sub->demuxer = ret; -#endif // HACK?, necessary for subtitle (and audio and video when implemented) switching memcpy(ret->v_streams, vd->v_streams, sizeof(ret->v_streams)); memcpy(ret->a_streams, ad->a_streams, sizeof(ret->a_streams)); memcpy(ret->s_streams, sd->s_streams, sizeof(ret->s_streams)); +#endif ret->desc = &demuxer_desc_demuxers; |