void OpenALRenderer::queueFrame(const AudioFrame& frame) { assert(frame.getFrameData()); alBufferData(m_AudioBuffers[m_CurrentBuffer], m_AudioFormat, frame.getFrameData(), frame.getDataSize(), m_Frequency); alSourceQueueBuffers(m_AudioSource, 1, &m_AudioBuffers[m_CurrentBuffer]); m_PtsQueue.push_back(frame.getPts()); play(); ++m_CurrentBuffer; m_CurrentBuffer %= NUM_BUFFERS; assert(alGetError() == AL_NO_ERROR); }