On Sun, Mar 27, 2016 at 1:52 PM, <[email protected]> wrote:
> From: Crossle Song <[email protected]>
>
> Fix error libavcodec/audiotoolboxenc.c use of undeclared
> 'kAudioCodecPropertyBitRateControlMode' on iOS
>
> AudioToolbox now support iOS
> ---
> libavcodec/audiotoolboxenc.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/libavcodec/audiotoolboxenc.c b/libavcodec/audiotoolboxenc.c
> index c4d36f5..b7874e5 100644
> --- a/libavcodec/audiotoolboxenc.c
> +++ b/libavcodec/audiotoolboxenc.c
> @@ -204,6 +204,7 @@ static av_cold int ffat_init_encoder(AVCodecContext
> *avctx)
> size, &avctx->bits_per_raw_sample);
> }
>
> +#if !TARGET_OS_IPHONE
> if (at->mode == -1)
> at->mode = (avctx->flags & AV_CODEC_FLAG_QSCALE) ?
> kAudioCodecBitRateControlMode_Variable :
> @@ -222,7 +223,9 @@ static av_cold int ffat_init_encoder(AVCodecContext
> *avctx)
> q = 127 - q * 9;
> AudioConverterSetProperty(at->converter,
> kAudioCodecPropertySoundQualityForVBR,
> size, &q);
> - } else if (avctx->bit_rate > 0) {
> + }
> +#endif
> + if (avctx->bit_rate > 0) {
This changes the logic.
> UInt32 rate = avctx->bit_rate;
> AudioConverterSetProperty(at->converter,
> kAudioConverterEncodeBitRate,
> size, &rate);
> @@ -425,12 +428,14 @@ static const AVProfile aac_profiles[] = {
>
> #define AE AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
> static const AVOption options[] = {
> +#if !TARGET_OS_IPHONE
> {"aac_at_mode", "ratecontrol mode", offsetof(ATDecodeContext, mode),
> AV_OPT_TYPE_INT, {.i64 = -1}, -1, kAudioCodecBitRateControlMode_Variable, AE,
> "mode"},
> {"auto", "VBR if global quality is given; CBR otherwise", 0,
> AV_OPT_TYPE_CONST, {.i64 = -1}, INT_MIN, INT_MAX, AE, "mode"},
> {"cbr", "constant bitrate", 0, AV_OPT_TYPE_CONST, {.i64 =
> kAudioCodecBitRateControlMode_Constant}, INT_MIN, INT_MAX, AE, "mode"},
> {"abr", "long-term average bitrate", 0, AV_OPT_TYPE_CONST, {.i64 =
> kAudioCodecBitRateControlMode_LongTermAverage}, INT_MIN, INT_MAX, AE, "mode"},
> {"cvbr", "constrained variable bitrate", 0, AV_OPT_TYPE_CONST, {.i64
> = kAudioCodecBitRateControlMode_VariableConstrained}, INT_MIN, INT_MAX, AE,
> "mode"},
> {"vbr" , "variable bitrate", 0, AV_OPT_TYPE_CONST, {.i64 =
> kAudioCodecBitRateControlMode_Variable}, INT_MIN, INT_MAX, AE, "mode"},
> +#endif
> {"aac_at_quality", "quality vs speed control", offsetof(ATDecodeContext,
> quality), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 2, AE},
> { NULL },
> };
> --
> 2.7.0
>
> _______________________________________________
> ffmpeg-devel mailing list
> [email protected]
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
_______________________________________________
ffmpeg-devel mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel