AudioQueue, воспроизведение звука при срабатывании обратного вызова,

В моем приложении я получаю буфер от Socket, и мне нужно его воспроизвести, приложение будет получать буфер примерно каждые 50 мс,

Я делаю следующее:

1 - Определите аудиоформат, как указано ниже,

FillOutASBDForLPCM (sRecordFormat,
                    16000,
                    1,
                    16,
                    16,
                    false,
                    false
                    );

2 - Создать и выделить буфер AudioQueue

3 - буфер постановки в очередь

4 - Запустить очередь,

Теперь я понимаю, что он должен автоматически запускать обратный вызов, когда и когда он воспроизводил существующий буфер, а затем запрашивать новый буфер, но в моем случае он не запускает обратный вызов автоматически, поскольку и когда я получаю буфер, я вызываю обратный вызов явно , это правильный метод


person Amitg2k12    schedule 08.06.2011    source источник


Ответы (1)


Проблема заключалась в том, что я запускал AudioQueue из одного промежуточного потока, и после отладки я узнал, что он должен иметь поток основного приложения. Это причина, по которой обратный вызов не был вызван самим собой.

person Amitg2k12    schedule 10.06.2011