入力シーケンスに基づいてオーディオストリーム(PCM)を生成するアプリケーションを開発しています。このサウンド(オーディオストリーム)は最初から最後まで再生されます。生成されたサウンドが再生されるときに、入力シーケンス内の位置に関する通知を受け取る必要があります。
例:
入力を「ABC」とすると、生成される音は文字Aで3秒、文字Bで2秒、文字Cで2秒に相当します--->合計7秒(3 + 2 + 2)。通知は、3秒後に「A送信済み」に関するイベントが送信され、2秒後に「B送信済み」に関するイベントが送信され、さらに2秒後に「C送信済み」イベントが送信されることを意味します。
これを行う古典的な方法はありますか、それともこれは各問題に固有ですか?(私はportaudioフレームワークでC / C ++を使用しています)
今のところ、これを行う唯一の方法は、プレーヤーがストリームに進むときに、各文字のオーディオデータをオンザフライで生成することです。
注:スレッド間およびスレッド間通信で非同期イベントを送信する方法を知っています。これを行う古典的な方法があるかどうかだけに興味があります。
ありがとう