Also, use the new function in the AC-3 encoder.tags/n0.11
@@ -12,6 +12,9 @@ libavutil: 2011-04-18 | |||||
API changes, most recent first: | API changes, most recent first: | ||||
2012-xx-xx - xxxxxxx - lavu 51.26.0 - audioconvert.h | |||||
Add av_get_default_channel_layout() | |||||
2012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h | 2012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h | ||||
Add av_set_cpu_flags_mask(). | Add av_set_cpu_flags_mask(). | ||||
@@ -2074,7 +2074,7 @@ static av_cold int set_channel_info(AC3EncodeContext *s, int channels, | |||||
return AVERROR(EINVAL); | return AVERROR(EINVAL); | ||||
ch_layout = *channel_layout; | ch_layout = *channel_layout; | ||||
if (!ch_layout) | if (!ch_layout) | ||||
ch_layout = avcodec_guess_channel_layout(channels, CODEC_ID_AC3, NULL); | |||||
ch_layout = av_get_default_channel_layout(channels); | |||||
s->lfe_on = !!(ch_layout & AV_CH_LOW_FREQUENCY); | s->lfe_on = !!(ch_layout & AV_CH_LOW_FREQUENCY); | ||||
s->channels = channels; | s->channels = channels; | ||||
@@ -153,3 +153,18 @@ int av_get_channel_layout_nb_channels(uint64_t channel_layout) | |||||
x &= x-1; // unset lowest set bit | x &= x-1; // unset lowest set bit | ||||
return count; | return count; | ||||
} | } | ||||
uint64_t av_get_default_channel_layout(int nb_channels) | |||||
{ | |||||
switch(nb_channels) { | |||||
case 1: return AV_CH_LAYOUT_MONO; | |||||
case 2: return AV_CH_LAYOUT_STEREO; | |||||
case 3: return AV_CH_LAYOUT_SURROUND; | |||||
case 4: return AV_CH_LAYOUT_QUAD; | |||||
case 5: return AV_CH_LAYOUT_5POINT0; | |||||
case 6: return AV_CH_LAYOUT_5POINT1; | |||||
case 7: return AV_CH_LAYOUT_6POINT1; | |||||
case 8: return AV_CH_LAYOUT_7POINT1; | |||||
default: return 0; | |||||
} | |||||
} |
@@ -124,6 +124,11 @@ void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, uint | |||||
*/ | */ | ||||
int av_get_channel_layout_nb_channels(uint64_t channel_layout); | int av_get_channel_layout_nb_channels(uint64_t channel_layout); | ||||
/** | |||||
* Return default channel layout for a given number of channels. | |||||
*/ | |||||
uint64_t av_get_default_channel_layout(int nb_channels); | |||||
/** | /** | ||||
* @} | * @} | ||||
*/ | */ | ||||
@@ -152,7 +152,7 @@ | |||||
*/ | */ | ||||
#define LIBAVUTIL_VERSION_MAJOR 51 | #define LIBAVUTIL_VERSION_MAJOR 51 | ||||
#define LIBAVUTIL_VERSION_MINOR 25 | |||||
#define LIBAVUTIL_VERSION_MINOR 26 | |||||
#define LIBAVUTIL_VERSION_MICRO 0 | #define LIBAVUTIL_VERSION_MICRO 0 | ||||
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | ||||