前提・実現したいこと
python3.6を使用して、
以下に示すようなバイナリデータを4バイトずつリードして数値に変換したいです。
audio_data = b'\x00\xC0\x18\xf9\x00\x80\x1b\xf9\x00@\x1a\xf9\x00\0x1a' ........
マイクで取得したデータをwavファイルに保存せずに直接FFTなどの演算を行うためです。
発生している問題・エラーメッセージ
毎回データ長が異なるaudio_data に対して繰り返し文で
バイナリデータを数値に変換したいのですが、
プログラミング経験が浅く、アイディアが思いつきません。
該当のソースコード/試したこと
structモジュールを使用し、フォーマットと読み出し位置を指定することで
4バイトずつ数値に変換する所まではできました。
fmt='<I'
struct.unpack_from(fmt,audio_data ,0)[0]
struct.unpack_from(fmt,audio_data ,4)[0]
struct.unpack_from(fmt,audio_data ,8)[0]
補足情報(FW/ツールのバージョンなど)
参考WEBサイト:http://sandmark.hateblo.jp/entry/2018/09/27/210412
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/20 10:26 編集