diff options
author | Jiejun Zhang <zhangjiejun1992@gmail.com> | 2018-01-03 12:54:20 +0800 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2018-01-03 17:32:55 -0300 |
commit | 677701c6b319d2d3b95a27179fde6ec2a863bf72 (patch) | |
tree | 38ceedbc6c52c996056e0c95151ef302012b42bc /libavcodec/cbs.c | |
parent | 29b5f3115d9f217758bebd1d00e541aa3e739d2a (diff) | |
download | ffmpeg-677701c6b319d2d3b95a27179fde6ec2a863bf72.tar.gz |
lavc/audiotoolboxenc: fix noise in encoded audio
This fixes #6940
Although undocumented, AudioToolbox seems to require the data supplied
by the callback (i.e. ffat_encode_callback) being unchanged until the
next time the callback is called. In the old implementation, the
AVBuffer backing the frame is recycled after the frame is freed, and
somebody else (maybe the decoder) will write into the AVBuffer and
change the data. AudioToolbox then encodes some wrong data and noise
is produced. Retaining a frame reference solves this problem.
Signed-off-by: James Almer <jamrial@gmail.com>
Diffstat (limited to 'libavcodec/cbs.c')
0 files changed, 0 insertions, 0 deletions