Я пытаюсь закодировать аудиопоток в файл. Я получаю аудио буферы и использую avcodec_fill_audio_frame
создать AVFrame
и отправить его avcodec_encode_audio2
(между прочим — я использую ffmpeg muxing.c в качестве примера)
Дело в том, что аудио-буфер, который я получаю, содержит 480 сэмплов, кодек, который я использую, имеет frame_size
1152 (MP2). Результатом является то, что выходной аудиофайл является своего рода «нарезанным». Похоже, что каждый аудио кадр имеет несколько беззвучных сэмплов в конце.
Как я могу это исправить?
Спасибо!!
Вы должны заполнить AVFrame
с до frame_size
(1152 в вашем случае) образцы, прежде чем передать кадр avcodec_encode_audio2
,
Похоже, ваш кадр слишком маленький. Как вы это настраиваете? Можете показать какой-нибудь код?
Других решений пока нет …