Я использую FFMPEG для загрузки аудио-видео из файла. Он работает с видео, но я не знаю, как воспроизводить аудиосэмплы.
Вот мой код, чтобы получить аудио образцы:
m_AdotimeBase = (int64_t(m_Adocdec_ctx->time_base.num) * AV_TIME_BASE) / int64_t(m_Adocdec_ctx->time_base.den);
if(!m_Adofmt_ctx)
{
//AfxMessageBox(L"m_timeBase");
return FALSE ;
}
int64_t seekAdoTarget = int64_t(m_currFrame) * m_AdotimeBase;if(av_seek_frame(m_Adofmt_ctx, -1, seekAdoTarget, AVSEEK_FLAG_ANY) < 0)
{
/*CString st;
st.Format(L"%d",m_currFrame);
AfxMessageBox(L"av_seek_frame "+st);*/
m_currFrame = m_totalFrames-1;
return FALSE ;
}
if ((ret = av_read_frame(m_Adofmt_ctx, &packet)) < 0)
return FALSE;
if (packet.stream_index == 0)
{
ret = avcodec_decode_audio4(m_Adocdec_ctx, &in_AdeoFrame, &got_frame, &packet);
if (ret < 0)
{
av_free_packet(&packet);
return FALSE;
}
}
Моя проблема в том, что я хочу прослушать этот образец, используя OPENAL.
Буду признателен за любые учебники или ссылки на эту тему.
Задача ещё не решена.
Других решений пока нет …