Browse Source

Write channel_layout for multichannel aif files.

tags/n0.8
Carl Eugen Hoyos 14 years ago
parent
commit
f2962ac8ad
2 changed files with 8 additions and 1 deletions
  1. +1
    -1
      libavformat/Makefile
  2. +7
    -0
      libavformat/aiffenc.c

+ 1
- 1
libavformat/Makefile View File

@@ -24,7 +24,7 @@ OBJS-$(CONFIG_AC3_MUXER) += rawenc.o
OBJS-$(CONFIG_ADTS_MUXER) += adtsenc.o
OBJS-$(CONFIG_AEA_DEMUXER) += aea.o pcm.o
OBJS-$(CONFIG_AIFF_DEMUXER) += aiffdec.o riff.o pcm.o isom.o
OBJS-$(CONFIG_AIFF_MUXER) += aiffenc.o riff.o
OBJS-$(CONFIG_AIFF_MUXER) += aiffenc.o riff.o isom.o
OBJS-$(CONFIG_AMR_DEMUXER) += amr.o
OBJS-$(CONFIG_AMR_MUXER) += amr.o
OBJS-$(CONFIG_ANM_DEMUXER) += anm.o


+ 7
- 0
libavformat/aiffenc.c View File

@@ -22,6 +22,7 @@
#include "avformat.h"
#include "aiff.h"
#include "avio_internal.h"
#include "isom.h"

typedef struct {
int64_t form;
@@ -61,6 +62,12 @@ static int aiff_write_header(AVFormatContext *s)
avio_wb32(pb, 0xA2805140);
}

if (enc->channels > 2 && enc->channel_layout) {
ffio_wfourcc(pb, "CHAN");
avio_wb32(pb, 12);
ff_mov_write_chan(pb, enc->channel_layout);
}

/* Common chunk */
ffio_wfourcc(pb, "COMM");
avio_wb32(pb, aifc ? 24 : 18); /* size */


Loading…
Cancel
Save