author | Michael Niedermayer <michaelni@gmx.at> | 2012-11-12 10:32:11 (GMT) |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-11-12 10:32:11 (GMT) |
commit | 03b078721c8e42c413da75f553e740d235092dad (patch) | |
tree | e8efab14cdede3d6a84265c4873ad547ee704bf5 | |
parent | da501ea857b13ea13749e372ccca9ae0804ff4d5 (diff) | |
parent | 97bf7c03b1338a867da52c159a2afecbdedcfa88 (diff) | |
download | ffmpeg-03b078721c8e42c413da75f553e740d235092dad.zip ffmpeg-03b078721c8e42c413da75f553e740d235092dad.tar.gz ffmpeg-03b078721c8e42c413da75f553e740d235092dad.tar.bz2 |
Merge commit '97bf7c03b1338a867da52c159a2afecbdedcfa88'
* commit '97bf7c03b1338a867da52c159a2afecbdedcfa88':
doc: git-howto: Leave reviewers time to react before pushing patches
Include libavutil/channel_layout.h instead of libavutil/audioconvert.h
lavu: rename audioconvert.* to channel_layout.* and deprecate audioconvert.h
Conflicts:
doc/APIchanges
doc/examples/decoding_encoding.c
doc/git-howto.texi
ffmpeg_filter.c
libavcodec/flacdec.c
libavcodec/imc.c
libavcodec/mpegaudiodec.c
libavcodec/utils.c
libavfilter/asrc_anullsrc.c
libavfilter/audio.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/avfiltergraph.c
libavfilter/buffer.c
libavutil/Makefile
libavutil/audioconvert.h
libavutil/channel_layout.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
84 files changed, 323 insertions, 319 deletions
diff --git a/doc/APIchanges b/doc/APIchanges index 8ab0d56..307e303 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -110,6 +110,9 @@ API changes, most recent first: 2012-03-26 - a67d9cf - lavfi 2.66.100 Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions. +2012-xx-xx - xxxxxxx - lavu 52.2.0 - audioconvert.h + Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated. + 2012-xx-xx - xxxxxxx - lavu 52.1.0 - intmath.h Add av_ctz() for trailing zero bit count diff --git a/doc/examples/decoding_encoding.c b/doc/examples/decoding_encoding.c index cc5953f..ae1057c 100644 --- a/doc/examples/decoding_encoding.c +++ b/doc/examples/decoding_encoding.c @@ -34,7 +34,7 @@ #include <libavutil/opt.h> #include <libavcodec/avcodec.h> -#include <libavutil/audioconvert.h> +#include <libavutil/channel_layout.h> #include <libavutil/common.h> #include <libavutil/imgutils.h> #include <libavutil/mathematics.h> diff --git a/doc/filters.texi b/doc/filters.texi index 286da97..e50e55b 100644 --- a/doc/filters.texi +++ b/doc/filters.texi @@ -1093,7 +1093,7 @@ representing a channel layout. The default value of @var{channel_layout} is "stereo". Check the channel_layout_map definition in -@file{libavcodec/audioconvert.c} for the mapping between strings and +@file{libavutil/channel_layout.c} for the mapping between strings and channel layout values. @item nb_samples, n @@ -43,7 +43,7 @@ #include "libswscale/swscale.h" #include "libswresample/swresample.h" #include "libavutil/opt.h" -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/parseutils.h" #include "libavutil/samplefmt.h" #include "libavutil/colorspace.h" diff --git a/ffmpeg_filter.c b/ffmpeg_filter.c index 6a51410..358e1ed 100644 --- a/ffmpeg_filter.c +++ b/ffmpeg_filter.c @@ -24,10 +24,10 @@ #include "libavfilter/avfiltergraph.h" #include "libavfilter/buffersink.h" -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" #include "libavutil/avstring.h" #include "libavutil/bprint.h" +#include "libavutil/channel_layout.h" #include "libavutil/pixdesc.h" #include "libavutil/pixfmt.h" #include "libavutil/imgutils.h" diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c index 8fdb4cb..0baa3b1 100644 --- a/ffmpeg_opt.c +++ b/ffmpeg_opt.c @@ -30,10 +30,10 @@ #include "libavfilter/avfilter.h" #include "libavfilter/avfiltergraph.h" -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" #include "libavutil/avstring.h" #include "libavutil/avutil.h" +#include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "libavutil/fifo.h" #include "libavutil/mathematics.h" diff --git a/libavcodec/aacdectab.h b/libavcodec/aacdectab.h index 0083260..4a12b4f 100644 --- a/libavcodec/aacdectab.h +++ b/libavcodec/aacdectab.h @@ -30,7 +30,7 @@ #ifndef AVCODEC_AACDECTAB_H #define AVCODEC_AACDECTAB_H -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "aac.h" #include <stdint.h> diff --git a/libavcodec/ac3_parser.c b/libavcodec/ac3_parser.c index 8250a67..8dc4c0d 100644 --- a/libavcodec/ac3_parser.c +++ b/libavcodec/ac3_parser.c @@ -20,11 +20,11 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavutil/channel_layout.h" #include "parser.h" #include "ac3_parser.h" #include "aac_ac3_parser.h" #include "get_bits.h" -#include "libavutil/audioconvert.h" #define AC3_HEADER_SIZE 7 diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c index 9781af5..22b6857 100644 --- a/libavcodec/ac3enc.c +++ b/libavcodec/ac3enc.c @@ -30,9 +30,9 @@ #include <stdint.h> -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" #include "libavutil/avstring.h" +#include "libavutil/channel_layout.h" #include "libavutil/crc.h" #include "libavutil/opt.h" #include "avcodec.h" @@ -40,7 +40,6 @@ #include "dsputil.h" #include "ac3dsp.h" #include "ac3.h" -#include "audioconvert.h" #include "fft.h" #include "ac3enc.h" #include "eac3enc.h" diff --git a/libavcodec/ac3tab.c b/libavcodec/ac3tab.c index ccf04ec..9d20d90 100644 --- a/libavcodec/ac3tab.c +++ b/libavcodec/ac3tab.c @@ -24,7 +24,7 @@ * tables taken directly from the AC-3 spec. */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "ac3tab.h" diff --git a/libavcodec/alac.c b/libavcodec/alac.c index 2b1eedb..b705343 100644 --- a/libavcodec/alac.c +++ b/libavcodec/alac.c @@ -45,7 +45,7 @@ * 32bit samplerate */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "get_bits.h" #include "bytestream.h" diff --git a/libavcodec/amrnbdec.c b/libavcodec/amrnbdec.c index a523a54..0057959 100644 --- a/libavcodec/amrnbdec.c +++ b/libavcodec/amrnbdec.c @@ -43,7 +43,7 @@ #include <string.h> #include <math.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "dsputil.h" #include "libavutil/common.h" diff --git a/libavcodec/amrwbdec.c b/libavcodec/amrwbdec.c index a0e7cd6..468ffa0 100644 --- a/libavcodec/amrwbdec.c +++ b/libavcodec/amrwbdec.c @@ -24,7 +24,7 @@ * AMR wideband decoder */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/lfg.h" diff --git a/libavcodec/apedec.c b/libavcodec/apedec.c index 2ab0c89..a85d355 100644 --- a/libavcodec/apedec.c +++ b/libavcodec/apedec.c @@ -20,12 +20,12 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavutil/avassert.h" +#include "libavutil/channel_layout.h" +#include "libavutil/opt.h" #include "avcodec.h" #include "dsputil.h" #include "bytestream.h" -#include "libavutil/audioconvert.h" -#include "libavutil/avassert.h" -#include "libavutil/opt.h" /** * @file diff --git a/libavcodec/audioconvert.h b/libavcodec/audioconvert.h index 03b196b..61124b3 100644 --- a/libavcodec/audioconvert.h +++ b/libavcodec/audioconvert.h @@ -31,7 +31,7 @@ #include "libavutil/cpu.h" #include "avcodec.h" -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" struct AVAudioConvert; typedef struct AVAudioConvert AVAudioConvert; diff --git a/libavcodec/bmv.c b/libavcodec/bmv.c index b05bd49..fa44c6c 100644 --- a/libavcodec/bmv.c +++ b/libavcodec/bmv.c @@ -19,7 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "bytestream.h" #include "libavutil/avassert.h" diff --git a/libavcodec/cook.c b/libavcodec/cook.c index cc256f6..a02dd86 100644 --- a/libavcodec/cook.c +++ b/libavcodec/cook.c @@ -42,13 +42,13 @@ * available. */ +#include "libavutil/channel_layout.h" #include "libavutil/lfg.h" #include "avcodec.h" #include "get_bits.h" #include "dsputil.h" #include "bytestream.h" #include "fft.h" -#include "libavutil/audioconvert.h" #include "sinewin.h" #include "cookdata.h" diff --git a/libavcodec/dcadec.c b/libavcodec/dcadec.c index 6c97623..c21a97b 100644 --- a/libavcodec/dcadec.c +++ b/libavcodec/dcadec.c @@ -26,12 +26,12 @@ #include <stddef.h> #include <stdio.h> +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/float_dsp.h" #include "libavutil/intmath.h" #include "libavutil/intreadwrite.h" #include "libavutil/mathematics.h" -#include "libavutil/audioconvert.h" #include "libavutil/samplefmt.h" #include "avcodec.h" #include "dsputil.h" diff --git a/libavcodec/dsicinav.c b/libavcodec/dsicinav.c index 6a0d754..a1b45f1 100644 --- a/libavcodec/dsicinav.c +++ b/libavcodec/dsicinav.c @@ -24,7 +24,7 @@ * Delphine Software International CIN audio/video decoders */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "bytestream.h" #include "mathops.h" diff --git a/libavcodec/flac.c b/libavcodec/flac.c index 4c1bc58..3b803fe 100644 --- a/libavcodec/flac.c +++ b/libavcodec/flac.c @@ -19,7 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/crc.h" #include "libavutil/log.h" #include "bytestream.h" diff --git a/libavcodec/flacdec.c b/libavcodec/flacdec.c index 05793c9..317d7fa 100644 --- a/libavcodec/flacdec.c +++ b/libavcodec/flacdec.c @@ -33,8 +33,8 @@ #include <limits.h> -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" +#include "libavutil/channel_layout.h" #include "libavutil/crc.h" #include "avcodec.h" #include "internal.h" diff --git a/libavcodec/g722dec.c b/libavcodec/g722dec.c index 6c505d9..f28c86b 100644 --- a/libavcodec/g722dec.c +++ b/libavcodec/g722dec.c @@ -34,11 +34,11 @@ * respectively of each byte are ignored. */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" +#include "libavutil/opt.h" #include "avcodec.h" #include "get_bits.h" #include "g722.h" -#include "libavutil/opt.h" #define OFFSET(x) offsetof(G722Context, x) #define AD AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_DECODING_PARAM diff --git a/libavcodec/g723_1.c b/libavcodec/g723_1.c index a74c74d..58df03c 100644 --- a/libavcodec/g723_1.c +++ b/libavcodec/g723_1.c @@ -26,7 +26,7 @@ */ #define BITSTREAM_READER_LE -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/mem.h" #include "libavutil/opt.h" #include "avcodec.h" diff --git a/libavcodec/g726.c b/libavcodec/g726.c index 609882e..e505d5d 100644 --- a/libavcodec/g726.c +++ b/libavcodec/g726.c @@ -23,8 +23,8 @@ */ #include <limits.h> -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" +#include "libavutil/channel_layout.h" #include "libavutil/opt.h" #include "avcodec.h" #include "internal.h" diff --git a/libavcodec/gsmdec.c b/libavcodec/gsmdec.c index 3e1b86a..f6f99bd 100644 --- a/libavcodec/gsmdec.c +++ b/libavcodec/gsmdec.c @@ -24,7 +24,7 @@ * GSM decoder */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "get_bits.h" #include "msgsmdec.h" diff --git a/libavcodec/imc.c b/libavcodec/imc.c index ba39d41..fff4b90 100644 --- a/libavcodec/imc.c +++ b/libavcodec/imc.c @@ -35,12 +35,12 @@ #include <stddef.h> #include <stdio.h> +#include "libavutil/channel_layout.h" +#include "libavutil/libm.h" #include "avcodec.h" #include "get_bits.h" #include "dsputil.h" #include "fft.h" -#include "libavutil/audioconvert.h" -#include "libavutil/libm.h" #include "sinewin.h" #include "imcdata.h" diff --git a/libavcodec/libfaac.c b/libavcodec/libfaac.c index 0bfed1e..a7bf503 100644 --- a/libavcodec/libfaac.c +++ b/libavcodec/libfaac.c @@ -26,11 +26,11 @@ #include <faac.h> +#include "libavutil/channel_layout.h" +#include "libavutil/common.h" #include "avcodec.h" #include "audio_frame_queue.h" #include "internal.h" -#include "libavutil/audioconvert.h" -#include "libavutil/common.h" /* libfaac has an encoder delay of 1024 samples */ diff --git a/libavcodec/libfdk-aacenc.c b/libavcodec/libfdk-aacenc.c index 2874e37..c2d8a2b 100644 --- a/libavcodec/libfdk-aacenc.c +++ b/libavcodec/libfdk-aacenc.c @@ -21,12 +21,12 @@ #include <fdk-aac/aacenc_lib.h> +#include "libavutil/channel_layout.h" +#include "libavutil/common.h" +#include "libavutil/opt.h" #include "avcodec.h" #include "audio_frame_queue.h" #include "internal.h" -#include "libavutil/audioconvert.h" -#include "libavutil/common.h" -#include "libavutil/opt.h" typedef struct AACContext { const AVClass *class; diff --git a/libavcodec/libgsm.c b/libavcodec/libgsm.c index e90bdf0..8915ef5 100644 --- a/libavcodec/libgsm.c +++ b/libavcodec/libgsm.c @@ -29,11 +29,11 @@ #include <gsm/gsm.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" +#include "libavutil/common.h" #include "avcodec.h" #include "internal.h" #include "gsm.h" -#include "libavutil/common.h" static av_cold int libgsm_encode_close(AVCodecContext *avctx) { #if FF_API_OLD_ENCODE_AUDIO diff --git a/libavcodec/libilbc.c b/libavcodec/libilbc.c index 462622a..bcc01ed 100644 --- a/libavcodec/libilbc.c +++ b/libavcodec/libilbc.c @@ -21,10 +21,10 @@ #include <ilbc.h> -#include "libavutil/audioconvert.h" -#include "avcodec.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/opt.h" +#include "avcodec.h" #include "internal.h" static int get_mode(AVCodecContext *avctx) diff --git a/libavcodec/libmp3lame.c b/libavcodec/libmp3lame.c index b2669c8..a0f39bb 100644 --- a/libavcodec/libmp3lame.c +++ b/libavcodec/libmp3lame.c @@ -26,7 +26,7 @@ #include <lame/lame.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/intreadwrite.h" #include "libavutil/log.h" diff --git a/libavcodec/libopencore-amr.c b/libavcodec/libopencore-amr.c index df038df..efe87cd 100644 --- a/libavcodec/libopencore-amr.c +++ b/libavcodec/libopencore-amr.c @@ -19,11 +19,11 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" -#include "avcodec.h" #include "libavutil/avstring.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/opt.h" +#include "avcodec.h" #include "audio_frame_queue.h" #include "internal.h" diff --git a/libavcodec/libspeexdec.c b/libavcodec/libspeexdec.c index 51ab7ea..deed7e9 100644 --- a/libavcodec/libspeexdec.c +++ b/libavcodec/libspeexdec.c @@ -23,7 +23,7 @@ #include <speex/speex_stereo.h> #include <speex/speex_callbacks.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "avcodec.h" diff --git a/libavcodec/libspeexenc.c b/libavcodec/libspeexenc.c index fb597ef..7dfc6d3 100644 --- a/libavcodec/libspeexenc.c +++ b/libavcodec/libspeexenc.c @@ -85,7 +85,7 @@ #include <speex/speex_header.h> #include <speex/speex_stereo.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/opt.h" #include "avcodec.h" diff --git a/libavcodec/mlp_parser.c b/libavcodec/mlp_parser.c index 1f5a3b1..f1c0a0d 100644 --- a/libavcodec/mlp_parser.c +++ b/libavcodec/mlp_parser.c @@ -26,8 +26,8 @@ #include <stdint.h> +#include "libavutil/channel_layout.h" #include "libavutil/crc.h" -#include "libavutil/audioconvert.h" #include "get_bits.h" #include "parser.h" #include "mlp_parser.h" diff --git a/libavcodec/mpc7.c b/libavcodec/mpc7.c index 9f3cf6c..bacb78e 100644 --- a/libavcodec/mpc7.c +++ b/libavcodec/mpc7.c @@ -25,12 +25,12 @@ * divided into 32 subbands. */ +#include "libavutil/channel_layout.h" #include "libavutil/lfg.h" #include "avcodec.h" #include "get_bits.h" #include "dsputil.h" #include "mpegaudiodsp.h" -#include "libavutil/audioconvert.h" #include "mpc.h" #include "mpc7data.h" diff --git a/libavcodec/mpc8.c b/libavcodec/mpc8.c index 8b1c935..1af417a 100644 --- a/libavcodec/mpc8.c +++ b/libavcodec/mpc8.c @@ -25,12 +25,12 @@ * divided into 32 subbands. */ +#include "libavutil/channel_layout.h" #include "libavutil/lfg.h" #include "avcodec.h" #include "get_bits.h" #include "dsputil.h" #include "mpegaudiodsp.h" -#include "libavutil/audioconvert.h" #include "mpc.h" #include "mpc8data.h" diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c index f0256f3..8f7d34c 100644 --- a/libavcodec/mpegaudiodec.c +++ b/libavcodec/mpegaudiodec.c @@ -24,8 +24,8 @@ * MPEG Audio decoder */ -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" +#include "libavutil/channel_layout.h" #include "libavutil/libm.h" #include "avcodec.h" #include "get_bits.h" diff --git a/libavcodec/mpegaudioenc.c b/libavcodec/mpegaudioenc.c index 806cb21..75436f8 100644 --- a/libavcodec/mpegaudioenc.c +++ b/libavcodec/mpegaudioenc.c @@ -24,7 +24,7 @@ * The simplest mpeg audio layer 2 encoder. */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "internal.h" diff --git a/libavcodec/nellymoserdec.c b/libavcodec/nellymoserdec.c index 8413ea5..b4823a8 100644 --- a/libavcodec/nellymoserdec.c +++ b/libavcodec/nellymoserdec.c @@ -31,14 +31,14 @@ * implementors. The original code is available from http://code.google.com/p/nelly2pcm/ */ -#include "nellymoser.h" +#include "libavutil/channel_layout.h" #include "libavutil/lfg.h" #include "libavutil/random_seed.h" -#include "libavutil/audioconvert.h" #include "avcodec.h" #include "dsputil.h" #include "fft.h" #include "fmtconvert.h" +#include "nellymoser.h" #include "sinewin.h" #define BITSTREAM_READER_LE diff --git a/libavcodec/pcm-mpeg.c b/libavcodec/pcm-mpeg.c index 207f121..01a61c8 100644 --- a/libavcodec/pcm-mpeg.c +++ b/libavcodec/pcm-mpeg.c @@ -24,7 +24,7 @@ * PCM codecs for encodings found in MPEG streams (DVD/Blu-ray) */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "bytestream.h" diff --git a/libavcodec/qcelpdec.c b/libavcodec/qcelpdec.c index 9cc30f6..e406049 100644 --- a/libavcodec/qcelpdec.c +++ b/libavcodec/qcelpdec.c @@ -29,7 +29,7 @@ #include <stddef.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "internal.h" #include "get_bits.h" diff --git a/libavcodec/qdm2.c b/libavcodec/qdm2.c index 38eca42..08674be 100644 --- a/libavcodec/qdm2.c +++ b/libavcodec/qdm2.c @@ -36,7 +36,7 @@ #include <stdio.h> #define BITSTREAM_READER_LE -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "get_bits.h" #include "dsputil.h" diff --git a/libavcodec/ra144dec.c b/libavcodec/ra144dec.c index acf6247..ad9e008 100644 --- a/libavcodec/ra144dec.c +++ b/libavcodec/ra144dec.c @@ -22,7 +22,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/intmath.h" #include "avcodec.h" #include "get_bits.h" diff --git a/libavcodec/ra288.c b/libavcodec/ra288.c index 41364f3..a9f67bf 100644 --- a/libavcodec/ra288.c +++ b/libavcodec/ra288.c @@ -19,7 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/float_dsp.h" #include "avcodec.h" #define BITSTREAM_READER_LE diff --git a/libavcodec/ralf.c b/libavcodec/ralf.c index 3244424..c9c8080 100644 --- a/libavcodec/ralf.c +++ b/libavcodec/ralf.c @@ -26,11 +26,11 @@ * Dedicated to the mastermind behind it, Ralph Wiggum. */ +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "get_bits.h" #include "golomb.h" #include "unary.h" -#include "libavutil/audioconvert.h" #include "ralfdata.h" #define FILTER_NONE 0 diff --git a/libavcodec/sipr.c b/libavcodec/sipr.c index 986310d..d8bfdd2 100644 --- a/libavcodec/sipr.c +++ b/libavcodec/sipr.c @@ -25,7 +25,7 @@ #include <stdint.h> #include <string.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/mathematics.h" #include "avcodec.h" #define BITSTREAM_READER_LE diff --git a/libavcodec/smacker.c b/libavcodec/smacker.c index a6a4386..f4cc6ae 100644 --- a/libavcodec/smacker.c +++ b/libavcodec/smacker.c @@ -31,8 +31,8 @@ #include <stdio.h> #include <stdlib.h> +#include "libavutil/channel_layout.h" #include "avcodec.h" -#include "libavutil/audioconvert.h" #include "mathops.h" #define BITSTREAM_READER_LE diff --git a/libavcodec/truespeech.c b/libavcodec/truespeech.c index 686bf08..d523bdd 100644 --- a/libavcodec/truespeech.c +++ b/libavcodec/truespeech.c @@ -19,7 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "avcodec.h" #include "dsputil.h" diff --git a/libavcodec/twinvq.c b/libavcodec/twinvq.c index 88c1c9a..d7a3726 100644 --- a/libavcodec/twinvq.c +++ b/libavcodec/twinvq.c @@ -19,7 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/float_dsp.h" #include "avcodec.h" #include "get_bits.h" diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 931f3fd..0d3cb81 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -27,10 +27,10 @@ #include "libavutil/avassert.h" #include "libavutil/avstring.h" +#include "libavutil/channel_layout.h" #include "libavutil/crc.h" #include "libavutil/mathematics.h" #include "libavutil/pixdesc.h" -#include "libavutil/audioconvert.h" #include "libavutil/imgutils.h" #include "libavutil/samplefmt.h" #include "libavutil/dict.h" @@ -40,7 +40,6 @@ #include "libavutil/opt.h" #include "thread.h" #include "frame_thread_encoder.h" -#include "audioconvert.h" #include "internal.h" #include "bytestream.h" #include <stdlib.h> diff --git a/libavcodec/vmdav.c b/libavcodec/vmdav.c index 1ecf211..63343fd 100644 --- a/libavcodec/vmdav.c +++ b/libavcodec/vmdav.c @@ -43,7 +43,7 @@ #include <stdlib.h> #include <string.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/intreadwrite.h" #include "avcodec.h" diff --git a/libavcodec/vorbis_data.c b/libavcodec/vorbis_data.c index f4b25fb..8aa8015 100644 --- a/libavcodec/vorbis_data.c +++ b/libavcodec/vorbis_data.c @@ -18,10 +18,10 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavutil/channel_layout.h" +#include "libavutil/mem.h" #include "dsputil.h" #include "vorbis.h" -#include "libavutil/audioconvert.h" -#include "libavutil/mem.h" const uint8_t ff_vorbis_channel_layout_offsets[8][8] = { { 0 }, diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c index 253974e..69637fe 100644 --- a/libavcodec/wavpack.c +++ b/libavcodec/wavpack.c @@ -21,7 +21,7 @@ #define BITSTREAM_READER_LE -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avcodec.h" #include "get_bits.h" #include "unary.h" diff --git a/libavcodec/wmavoice.c b/libavcodec/wmavoice.c index f4e156e..c156be8 100644 --- a/libavcodec/wmavoice.c +++ b/libavcodec/wmavoice.c @@ -29,7 +29,7 @@ #include <math.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/mem.h" #include "dsputil.h" #include "avcodec.h" diff --git a/libavcodec/ws-snd1.c b/libavcodec/ws-snd1.c index 3a83f94..0f23a6d 100644 --- a/libavcodec/ws-snd1.c +++ b/libavcodec/ws-snd1.c @@ -21,7 +21,7 @@ #include <stdint.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/intreadwrite.h" #include "avcodec.h" diff --git a/libavdevice/alsa-audio-common.c b/libavdevice/alsa-audio-common.c index 9da868f..afe6751 100644 --- a/libavdevice/alsa-audio-common.c +++ b/libavdevice/alsa-audio-common.c @@ -31,7 +31,7 @@ #include <alsa/asoundlib.h> #include "avdevice.h" #include "libavutil/avassert.h" -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "alsa-audio.h" diff --git a/libavfilter/af_aformat.c b/libavfilter/af_aformat.c index 79e0db2..b1d779f 100644 --- a/libavfilter/af_aformat.c +++ b/libavfilter/af_aformat.c @@ -23,8 +23,8 @@ * format audio filter */ -#include "libavutil/audioconvert.h" #include "libavutil/avstring.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/opt.h" diff --git a/libavfilter/af_amix.c b/libavfilter/af_amix.c index a93addd..37853ca 100644 --- a/libavfilter/af_amix.c +++ b/libavfilter/af_amix.c @@ -28,10 +28,10 @@ * output. */ -#include "libavutil/audioconvert.h" #include "libavutil/audio_fifo.h" #include "libavutil/avassert.h" #include "libavutil/avstring.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/float_dsp.h" #include "libavutil/mathematics.h" diff --git a/libavfilter/af_ashowinfo.c b/libavfilter/af_ashowinfo.c index 82ce261..8e4f301 100644 --- a/libavfilter/af_ashowinfo.c +++ b/libavfilter/af_ashowinfo.c @@ -27,7 +27,7 @@ #include <stddef.h> #include "libavutil/adler32.h" -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/mem.h" #include "libavutil/timestamp.h" diff --git a/libavfilter/af_channelmap.c b/libavfilter/af_channelmap.c index 57ad0e0..eccdf44 100644 --- a/libavfilter/af_channelmap.c +++ b/libavfilter/af_channelmap.c @@ -25,8 +25,8 @@ #include <ctype.h> -#include "libavutil/audioconvert.h" #include "libavutil/avstring.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/mathematics.h" #include "libavutil/opt.h" diff --git a/libavfilter/af_channelsplit.c b/libavfilter/af_channelsplit.c index 56950c8..65bbaa6 100644 --- a/libavfilter/af_channelsplit.c +++ b/libavfilter/af_channelsplit.c @@ -23,7 +23,7 @@ * Split an audio stream into per-channel streams. */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/internal.h" #include "libavutil/opt.h" diff --git a/libavfilter/af_join.c b/libavfilter/af_join.c index 210c844..ee8a497 100644 --- a/libavfilter/af_join.c +++ b/libavfilter/af_join.c @@ -25,8 +25,8 @@ * a single output */ -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/opt.h" diff --git a/libavfilter/asrc_anullsrc.c b/libavfilter/asrc_anullsrc.c index 3b20aca..5eec4ad 100644 --- a/libavfilter/asrc_anullsrc.c +++ b/libavfilter/asrc_anullsrc.c @@ -27,14 +27,13 @@ #include <inttypes.h> #include <stdio.h> +#include "libavutil/channel_layout.h" +#include "libavutil/internal.h" +#include "libavutil/opt.h" #include "audio.h" #include "avfilter.h" #include "internal.h" -#include "libavutil/audioconvert.h" -#include "libavutil/internal.h" -#include "libavutil/opt.h" - typedef struct { const AVClass *class; char *channel_layout_str; diff --git a/libavfilter/audio.c b/libavfilter/audio.c index 06702a6..500b97f 100644 --- a/libavfilter/audio.c +++ b/libavfilter/audio.c @@ -20,7 +20,7 @@ */ #include "libavutil/avassert.h" -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "audio.h" diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index dee7ba0..4d59bba 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -19,12 +19,12 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavutil/avassert.h" +#include "libavutil/avstring.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/pixdesc.h" #include "libavutil/rational.h" -#include "libavutil/audioconvert.h" -#include "libavutil/avassert.h" -#include "libavutil/avstring.h" #include "avfilter.h" #include "formats.h" diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index ccc7f2b..ea8464e 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -534,7 +534,7 @@ struct AVFilterLink { int h; ///< agreed upon image height AVRational sample_aspect_ratio; ///< agreed upon sample aspect ratio /* These parameters apply only to audio */ - uint64_t channel_layout; ///< channel layout of current buffer (see libavutil/audioconvert.h) + uint64_t channel_layout; ///< channel layout of current buffer (see libavutil/channel_layout.h) int sample_rate; ///< samples per second int format; ///< agreed upon media format diff --git a/libavfilter/avfiltergraph.c b/libavfilter/avfiltergraph.c index 86be2c4..d75af90 100644 --- a/libavfilter/avfiltergraph.c +++ b/libavfilter/avfiltergraph.c @@ -23,8 +23,8 @@ #include <ctype.h> #include <string.h> -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" +#include "libavutil/channel_layout.h" #include "libavutil/pixdesc.h" #include "libavcodec/avcodec.h" // avcodec_find_best_pix_fmt_of_2() #include "avfilter.h" @@ -32,11 +32,6 @@ #include "formats.h" #include "internal.h" -#include "libavutil/audioconvert.h" -#include "libavutil/avassert.h" -#include "libavutil/common.h" -#include "libavutil/log.h" - static const AVClass filtergraph_class = { .class_name = "AVFilterGraph", .item_name = av_default_item_name, diff --git a/libavfilter/buffer.c b/libavfilter/buffer.c index ae1867f..a8155ef 100644 --- a/libavfilter/buffer.c +++ b/libavfilter/buffer.c @@ -20,7 +20,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/avassert.h" #include "libavutil/common.h" #include "libavutil/imgutils.h" diff --git a/libavfilter/buffersink.c b/libavfilter/buffersink.c index 9a9aaf1..1e3cf50 100644 --- a/libavfilter/buffersink.c +++ b/libavfilter/buffersink.c @@ -24,8 +24,8 @@ */ #include "libavutil/audio_fifo.h" -#include "libavutil/audioconvert.h" #include "libavutil/avassert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/mathematics.h" diff --git a/libavfilter/buffersrc.c b/libavfilter/buffersrc.c index a88cc46..134163f 100644 --- a/libavfilter/buffersrc.c +++ b/libavfilter/buffersrc.c @@ -23,6 +23,12 @@ * memory buffer source filter */ +#include "libavutil/channel_layout.h" +#include "libavutil/common.h" +#include "libavutil/fifo.h" +#include "libavutil/imgutils.h" +#include "libavutil/opt.h" +#include "libavutil/samplefmt.h" #include "audio.h" #include "avfilter.h" #include "buffersrc.h" @@ -31,13 +37,6 @@ #include "video.h" #include "avcodec.h" -#include "libavutil/audioconvert.h" -#include "libavutil/common.h" -#include "libavutil/fifo.h" -#include "libavutil/imgutils.h" -#include "libavutil/opt.h" -#include "libavutil/samplefmt.h" - typedef struct { const AVClass *class; AVFifoBuffer *fifo; diff --git a/libavfilter/fifo.c b/libavfilter/fifo.c index 75f9ddb..8284ef0 100644 --- a/libavfilter/fifo.c +++ b/libavfilter/fifo.c @@ -24,7 +24,7 @@ */ #include "libavutil/avassert.h" -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/mathematics.h" #include "libavutil/samplefmt.h" diff --git a/libavformat/aea.c b/libavformat/aea.c index 6aa7ae3..15b9b1c 100644 --- a/libavformat/aea.c +++ b/libavformat/aea.c @@ -20,10 +20,10 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavutil/channel_layout.h" +#include "libavutil/intreadwrite.h" #include "avformat.h" #include "pcm.h" -#include "libavutil/intreadwrite.h" -#include "libavutil/audioconvert.h" #define AT1_SU_SIZE 212 diff --git a/libavformat/flic.c b/libavformat/flic.c index db3f5d8..2b9ee67 100644 --- a/libavformat/flic.c +++ b/libavformat/flic.c @@ -31,8 +31,8 @@ * special FLIs from the PC games "Magic Carpet" and "X-COM: Terror from the Deep". */ +#include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" -#include "libavutil/audioconvert.h" #include "avformat.h" #include "internal.h" diff --git a/libavformat/g723_1.c b/libavformat/g723_1.c index 7d97a4b..8d35f88 100644 --- a/libavformat/g723_1.c +++ b/libavformat/g723_1.c @@ -24,7 +24,7 @@ * G.723.1 demuxer */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "avformat.h" #include "internal.h" diff --git a/libavformat/mov.c b/libavformat/mov.c index cd260b4..11b1c8d 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -26,7 +26,7 @@ //#define MOV_EXPORT_ALL_METADATA #include "libavutil/attributes.h" -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "libavutil/intfloat.h" #include "libavutil/mathematics.h" diff --git a/libavformat/mov_chan.c b/libavformat/mov_chan.c index 58aec57..cf1f839 100644 --- a/libavformat/mov_chan.c +++ b/libavformat/mov_chan.c @@ -25,7 +25,7 @@ #include <stdint.h> -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavcodec/avcodec.h" #include "mov_chan.h" diff --git a/libavformat/wv.c b/libavformat/wv.c index 8d9184c..cf410c0 100644 --- a/libavformat/wv.c +++ b/libavformat/wv.c @@ -19,7 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavutil/audioconvert.h" +#include "libavutil/channel_layout.h" #include "libavutil/intreadwrite.h" #include "libavutil/dict.h" #include "avformat.h" diff --git a/libavresample/avresample.h b/libavresample/avresample.h index b0a9e24..affeeeb 100644 --- a/libavresample/avresample.h +++ b/libavresample/avresample.h @@ -93,8 +93,8 @@ * avresample_free(). */ -#include "libavutil/audioconvert.h" #include "libavutil/avutil.h" +#include "libavutil/channel_layout.h" #include "libavutil/dict.h" #include "libavutil/log.h" diff --git a/libavutil/Makefile b/libavutil/Makefile index 63da9e9..61ddc9a 100644 --- a/libavutil/Makefile +++ b/libavutil/Makefile @@ -14,6 +14,7 @@ HEADERS = adler32.h \ blowfish.h \ bprint.h \ bswap.h \ + channel_layout.h \ common.h \ cpu.h \ crc.h \ @@ -58,11 +59,11 @@ BUILT_HEADERS = avconfig.h OBJS = adler32.o \ aes.o \ audio_fifo.o \ - audioconvert.o \ avstring.o \ base64.o \ blowfish.o \ bprint.o \ + channel_layout.o \ cpu.o \ crc.o \ des.o \ diff --git a/libavutil/audioconvert.h b/libavutil/audioconvert.h index 76eb278..300a67c 100644 --- a/libavutil/audioconvert.h +++ b/libavutil/audioconvert.h @@ -1,208 +1,6 @@ -/* - * Copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at> - * Copyright (c) 2008 Peter Ross - * - * This file is part of FFmpeg. - * - * FFmpeg is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * FFmpeg is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ -#ifndef AVUTIL_AUDIOCONVERT_H -#define AVUTIL_AUDIOCONVERT_H +#include "version.h" -#include <stdint.h> - -/** - * @file - * audio conversion routines - */ - -/** - * @addtogroup lavu_audio - * @{ - */ - -/** - * @defgroup channel_masks Audio channel masks - * @{ - */ -#define AV_CH_FRONT_LEFT 0x00000001 -#define AV_CH_FRONT_RIGHT 0x00000002 -#define AV_CH_FRONT_CENTER 0x00000004 -#define AV_CH_LOW_FREQUENCY 0x00000008 -#define AV_CH_BACK_LEFT 0x00000010 -#define AV_CH_BACK_RIGHT 0x00000020 -#define AV_CH_FRONT_LEFT_OF_CENTER 0x00000040 -#define AV_CH_FRONT_RIGHT_OF_CENTER 0x00000080 -#define AV_CH_BACK_CENTER 0x00000100 -#define AV_CH_SIDE_LEFT 0x00000200 -#define AV_CH_SIDE_RIGHT 0x00000400 -#define AV_CH_TOP_CENTER 0x00000800 -#define AV_CH_TOP_FRONT_LEFT 0x00001000 -#define AV_CH_TOP_FRONT_CENTER 0x00002000 -#define AV_CH_TOP_FRONT_RIGHT 0x00004000 -#define AV_CH_TOP_BACK_LEFT 0x00008000 -#define AV_CH_TOP_BACK_CENTER 0x00010000 -#define AV_CH_TOP_BACK_RIGHT 0x00020000 -#define AV_CH_STEREO_LEFT 0x20000000 ///< Stereo downmix. -#define AV_CH_STEREO_RIGHT 0x40000000 ///< See AV_CH_STEREO_LEFT. -#define AV_CH_WIDE_LEFT 0x0000000080000000ULL -#define AV_CH_WIDE_RIGHT 0x0000000100000000ULL -#define AV_CH_SURROUND_DIRECT_LEFT 0x0000000200000000ULL -#define AV_CH_SURROUND_DIRECT_RIGHT 0x0000000400000000ULL -#define AV_CH_LOW_FREQUENCY_2 0x0000000800000000ULL - -/** Channel mask value used for AVCodecContext.request_channel_layout - to indicate that the user requests the channel order of the decoder output - to be the native codec channel order. */ -#define AV_CH_LAYOUT_NATIVE 0x8000000000000000ULL - -/** - * @} - * @defgroup channel_mask_c Audio channel convenience macros - * @{ - * */ -#define AV_CH_LAYOUT_MONO (AV_CH_FRONT_CENTER) -#define AV_CH_LAYOUT_STEREO (AV_CH_FRONT_LEFT|AV_CH_FRONT_RIGHT) -#define AV_CH_LAYOUT_2POINT1 (AV_CH_LAYOUT_STEREO|AV_CH_LOW_FREQUENCY) -#define AV_CH_LAYOUT_2_1 (AV_CH_LAYOUT_STEREO|AV_CH_BACK_CENTER) -#define AV_CH_LAYOUT_SURROUND (AV_CH_LAYOUT_STEREO|AV_CH_FRONT_CENTER) -#define AV_CH_LAYOUT_3POINT1 (AV_CH_LAYOUT_SURROUND|AV_CH_LOW_FREQUENCY) -#define AV_CH_LAYOUT_4POINT0 (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_CENTER) -#define AV_CH_LAYOUT_4POINT1 (AV_CH_LAYOUT_4POINT0|AV_CH_LOW_FREQUENCY) -#define AV_CH_LAYOUT_2_2 (AV_CH_LAYOUT_STEREO|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT) -#define AV_CH_LAYOUT_QUAD (AV_CH_LAYOUT_STEREO|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT) -#define AV_CH_LAYOUT_5POINT0 (AV_CH_LAYOUT_SURROUND|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT) -#define AV_CH_LAYOUT_5POINT1 (AV_CH_LAYOUT_5POINT0|AV_CH_LOW_FREQUENCY) -#define AV_CH_LAYOUT_5POINT0_BACK (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT) -#define AV_CH_LAYOUT_5POINT1_BACK (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_LOW_FREQUENCY) -#define AV_CH_LAYOUT_6POINT0 (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_CENTER) -#define AV_CH_LAYOUT_6POINT0_FRONT (AV_CH_LAYOUT_2_2|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER) -#define AV_CH_LAYOUT_HEXAGONAL (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_BACK_CENTER) -#define AV_CH_LAYOUT_6POINT1 (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_CENTER) -#define AV_CH_LAYOUT_6POINT1_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_BACK_CENTER) -#define AV_CH_LAYOUT_6POINT1_FRONT (AV_CH_LAYOUT_6POINT0_FRONT|AV_CH_LOW_FREQUENCY) -#define AV_CH_LAYOUT_7POINT0 (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT) -#define AV_CH_LAYOUT_7POINT0_FRONT (AV_CH_LAYOUT_5POINT0|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER) -#define AV_CH_LAYOUT_7POINT1 (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT) -#define AV_CH_LAYOUT_7POINT1_WIDE (AV_CH_LAYOUT_5POINT1|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER) -#define AV_CH_LAYOUT_7POINT1_WIDE_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER) -#define AV_CH_LAYOUT_OCTAGONAL (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_CENTER|AV_CH_BACK_RIGHT) -#define AV_CH_LAYOUT_STEREO_DOWNMIX (AV_CH_STEREO_LEFT|AV_CH_STEREO_RIGHT) - -enum AVMatrixEncoding { - AV_MATRIX_ENCODING_NONE, - AV_MATRIX_ENCODING_DOLBY, - AV_MATRIX_ENCODING_DPLII, - AV_MATRIX_ENCODING_NB -}; - -/** - * @} - */ - -/** - * Return a channel layout id that matches name, or 0 if no match is found. - * - * name can be one or several of the following notations, - * separated by '+' or '|': - * - the name of an usual channel layout (mono, stereo, 4.0, quad, 5.0, - * 5.0(side), 5.1, 5.1(side), 7.1, 7.1(wide), downmix); - * - the name of a single channel (FL, FR, FC, LFE, BL, BR, FLC, FRC, BC, - * SL, SR, TC, TFL, TFC, TFR, TBL, TBC, TBR, DL, DR); - * - a number of channels, in decimal, optionally followed by 'c', yielding - * the default channel layout for that number of channels (@see - * av_get_default_channel_layout); - * - a channel layout mask, in hexadecimal starting with "0x" (see the - * AV_CH_* macros). - * - * Example: "stereo+FC" = "2+FC" = "2c+1c" = "0x7" - */ -uint64_t av_get_channel_layout(const char *name); - -/** - * Return a description of a channel layout. - * If nb_channels is <= 0, it is guessed from the channel_layout. - * - * @param buf put here the string containing the channel layout - * @param buf_size size in bytes of the buffer - */ -void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, uint64_t channel_layout); - -struct AVBPrint; -/** - * Append a description of a channel layout to a bprint buffer. - */ -void av_bprint_channel_layout(struct AVBPrint *bp, int nb_channels, uint64_t channel_layout); - -/** - * Return the number of channels in the channel layout. - */ -int av_get_channel_layout_nb_channels(uint64_t channel_layout); - -/** - * Return default channel layout for a given number of channels. - */ -int64_t av_get_default_channel_layout(int nb_channels); - -/** - * Get the index of a channel in channel_layout. - * - * @param channel a channel layout describing exactly one channel which must be - * present in channel_layout. - * - * @return index of channel in channel_layout on success, a negative AVERROR - * on error. - */ -int av_get_channel_layout_channel_index(uint64_t channel_layout, - uint64_t channel); - -/** - * Get the channel with the given index in channel_layout. - */ -uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index); - -/** - * Get the name of a given channel. - * - * @return channel name on success, NULL on error. - */ -const char *av_get_channel_name(uint64_t channel); - -/** - * Get the description of a given channel. - * - * @param channel a channel layout with a single channel - * @return channel description on success, NULL on error - */ -const char *av_get_channel_description(uint64_t channel); - -/** - * Get the value and name of a standard channel layout. - * - * @param[in] index index in an internal list, starting at 0 - * @param[out] layout channel layout mask - * @param[out] name name of the layout - * @return 0 if the layout exists, - * <0 if index is beyond the limits - */ -int av_get_standard_channel_layout(unsigned index, uint64_t *layout, - const char **name); - -/** - * @} - */ - -#endif /* AVUTIL_AUDIOCONVERT_H */ +#if FF_API_AUDIOCONVERT +#include "channel_layout.h" +#endif diff --git a/libavutil/audioconvert.c b/libavutil/channel_layout.c index caab5e6..ef6bad7 100644 --- a/libavutil/audioconvert.c +++ b/libavutil/channel_layout.c @@ -20,12 +20,12 @@ /** * @file - * audio conversion routines + * audio channel layout utility functions */ #include "avstring.h" #include "avutil.h" -#include "audioconvert.h" +#include "channel_layout.h" #include "bprint.h" #include "common.h" diff --git a/libavutil/channel_layout.h b/libavutil/channel_layout.h new file mode 100644 index 0000000..e1a6d28 --- a/dev/null +++ b/libavutil/channel_layout.h @@ -0,0 +1,208 @@ +/* + * Copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at> + * Copyright (c) 2008 Peter Ross + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef AVUTIL_CHANNEL_LAYOUT_H +#define AVUTIL_CHANNEL_LAYOUT_H + +#include <stdint.h> + +/** + * @file + * audio channel layout utility functions + */ + +/** + * @addtogroup lavu_audio + * @{ + */ + +/** + * @defgroup channel_masks Audio channel masks + * @{ + */ +#define AV_CH_FRONT_LEFT 0x00000001 +#define AV_CH_FRONT_RIGHT 0x00000002 +#define AV_CH_FRONT_CENTER 0x00000004 +#define AV_CH_LOW_FREQUENCY 0x00000008 +#define AV_CH_BACK_LEFT 0x00000010 +#define AV_CH_BACK_RIGHT 0x00000020 +#define AV_CH_FRONT_LEFT_OF_CENTER 0x00000040 +#define AV_CH_FRONT_RIGHT_OF_CENTER 0x00000080 +#define AV_CH_BACK_CENTER 0x00000100 +#define AV_CH_SIDE_LEFT 0x00000200 +#define AV_CH_SIDE_RIGHT 0x00000400 +#define AV_CH_TOP_CENTER 0x00000800 +#define AV_CH_TOP_FRONT_LEFT 0x00001000 +#define AV_CH_TOP_FRONT_CENTER 0x00002000 +#define AV_CH_TOP_FRONT_RIGHT 0x00004000 +#define AV_CH_TOP_BACK_LEFT 0x00008000 +#define AV_CH_TOP_BACK_CENTER 0x00010000 +#define AV_CH_TOP_BACK_RIGHT 0x00020000 +#define AV_CH_STEREO_LEFT 0x20000000 ///< Stereo downmix. +#define AV_CH_STEREO_RIGHT 0x40000000 ///< See AV_CH_STEREO_LEFT. +#define AV_CH_WIDE_LEFT 0x0000000080000000ULL +#define AV_CH_WIDE_RIGHT 0x0000000100000000ULL +#define AV_CH_SURROUND_DIRECT_LEFT 0x0000000200000000ULL +#define AV_CH_SURROUND_DIRECT_RIGHT 0x0000000400000000ULL +#define AV_CH_LOW_FREQUENCY_2 0x0000000800000000ULL + +/** Channel mask value used for AVCodecContext.request_channel_layout + to indicate that the user requests the channel order of the decoder output + to be the native codec channel order. */ +#define AV_CH_LAYOUT_NATIVE 0x8000000000000000ULL + +/** + * @} + * @defgroup channel_mask_c Audio channel convenience macros + * @{ + * */ +#define AV_CH_LAYOUT_MONO (AV_CH_FRONT_CENTER) +#define AV_CH_LAYOUT_STEREO (AV_CH_FRONT_LEFT|AV_CH_FRONT_RIGHT) +#define AV_CH_LAYOUT_2POINT1 (AV_CH_LAYOUT_STEREO|AV_CH_LOW_FREQUENCY) +#define AV_CH_LAYOUT_2_1 (AV_CH_LAYOUT_STEREO|AV_CH_BACK_CENTER) +#define AV_CH_LAYOUT_SURROUND (AV_CH_LAYOUT_STEREO|AV_CH_FRONT_CENTER) +#define AV_CH_LAYOUT_3POINT1 (AV_CH_LAYOUT_SURROUND|AV_CH_LOW_FREQUENCY) +#define AV_CH_LAYOUT_4POINT0 (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_CENTER) +#define AV_CH_LAYOUT_4POINT1 (AV_CH_LAYOUT_4POINT0|AV_CH_LOW_FREQUENCY) +#define AV_CH_LAYOUT_2_2 (AV_CH_LAYOUT_STEREO|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT) +#define AV_CH_LAYOUT_QUAD (AV_CH_LAYOUT_STEREO|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT) +#define AV_CH_LAYOUT_5POINT0 (AV_CH_LAYOUT_SURROUND|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT) +#define AV_CH_LAYOUT_5POINT1 (AV_CH_LAYOUT_5POINT0|AV_CH_LOW_FREQUENCY) +#define AV_CH_LAYOUT_5POINT0_BACK (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT) +#define AV_CH_LAYOUT_5POINT1_BACK (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_LOW_FREQUENCY) +#define AV_CH_LAYOUT_6POINT0 (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_CENTER) +#define AV_CH_LAYOUT_6POINT0_FRONT (AV_CH_LAYOUT_2_2|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER) +#define AV_CH_LAYOUT_HEXAGONAL (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_BACK_CENTER) +#define AV_CH_LAYOUT_6POINT1 (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_CENTER) +#define AV_CH_LAYOUT_6POINT1_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_BACK_CENTER) +#define AV_CH_LAYOUT_6POINT1_FRONT (AV_CH_LAYOUT_6POINT0_FRONT|AV_CH_LOW_FREQUENCY) +#define AV_CH_LAYOUT_7POINT0 (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT) +#define AV_CH_LAYOUT_7POINT0_FRONT (AV_CH_LAYOUT_5POINT0|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER) +#define AV_CH_LAYOUT_7POINT1 (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT) +#define AV_CH_LAYOUT_7POINT1_WIDE (AV_CH_LAYOUT_5POINT1|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER) +#define AV_CH_LAYOUT_7POINT1_WIDE_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER) +#define AV_CH_LAYOUT_OCTAGONAL (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_CENTER|AV_CH_BACK_RIGHT) +#define AV_CH_LAYOUT_STEREO_DOWNMIX (AV_CH_STEREO_LEFT|AV_CH_STEREO_RIGHT) + +enum AVMatrixEncoding { + AV_MATRIX_ENCODING_NONE, + AV_MATRIX_ENCODING_DOLBY, + AV_MATRIX_ENCODING_DPLII, + AV_MATRIX_ENCODING_NB +}; + +/** + * @} + */ + +/** + * Return a channel layout id that matches name, or 0 if no match is found. + * + * name can be one or several of the following notations, + * separated by '+' or '|': + * - the name of an usual channel layout (mono, stereo, 4.0, quad, 5.0, + * 5.0(side), 5.1, 5.1(side), 7.1, 7.1(wide), downmix); + * - the name of a single channel (FL, FR, FC, LFE, BL, BR, FLC, FRC, BC, + * SL, SR, TC, TFL, TFC, TFR, TBL, TBC, TBR, DL, DR); + * - a number of channels, in decimal, optionally followed by 'c', yielding + * the default channel layout for that number of channels (@see + * av_get_default_channel_layout); + * - a channel layout mask, in hexadecimal starting with "0x" (see the + * AV_CH_* macros). + * + * Example: "stereo+FC" = "2+FC" = "2c+1c" = "0x7" + */ +uint64_t av_get_channel_layout(const char *name); + +/** + * Return a description of a channel layout. + * If nb_channels is <= 0, it is guessed from the channel_layout. + * + * @param buf put here the string containing the channel layout + * @param buf_size size in bytes of the buffer + */ +void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, uint64_t channel_layout); + +struct AVBPrint; +/** + * Append a description of a channel layout to a bprint buffer. + */ +void av_bprint_channel_layout(struct AVBPrint *bp, int nb_channels, uint64_t channel_layout); + +/** + * Return the number of channels in the channel layout. + */ +int av_get_channel_layout_nb_channels(uint64_t channel_layout); + +/** + * Return default channel layout for a given number of channels. + */ +int64_t av_get_default_channel_layout(int nb_channels); + +/** + * Get the index of a channel in channel_layout. + * + * @param channel a channel layout describing exactly one channel which must be + * present in channel_layout. + * + * @return index of channel in channel_layout on success, a negative AVERROR + * on error. + */ +int av_get_channel_layout_channel_index(uint64_t channel_layout, + uint64_t channel); + +/** + * Get the channel with the given index in channel_layout. + */ +uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index); + +/** + * Get the name of a given channel. + * + * @return channel name on success, NULL on error. + */ +const char *av_get_channel_name(uint64_t channel); + +/** + * Get the description of a given channel. + * + * @param channel a channel layout with a single channel + * @return channel description on success, NULL on error + */ +const char *av_get_channel_description(uint64_t channel); + +/** + * Get the value and name of a standard channel layout. + * + * @param[in] index index in an internal list, starting at 0 + * @param[out] layout channel layout mask + * @param[out] name name of the layout + * @return 0 if the layout exists, + * <0 if index is beyond the limits + */ +int av_get_standard_channel_layout(unsigned index, uint64_t *layout, + const char **name); + +/** + * @} + */ + +#endif /* AVUTIL_CHANNEL_LAYOUT_H */ diff --git a/libavutil/version.h b/libavutil/version.h index 55e0d11..691e8ab 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -75,7 +75,7 @@ */ #define LIBAVUTIL_VERSION_MAJOR 52 -#define LIBAVUTIL_VERSION_MINOR 5 +#define LIBAVUTIL_VERSION_MINOR 6 #define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ @@ -120,6 +120,9 @@ #ifndef FF_API_AV_REVERSE #define FF_API_AV_REVERSE (LIBAVUTIL_VERSION_MAJOR < 53) #endif +#ifndef FF_API_AUDIOCONVERT +#define FF_API_AUDIOCONVERT (LIBAVUTIL_VERSION_MAJOR < 53) +#endif /** * @} |