5

AudioRecord classがバッファの読み取りを行ったときのタイムスタンプを取得する必要があります。ミリ秒単位で時間を追跡する必要があります。バッファを読み取った後にタイムスタンプ取得を追加しようとしましたが、次のバッファを受信すると、取得にかかる時間が大きく変動する可能性があります。オーディオが録音された時間をコールバックから受け取る方法はありますか?

int bufferReadResult = audioRecord.read(buffer, 0,blockSize);
            long startTime = System.nanoTime()/ 1000; 

私が現在試みていることです。

4

1 に答える 1

0

オーディオは、ローカルオシレータによってリアルタイムでサンプリングされます。チャンクは、オペレーティング システムが空き時間に送信できるようになるとすぐに送信されます。よくわかりませんが、取得した信号の絶対時刻を取得できないと思います。できることは、録音されたオーディオ信号の 2 つのイベント間のサンプルをカウントし、サンプルをカウントしてサンプル周波数を知ることで、正確な経過時間を取得することです。お役に立てれば。

于 2013-10-31T14:25:59.973 に答える