Provided by: manpages-zh_1.6.4.0-1_all bug

命令名

       mpg123 - 播放 MPEG 1.0/2.0 Layer-1, -2, -3 音訊檔案

語法

       mpg123 [ -tscvqy01m24 ][ -b size ][ -k num ][ -n num ][ -f factor ][ -r rate ][ -g gain ][
       -a dev ][ -o s | -o h | -o l ][ -d n ][ -h n ][ -p proxy ][ -@ file ] file ... | URL ... |
       -

描述

       mpg123  從一個或多個 檔案 或者 URL 讀取MPEG-1/2音訊位元流 (如果指定 `-' 選項, 則從標準輸入
       讀取), 然後使用音訊裝置進行播放(預設), 或將解碼結果送 到標準輸出上.

選項

       mpg123 接收傳統的POSIX風格的單字母選項, 也接收GNU風格的長單詞選項. 這兩  種選項分別以  `-'
       和 "--" 開頭.

       -t, --test
              測試模式. 對音訊流進行解碼, 但不輸出.

       -s, --stdout
              將解碼結果送到標準輸出上, 而不使用音訊裝置進行播放. 如果 mpg123 不支援你的音訊硬體,
              你就可以試試這一選項, 這時, mpg123 以本機 位元組順序(host byte order)輸出16位元的立
              體聲線性PCM(脈衝編碼調製) 音訊裸資料(沒有資料頭).

       -c, --check
              對每一幀進行濾波器越界檢查, 如發生則報告之.

       -v, --verbose
              播放時顯示更多資訊, 比如顯示當前正在解碼的幀號.

       -q, --quiet
              安靜模式. 不顯示診斷資訊.

       -y, --resync
              如果輸入檔案發生錯誤,  則重新進行同步並繼續解碼. 另外, 對那些檔案 頭損壞的MPEG檔案,
              通常 mpg123 會拒絕播放並顯示 ' Illegal header', 但如果指定本選項, mpg123 會試圖從損
              壞的檔案頭中恢復並進行播放.  小心: 損壞的MPEG檔案在播放到損壞處時可能出現尖利刺耳的
              噪聲, 如果 音量過大, 可能損壞揚聲器.

       -0, --single0; -1, --single1
              只對0(左) 聲道或者1(右) 聲道進行解碼. 這兩個選項只對立體聲的MPEG 音訊流有效.

       -m, --singlemix
              將兩個聲道混音. 此選項只對MPEG Layer-3的立體聲音訊流有效, 並可比 完全立體聲解碼節省
              一些 CPU時間.

       -2, --2to1; -4, --4to1
              將輸出流的取樣率將低至標準的1/2  (22kHz) 或者1/4 (11kHz). 使用這 兩個選項可以減少一
              些CPU的負荷, 但是聲音質量會下降(至少使用11kHz 取樣率時會很難聽).

       -b size, --buffer sizesize 指定輸出緩衝區的大小, 單位為千位元組. 使用此選項通常可以避 免由頻繁的系統操
              作造成的   聲音輸出時斷時續的現象.   size  的值小於  300時就沒什麼意義了,  建議至少
              取1024(即使用1Mb的緩衝區, 可以緩衝 相當於6秒鐘的音訊資料).  size 的預設值為0,  即不
              進行輸出緩衝.

       -k num, --skip num
              跳過前 num 幀. 不指定此選項時, 預設從第1幀開始解碼.

       -n num, --frames num
              只對前 num 幀進行解碼. 不指定此選項時, 預設對整個音訊流進行解碼.

       -f factor, --scale factor
              改變縮放因子 factor 的值(預設值為32768).

       -r rate, --rate rate
              設定取樣率  rate (預設為自動設定). 使用這一選項後, mpg123 會自動 將速率轉換成不依賴
              於MPEG流速率的一個恆定位元率.  此選項應該和 --stereo 或 --mono 聯合起來使用.

       -g gain, --gain gain
              設定音訊硬體輸出增益 gain (預設為保持不變).

       -a dev, --audiodevice dev
              指定音訊裝置. 預設的音訊裝置與系統配置有關(通常是 /dev/audio 或 /dev/dsp ),  如果系
              統中有多個音訊裝置而預設的又不是你想用的那個, 就可使用本選項.

       -o s, --speaker
              將聲音匯出到主機板上的揚聲器上.

       -o h, --headphones
              將聲音匯出到耳機聯結器上.

       -o l, --lineout
              將聲音匯出到Line-Out聯結器上.

       -d n, --doublespeed nn 幀播放一幀. 這會使MPEG流的播放速度提高為正常速度的 n 倍, 從而可以產生特殊的聲
              音效果. 此選項可以和 --halfspeed 選項組合使 用, 實現類似每4幀播放3幀(譯者注: 指定-d
              4 -h 3)的效果.  如果使用 此選項, 不要指望聲音質量會很好.

       -h n, --halfspeed n
              將每幀都播放 n 遍. 這會使MPEG流的播放速度降低為正常速度的 1/n, 從而可以產生特殊的聲
              音效果. 此選項可以和 --doublespeed 選項組合 使用, 實現類似每3幀播放2幀(譯者注: 指定
              -h 2 -d 3)的效果.  如果使 用此選項, 不要指望聲音質量會很好.

       -p URL | none, --proxy URL | none
              指定          proxy         作為HTTP請求的代理.         指定的格式應是一個完整的URL
              (如"http://host.domain:port/"),   但是可以省略字首"http://",   埠   號port(預設的埠
              為80)和末尾的'/'.  如果指定為 none ,則不使用代 理, 直接向伺服器請求檔案. 更多細節請
              看 "HTTP 支援" 小節.

       -u auth, --auth auth
              如果透過HTTP下載檔案時伺服器要求提供認證資訊, 則由 auth 指定, 其  格式為  "使用者名
              稱:密碼" (不包括引號).

       -@ file, --list filefile 指定的檔案中讀取將要播放的MPEG音訊流所在的檔案和(或)URL, 如果 命令列中還指
              定了其它的檔案和(或)URL, 也將其包含進播放清單.  如果指定 file 為  `-'而非一個普通的
              檔名, mpg123 將從標準輸入讀 取檔名和(或)URL, 或者讀取一個指向播放清單檔案的URL.  注
              意: -@ 選項只能使用一次(如果多處指定, 則只有最後一個有效).

       -z, --shuffle
              隨機播放. 按隨機的順序播放命令列和清單檔案中指定的音訊檔案.

       --stereo
              強制立體聲輸出.

       --reopen
              強制在播放完一個檔案後重新開啟音訊裝置.

       --8bit 強制8位元輸出.

       -Z, --random
              完全隨機播放. (譯者注: 與 --shuffle 選項的區別是, 指定本選項有可 能重複多次播放同一
              檔案)

運算元

       mpg123 支援下面的運算元:

       file   指定輸入檔案的路徑.  這些檔案必須包含合法的MPEG-1/2音訊 Layer-1, Layer-2或Layer-3的
              位元流.  如果指定為'-', 將從標準輸入讀取MPEG數 據. 進一步, 如果以"http://"開頭,  則
              認為指定 了一個 URL (請看下一 節).

HTTP 支援

       除了能從普通檔案和標準輸入讀取MPEG音訊流,  mpg123  還支援透過HTTP協 議從萬 維網(WWW)上獲取
       由URL(統一資源定位符)指定的檔案.  一個URL是一個以 "http://" 為字首的字串, 當 mpg123 識別到
       這個字首, 它會嘗試開啟一個 到相應伺服器的連線, 接著獲取相應的檔案並進行解碼播放.

       很多時候, 從WWW快取, 或所謂的網路代理比直接從伺服器更容易獲取檔案. 為利 用這種便利, mpg123
       會依次檢查 MP3_HTTP_PROXY, http_proxyHTTP_PROXY, 這三個環境變數是否被設定,  並將第一個被
       設定的變數的值作為指定的代理.   如  果你需要自己指定另外的代理, 可以使用 -p 命令列選項 (請
       看"選項"小節).  使用 -p none 選項將不使用任何代理而直接連線伺服器, 即使前面所述的三個 變數
       被設定.

       值得注意的是,  為了能從一個WWW伺服器獲取並流暢地播放MPEG音訊檔案, 必須有 足夠快的網路連線.
       例如, 為了能播放速率為128kbit/s的MPEG檔案, 所需的 網路頻寬至少應該是128kbit/s加上網路協 議
       本身的傳輸開銷.  如果網路常發生 短時中斷, 可以試試用 -b 選項指定一個緩衝區. 如果你所在的網
       路根本無 法達到實時傳輸MPEG音訊檔案所需的頻寬, 就只好使用 lynx(1) 之類的軟體先將  檔案下載
       到本地硬碟上再進行播放了.

       如果伺服器要求認證, 可以使用 -u auth 選項(請看"選項"小節)指定使用者名稱和密 碼.

中斷

       任何時候按Ctrl-C鍵都能中斷  mpg123 的執行. 如果有多個檔案在播放, Ctrl-C 會終止當前檔案的播
       放並 開始播放下一個檔案, 這種情況下, 如果你想終止整 個程式的執行, 必須連按兩次Ctrl-C (在約
       一秒鐘之內).

       注意,  按了Ctrl-C之後聲音也許不會馬上消失, 這是因為系統的音訊裝置緩衝了 一部分資料. 這種延
       遲隨系統不同而不同, 但通常都不超過1到2秒.

相關說明

       lynx(1), sox(1), intro(1)

注意

       MPEG音訊解碼, 特別是Layer-3的解碼, 需要CPU進行大量的運算. 為能達到實時 解碼,  你的計算機至
       少應該配備Pentium, Alpha, SuperSparc或效能相當的處 理器.  同時你可以使用 -singlemix 選項進
       行單聲道解碼, 對Layer-3, 這多少 能減少一點CPU負荷. 此外你也可以考慮使用 -2-4 選項.

       如果這些方法都不奏效, 試試用 -s 選項將解碼結果送到標準輸出上並將其定向 到一個檔案中,  然後
       再用適當的工具播放這個檔案.  你也許會用到 sox(1) 這個 工具, 它能將檔案轉換成你的音訊播放器
       所用的格式.

       還有一點就是 mpg123 總是輸出16位元的立體聲資料(如果指定 -0-1 選項中 的一個, 立體聲兩個聲
       道的資料是相同的). 如果系統硬體要求其它格式, 比如8 位元的單聲道的資料, 同樣可以使用 sox(1)
       進行轉化.

       如果你的系統本身足夠快, 能夠進行實時解碼, 只是在系統負荷較重時(如定時任 務, 使用者遠端登入
       或啟動`大'程式等)出現停頓, 你應該用 -b 選項指定一個不小 於1000K位元組的緩衝區.

BUGS

       已知的BUG和侷限性:
              MPEG-2, Layer-1和-2未經 測試. 可能不能工作.(Layer-3應該能工作.)
              不提供對自由格式的音訊流的支援.
              對Layer-1的支援未經 嚴格測試.
              未進行CRC錯誤校驗.
              沒有對DEC  Digital Unix, Ultrix 和 IBM AIX平臺上的音訊硬體提供支 持, 因此在這些平臺
              上必須使用 -s 選項.

作者

       主要作者:
              Michael Hipp <hippm@informatik.uni-tuebingen.de>

       使用了下面的程式碼或借鑑了其中的思想:
              MPEG Software Simulation Group (Base package)
              Philipp Knirsch <phil@mpik-tueb.mpg.de> (DCT36/manual unroll)
              Tobias Bading <bading@cs.tu-berlin.de> (subband synthesis)
              Jeff Tsay <ctsay@pasteur.eecs.berkeley.edu> (DCT36)
              Thomas Woerner (SGI Audio)
              Damien Clermonte <clermond@esiee.fr> (HP-UX audio fixes)
              Oliver Fromme <oliver.fromme@heim3.tu-clausthal.de>

       網路參考資料: http://www.sfs.nphil.uni-tuebingen.de/~hipp/mpg123.html
       http://www.heim3.tu-clausthal.de/~olli/mpg123/
       (包含關於mpg123郵件組的資訊)

       在此獲取最新版本:
       http://ftp.tu-clausthal.de/pub/unix/audio/mpg123

[中文版維護人]

       linuxipy <groove@ustc.edu>

[中文版最新更新]

       2004/2/29

《中國linux論壇man手冊頁翻譯計劃》:

       http://cmpp.linuxforum.net

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh

                                           21 Apr 1997                                  mpg123(1)