我有一个用于 OpenSL 音频播放器的缓冲区队列接口 (SLAndroidSimpleBufferQueueItf)。我用接口注册了我的回调。在我的回调中,我正在对要填充到循环缓冲区中的数据进行有条件的等待。
我的问题是我不知道如何获得对我的回调的初始调用。
我通过在创建接口后立即将硬编码数据传递给 Enqueue 来强制它。这具有播放我的虚拟数据然后进入我的回调的效果,它将等待循环缓冲区上的数据。
这使一切都可以正常工作。我只是不想传递这个虚拟数据来第一次触发回调。
我错过了什么?
我有一个用于 OpenSL 音频播放器的缓冲区队列接口 (SLAndroidSimpleBufferQueueItf)。我用接口注册了我的回调。在我的回调中,我正在对要填充到循环缓冲区中的数据进行有条件的等待。
我的问题是我不知道如何获得对我的回调的初始调用。
我通过在创建接口后立即将硬编码数据传递给 Enqueue 来强制它。这具有播放我的虚拟数据然后进入我的回调的效果,它将等待循环缓冲区上的数据。
这使一切都可以正常工作。我只是不想传递这个虚拟数据来第一次触发回调。
我错过了什么?