cat /dev/urandom
すべての可能な「値」のランダムシーケンスを生成します。cat /dev/urandom | padsp tee /dev/audio > /dev/null
これらの「値」をオーディオデバイスに送信し、「ランダムノイズ」または「ランダムトーン」に変換します(参照: / dev/snd /で楽しみのためにランダムノイズを生成する )しかし、どうすれば同じことができますが、ランダムなノイズ/トーンの代わりに、すべての可能な値からsingle値を選択し、オーディオデバイスにcat
thatを選択します無期限に(ランダムな値ではなく同じ値のシーケンスを作成する)?
これにより、単一の一貫したトーンが生成されます。
さまざまな値を手動で試すことができますが、必要な値を簡単に選択/ヒットできるようにするための1つの架空の「インターフェイス」は次のようになります。
私はむしろnotオーディオを使用したいfile、例えばfile.wav、file.mp3、file.oggなど。bashスクリプトとデフォルトのCLIアプリケーション(例:cat
、padsp
など)。
数学ができるものなら何でも遊んで(特にsin
)、stdoutの文字として数字を書くことができます。例えば:
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または別の番号に置き換えることをお勧めします。