オーディオファイルのピークをどのように検出しますか?

オーディオファイルのピークをどのように検出しますか?

数分間のWaveファイルがあり、半規則的な間隔で短いクリックがある場合は、各クリックのミリ秒タイムスタンプをどのように取得できますか?頑張る1秒タイマーの精度を確認する。シェル、Python、Ruby、またはその他の標準* nixツールを使用するのが最善です。

ベストアンサー1

soxオプションかもしれません。

次のように呼び出します。

sox sound.wav sound.dat

textual representation of the sample dataファイルに書き込みますsound.dat。オプションに応じて、次の内容を含むファイルを入手できます。開始以来の時間内部に列1そして正規化されたサンプルサイズ存在する2列、例えば:

; Sample Rate 44100
; Channels 1
               0     -0.026428223 
   2.2675737e-05     -0.022186279 
   4.5351474e-05     -0.022186279 
   6.8027211e-05     -0.022827148 
   9.0702948e-05     -0.022491455 
   0.00011337868     -0.025756836 
   0.00013605442     -0.021850586 
   0.00015873016     -0.026428223 
    0.0001814059      -0.02545166 
   0.00020408163     -0.023162842 
   0.00022675737      -0.02545166 
   0.00024943311     -0.018249512 
   0.00027210884     -0.018249512 
   0.00029478458     -0.019226074 
   0.00031746032      -0.01663208 
   0.00034013605     -0.013702393 
   0.00036281179     -0.014984131 
   0.00038548753     -0.015319824 

若干のawkタイムスタンプが表示されている様子が現れます。

$ awk '$2 > 0.6 { print }' < sound.dat
; Sample Rate 44100
; Channels 1
       1.1002721       0.64196777 
       1.1004762       0.65371704 

man soxそしてman soxformatより多くの情報が提供されるべきです。

おすすめ記事