diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-11-13 10:55:07 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-11-13 10:55:07 +0100 |
commit | 7eb40d85f2258df31287dc7a0704cb35e356c077 (patch) | |
tree | fc2054037b541d507aa2af4009dd85ad41eeaaf3 /libavformat/iff.c | |
parent | a8f2420e06d515d71724d83b3f73f31328e8ebd5 (diff) | |
parent | ef1b23ad21e3f12fc4ff2a73a6d4d4cd9d630c4b (diff) | |
download | ffmpeg-7eb40d85f2258df31287dc7a0704cb35e356c077.tar.gz |
Merge commit 'ef1b23ad21e3f12fc4ff2a73a6d4d4cd9d630c4b'
* commit 'ef1b23ad21e3f12fc4ff2a73a6d4d4cd9d630c4b': (21 commits)
jvdec: set channel layout
iss: set channel layout
ipmovie: set channel layout
iff: set channel layout
idroqdec: set channel layout
gxfdec: set channel layout when applicable
gsmdec: set channel layout
flvdec: set channel layout
dv: set channel layout
dsicin: set channel layout
daud: set channel layout
cdxl: set channel layout
bmv: set channel layout
bink: set channel layout
bfi: set channel layout
bethsoftvid: set channel layout
apc: set channel layout
amr: set channel_layout
ppc: replace pointer casting with AV_COPY32
ppc: fix some unused variable warnings
...
Conflicts:
libavformat/amr.c
libavformat/iff.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/iff.c')
-rw-r--r-- | libavformat/iff.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/libavformat/iff.c b/libavformat/iff.c index d559ad3c2b..c7213bc631 100644 --- a/libavformat/iff.c +++ b/libavformat/iff.c @@ -28,10 +28,11 @@ * http://wiki.multimedia.cx/index.php?title=IFF */ -#include "libavcodec/bytestream.h" #include "libavutil/avassert.h" +#include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "libavutil/dict.h" +#include "libavcodec/bytestream.h" #include "avformat.h" #include "internal.h" @@ -155,6 +156,7 @@ static int iff_read_header(AVFormatContext *s) return AVERROR(ENOMEM); st->codec->channels = 1; + st->codec->channel_layout = AV_CH_LAYOUT_MONO; avio_skip(pb, 8); // codec_tag used by ByteRun1 decoder to distinguish progressive (PBM) and interlaced (ILBM) content st->codec->codec_tag = avio_rl32(pb); @@ -191,7 +193,13 @@ static int iff_read_header(AVFormatContext *s) case ID_CHAN: if (data_size < 4) return AVERROR_INVALIDDATA; - st->codec->channels = (avio_rb32(pb) < 6) ? 1 : 2; + if (avio_rb32(pb) < 6) { + st->codec->channels = 1; + st->codec->channel_layout = AV_CH_LAYOUT_MONO; + } else { + st->codec->channels = 2; + st->codec->channel_layout = AV_CH_LAYOUT_STEREO; + } break; case ID_CAMG: |