音を使って 2 つの Android スマートフォン間の距離を計算するのに苦労しています。
-主なアイデアは、2台の電話を同時に同期させ、モバイルAからモバイルBにメッセージを送信して、すぐにサウンドを再生していることを知らせることです。今回はモバイルAが保存することに注意してください。
-次に、モバイル B は、次の 1 秒程度の記録を開始する間、モバイル A に「OK、先に進むことができます」を送信します。
-次に、モバイル A は「OK」を取得し、1000Hz のサウンドを再生し始めます。
-モバイル B はその周波数を検出し、現在の時刻をモバイル A に送信します。
これで、距離を計算するためのすべての情報が得られました。問題は、理論上はこれで問題ないことですが、これを実装すると、方程式に多くのランダムな時間が追加されます。
主な問題は、モバイル B が良好な周波数を得た絶対的な時間を指摘できないことです。
1000ミリ秒全体を記録するのではなく、多くの「ミニ」チャンク(12〜24ミリ秒)を記録しようとしましたが、モバイルがrecorder_.startRecording()/recorder_.read()/recorder_.stop()コマンドに費やす時間が多すぎます、そして私は多くのミリ秒で周波数を逃しています(各ミリ秒は30cmに等しいので、多くのエラーを試みることはできません...)
誰が私が間違っているのか、それを行うより良い方法に私を導くのか教えてもらえますか??
主な問題は、録音デバイスが、彼が必要な周波数を録音した実際の時間を指摘できないことです.....
よろしくお願いします。
オファー。