diff options
author | Uoti Urpala <uau@symbol.nonexistent.invalid> | 2008-06-07 19:57:57 +0300 |
---|---|---|
committer | Uoti Urpala <uau@symbol.nonexistent.invalid> | 2008-06-07 19:57:57 +0300 |
commit | af3fcdf2ded43e887bceed3a957b5cc4f7dbc2c6 (patch) | |
tree | 2ead158ae6e6abfffcccf1609aa5492f9402e24f /libmpcodecs | |
parent | d5c868325cefcd5fad53361d1dfdc9757674eb70 (diff) | |
parent | 4653f5ed7575d6070b54a88b4deb449f838825b3 (diff) | |
download | mpv-af3fcdf2ded43e887bceed3a957b5cc4f7dbc2c6.tar.bz2 mpv-af3fcdf2ded43e887bceed3a957b5cc4f7dbc2c6.tar.xz |
Merge svn changes up to r27025
Conflicts:
command.c
libvo/vosub_vidix.c
libvo/vosub_vidix.h
mplayer.c
Diffstat (limited to 'libmpcodecs')
-rw-r--r-- | libmpcodecs/ad_ffmpeg.c | 2 | ||||
-rw-r--r-- | libmpcodecs/ad_libvorbis.c | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/libmpcodecs/ad_ffmpeg.c b/libmpcodecs/ad_ffmpeg.c index 2fa06b8ccc..cef9819831 100644 --- a/libmpcodecs/ad_ffmpeg.c +++ b/libmpcodecs/ad_ffmpeg.c @@ -176,7 +176,7 @@ static int decode_audio(sh_audio_t *sh_audio,unsigned char *buf,int minlen,int m else if (!strcasecmp(codec, "liba52")) src_ch_layout = AF_CHANNEL_LAYOUT_LAVC_LIBA52_DEFAULT; else if (!strcasecmp(codec, "vorbis")) - src_ch_layout = AF_CHANNEL_LAYOUT_LAVC_VORBIS_DEFAULT; + src_ch_layout = AF_CHANNEL_LAYOUT_VORBIS_DEFAULT; else src_ch_layout = AF_CHANNEL_LAYOUT_MPLAYER_DEFAULT; reorder_channel_nch(buf, src_ch_layout, diff --git a/libmpcodecs/ad_libvorbis.c b/libmpcodecs/ad_libvorbis.c index d8e4de99c7..eebcd298fe 100644 --- a/libmpcodecs/ad_libvorbis.c +++ b/libmpcodecs/ad_libvorbis.c @@ -7,6 +7,7 @@ #include "config.h" #include "ad_internal.h" +#include "libaf/reorder_ch.h" static const ad_info_t info = { @@ -316,6 +317,12 @@ static int decode_audio(sh_audio_t *sh,unsigned char *buf,int minlen,int maxlen) // if (!samples) break; // why? how? } + if (len > 0 && ov->vi.channels >= 5) { + reorder_channel_nch(buf, AF_CHANNEL_LAYOUT_VORBIS_DEFAULT, + AF_CHANNEL_LAYOUT_MPLAYER_DEFAULT, + ov->vi.channels, len / sh->samplesize, + sh->samplesize); + } return len; |