diff options
author | Rodger Combs <rodger.combs@gmail.com> | 2016-03-23 16:29:50 -0500 |
---|---|---|
committer | Rodger Combs <rodger.combs@gmail.com> | 2016-04-02 03:03:13 -0500 |
commit | 7524b678175e69504c9360c884cfe9116cb8bb11 (patch) | |
tree | 5b102d59e1b1016054d7b9f5e9b750ee158ef942 /libavcodec/audiotoolboxenc.c | |
parent | d38fe9f4930cba9379c1309c2433420a360f40ab (diff) | |
download | ffmpeg-7524b678175e69504c9360c884cfe9116cb8bb11.tar.gz |
lavc/audiotoolboxenc: remove unneeded packet metadata
This isn't necessary here, and for some reason broke only multichannel
AAC encoding when a channel layout tag was set.
Diffstat (limited to 'libavcodec/audiotoolboxenc.c')
-rw-r--r-- | libavcodec/audiotoolboxenc.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/libavcodec/audiotoolboxenc.c b/libavcodec/audiotoolboxenc.c index c4d36f56d1..4797b2aae9 100644 --- a/libavcodec/audiotoolboxenc.c +++ b/libavcodec/audiotoolboxenc.c @@ -38,7 +38,6 @@ typedef struct ATDecodeContext { int quality; AudioConverterRef converter; - AudioStreamPacketDescription pkt_desc; AVFrame in_frame; AVFrame new_in_frame; @@ -312,10 +311,6 @@ static OSStatus ffat_encode_callback(AudioConverterRef converter, UInt32 *nb_pac if (at->eof) { *nb_packets = 0; - if (packets) { - *packets = &at->pkt_desc; - at->pkt_desc.mDataByteSize = 0; - } return 0; } @@ -328,18 +323,13 @@ static OSStatus ffat_encode_callback(AudioConverterRef converter, UInt32 *nb_pac } data->mNumberBuffers = 1; - data->mBuffers[0].mNumberChannels = 0; + data->mBuffers[0].mNumberChannels = avctx->channels; data->mBuffers[0].mDataByteSize = at->in_frame.nb_samples * av_get_bytes_per_sample(avctx->sample_fmt) * avctx->channels; data->mBuffers[0].mData = at->in_frame.data[0]; - *nb_packets = (at->in_frame.nb_samples + (at->frame_size - 1)) / at->frame_size; - - if (packets) { - *packets = &at->pkt_desc; - at->pkt_desc.mDataByteSize = data->mBuffers[0].mDataByteSize; - at->pkt_desc.mVariableFramesInPacket = at->in_frame.nb_samples; - } + if (*nb_packets > at->in_frame.nb_samples) + *nb_packets = at->in_frame.nb_samples; return 0; } |