apc: set channel layout

This commit is contained in:
Justin Ruggles 2012-04-07 11:25:52 -04:00
parent 5595368bcc
commit 39f0e9b8c6
1 changed files with 9 additions and 3 deletions

View File

@ -20,6 +20,8 @@
*/
#include <string.h>
#include "libavutil/channel_layout.h"
#include "avformat.h"
static int apc_probe(AVProbeData *p)
@ -58,9 +60,13 @@ static int apc_read_header(AVFormatContext *s)
/* initial predictor values for adpcm decoder */
avio_read(pb, st->codec->extradata, 2 * 4);
st->codec->channels = 1;
if (avio_rl32(pb))
st->codec->channels = 2;
if (avio_rl32(pb)) {
st->codec->channels = 2;
st->codec->channel_layout = AV_CH_LAYOUT_STEREO;
} else {
st->codec->channels = 1;
st->codec->channel_layout = AV_CH_LAYOUT_MONO;
}
st->codec->bits_per_coded_sample = 4;
st->codec->bit_rate = st->codec->bits_per_coded_sample * st->codec->channels