ffmpeg — заполнить аудио кадр сэмплом

Я пытаюсь закодировать аудиопоток в файл. Я получаю аудио буферы и использую avcodec_fill_audio_frame создать AVFrame и отправить его avcodec_encode_audio2 (между прочим — я использую ffmpeg muxing.c в качестве примера)

Дело в том, что аудио-буфер, который я получаю, содержит 480 сэмплов, кодек, который я использую, имеет frame_size 1152 (MP2). Результатом является то, что выходной аудиофайл является своего рода «нарезанным». Похоже, что каждый аудио кадр имеет несколько беззвучных сэмплов в конце.

Как я могу это исправить?
Спасибо!!

0

Решение

Вы должны заполнить AVFrame с до frame_size (1152 в вашем случае) образцы, прежде чем передать кадр avcodec_encode_audio2,

Похоже, ваш кадр слишком маленький. Как вы это настраиваете? Можете показать какой-нибудь код?

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]