cat /dev/urandom
可能なすべての「値」のランダムなシーケンスを生成します。cat /dev/urandom | padsp tee /dev/audio > /dev/null
これらの「値」をオーディオデバイスに渡して、「ランダムノイズ」または「ランダムトーン」に切り替えます(参照:エンターテイメントのために/dev/snd/でランダムノイズを生成する)
しかし、どのように同じことをすることができますか?ランダムノイズ/トーンの代わりに1つを選択してください。一つ可能なすべての値から値を選択し、cat
それオーディオデバイスに無期限に送信しますか(任意の値ではなく同じ値のシーケンスを生成します)?
これにより、一貫した単一のトーンが生成されます。
相互作用
他の値を手動で試すことはできますが、仮想の「インターフェース」を使用すると、必要な値を簡単に選択/クリックできます。
- 頻度(Hz) 例: 440
- 振幅(0-1) 例えば0.8
むしろいいえオーディオを使う文書、file.wav、file.mp3、file.oggなどのbashスクリプトとデフォルトのcliアプリケーション(例cat
:file.mp3 padsp
、file.oggなど)のみが必要です。
ベストアンサー1
sin
数学(特に)を実行し、数値を標準出力に文字として書き込むすべてを試すことができます。たとえば、
awk --characters-as-bytes 'BEGIN { freq=2200; amp=0.3; for (i=0; i>=0; i++) { printf "%c", 127+ amp*(127.0*sin(2*3.14159265/44100*i*freq)); } }' | padsp tee /dev/audio > /dev/null
設定方法によってはfreq
サイレンの音のように聞こえることもあります。ユースケースによっては遊べるものかもしれません。
amp
振幅は最大1.0まで調整できます。
私はGNU awkを使用しているので--characters-as-bytes
動作します。 stdoutに書き込むときに文字がUTF-8でエンコードされることを望まない!
また、システムによってデフォルトのサンプリングレートが異なる場合、44100 を 48000 または他の数字に置き換える必要があります。