Linux
如何將任何內容通過管道傳輸到音頻輸出?
如何將任何數據通過管道傳輸到音頻輸出?例如,我想听一個文件——一個檔案、一個驅動器備份、一個程序。或者我想听我的硬碟——我隱約記得大約 7 年前讀過一些關於這可能的東西,但現在找不到任何東西。
所以,文件、磁碟讀取,甚至網路連接——我希望能夠聽到任何東西。我知道 Linux 絕對可以。我該怎麼做?使用 Lubuntu 20.04
我發現管道的東西
aplay
效果很好。
journalctl | aplay
聽起來並不漂亮,但效果卻出奇的好。下面是一個例子
aplay(1)
:aplay -c 1 -t raw -r 22050 -f mu_law foobar will play the raw file "foobar" as a 22050-Hz, mono, 8-bit, Mu-Law .au file.
它可以作為
alsa-utils
debian/ubuntu 軟體包的一部分找到。這是一個我喜歡的 1-liner,它將一個小型 C 程序回顯到 gcc 中,並執行編譯後的版本,將其通過管道傳輸到 aplay。結果是一首令人驚訝的好聽的 15 分鐘重複歌曲。
echo "g(i,x,t,o){return((3&x&(i*((3&i>>16?\"BY}6YB6$\":\"Qj}6jQ6%\")[t%8]+51)>>o))<<4);};main(i,n,s){for(i=0;;i++)putchar(g(i,1,n=i>>14,12)+g(i,s=i>>17,n^i>>13,10)+g(i,s/3,n+((i>>11)%3),10)+g(i,s/5,8+n-((i>>10)%3),9));}"|gcc -xc -&&./a.out|aplay