MPlayer - Arch Linux 中文维基

跳至內容

# MPlayer

出自 Arch Linux 中文维基
翻譯狀態：

- 本文（或部分內容）譯自 MPlayer，最近一次同步於 2021-03-20，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

相關文章

- mpv

MPlayer 是 GNU/Linux 下非常流行的影音播放器，支持絕大多數視頻/音頻文件格式，非常通用。

## 安裝

安裝軟體包 mplayer包 或它的開發版本 mplayer-svnAUR 。

定製版：

- MPlayer-VAAPI — 支持 VAAPI 的版本

  http://gitorious.org/vaapi/mplayer[失效連結 2022-09-21 ⓘ] || mplayer-vaapiAUR

- MPlayer2 — MPlayer 的分支

  https://github.com/nezumisama/mplayer2 || mplayer2AUR

注意：mplayer2 的開發已經停止，推薦使用 mpv，mpv 更注重速度和開發質量，儘管它對老舊設備兼容性差。使用前請注意一下它們的 差異。

### 圖形前端

參考 List of applications/Multimedia#MPlayer-based.

## 配置

系統全局配置文件位於 `/etc/mplayer/`，用戶配置文件位於 `~/.mplayer/`。

`/etc/mplayer/` 下默認包含：

- `codecs.conf` - 解碼器配置文件。
- `example.conf` - mplayer.conf 不會在安裝時自動創建，這是其示例文件。
- `input.conf` - 快捷鍵配置文件。

`~/.mplayer/` 下默認包含一個 config 文件。

參考 MPlayer 配置示例和 mplayer(1)。

### 按鍵綁定

系統按鍵綁定通過 `/etc/mplayer/input.conf` 配置，個人按鍵綁定通過 `~/.mplayer/input.conf` 配置。完整的鍵盤快捷鍵列表請閱讀 mplayer(1)。

參閱：XF86 鍵盤符號

## 提示與技巧

### 硬體加速

參考硬體視頻加速。

#### 啟用 VDPAU

將下列內容加入前面提到過的配置文件（全局或用戶配置文件均可）：

    vo=vdpau,
    vc=ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau,ffodivxvdpau,

注意：

- 最後面的逗號很重要！如果找不到指定的驅動程序和編解碼器，它們會告訴 MPlayer 使用其他驅動程序和編解碼器。
- `-vo` 選項選擇 VDPAU 視頻輸出驅動, `-vc` 選項選擇 VDPAU 視頻解碼器。

警告：只有最新型號的顯卡支持 ffodivxvdpau。如果你的不支持，可以刪除。詳情請查閱 Hardware video acceleration#NVIDIA。

#### 啟用 VA-API

這需要 AUR 中的 mplayer-vaapiAUR。

    $ mplayer -vo vaapi -va vaapi foobar.mpeg

- -vo - Select vaapi video output driver
- -va - Select vaapi video decoder driver

基於 MPlayer 的播放器：

- gnome-mplayer包: 要啟用硬體加速: Edit > Preferences > Player, 然後設置 Video Output 為 `vaapi`。
- smplayer包: 要啟用硬體加速: Options > Preferences > General > Video, 然後設置 Output driver 為 `vaapi`。

### Radeon 顯卡啟用半透明視頻混合顯示

為了在 X 中獲得半透明視頻效果，你需要在 MPlayer 中啟用視頻紋理:

    $ mplayer -vo xv:adaptor=1 file

或者在 `~/.mplayer/config` 中添加一行:

    vo=xv:adaptor=1

你可以使用 `xvinfo` 命令檢查你的顯卡支持哪種視頻模式。

### 播放流媒體文件

要播放流媒體（如 ASX 連結)，使用以下命令：

    $ mplayer -playlist link-to-stream.asx

必須使用 `-playlist` 參數，因為這些文件是流媒體列表，而非影音文件。

### 播放 DVD

要使用 MPlayer 播放 DVD：

    $ mplayer dvd://N

其中 N 想要播放的標題號。 如果不確定就從 1 開始。 要從特定的一章開始請使用 '-chapter' 標誌。 例如，添加 '-chapter 5' 到命令會從標題的第 5 章開始播放。

Mplayer 默認檢查 `/dev/dvd`。 在命令行中添加 `dvd-device` 選項或者在 `~/.mplayer/config` 中使用 `dvd-device` 變量可以告訴它使用 `/dev/sr0`。

要播放一個 DVD 鏡像文件：

    $ mplayer -dvd-device movie.iso dvd://N

啟用 DVD 菜單請使用:

    $ mplayer dvdnav://

注意：使用方向鍵導航， `Enter` 鍵選擇。

啟用滑鼠支持請使用：

    $ mplayer -mouse-movements dvdnav://

要找到音頻語言，以 `-v` 啟動 MPlayer 可以切換到音頻輸出 ID。用 `-aid audio_id` 來選擇一個音頻 ID。通過編輯 `~/.mplayer/config` 並添加 `alang=en` 這一行可以將英語設為默認音頻。

用 MPlayer 時，DVD 音量可能會被設置得比較低。要提高最大音量到 400%，請使用 `softvol=yes` 和 `softvol-max=400`。初始音量默認為軟體音量的 100%，全局混合水平保持不變。使用 `9` 和 `0` 可以在 0 和 400% 之間調節音量。

    alang=en
    softvol=yes
    softvol-max=400

#### DVB-T Streaming

更多信息參見 DVB-T。

### JACK 支持

要使 MPlayer 將其音頻直接輸出到 JACK 作為默認行為，編輯 `~/.mplayer/config` 並添加：

    ao=jack

如果你現在沒有運行 JACK, 你可以通過從命令行喚起 MPlayer，來讓 MPlayer 根據需要輸出到 JACK, 如：

    $ mplayer -ao jack path/to/file

### 高級字幕

要讓 ass 或者 ssa 格式字幕正常展示，你需要修改 `~/.mplayer/config` 添加：

    ass=true

或者添加 `-ass` 到命令行:

    $ mplayer -ass path/to/subtitledVideo.mkv

需要啟用此標誌的一個可能指示是：您的字幕中是否出現數字。這是由被解釋為要顯示的東西的定位信息引起的。Mplayer 也會抱怨字幕太長或太多行。

啟用 `ass` 也會同時啟用任何嵌入字體。 根據 MPlayer 的手冊，如果 fontconfig包 的版本號大於等於 2.4.2，不需添加 `embeddedfonts=true`。 當沒有嵌入字體的時候，fontconfig 也會被用來選擇使用哪個字體。這可能會導致使用的字體與 OSD 字幕渲染器的不同。

### 網絡電台

下面是一個腳本示例，用於輕鬆啟動/停止播放預定義電台。 [1]

    #!/bin/bash
    XX="X"$1;
    PLAYIT='mplayer  -loop 0 -playlist http://*.*.*.*:8000/listen.pls';

    if [ "$XX" == "Xstop" ]; then
      killall mplayer;
    else
      if [ 'EX' == 'EX'"$(pidof mplayer)" ]; then
        if [ "$UID" -ne 0 ]; then
          nohup $PLAYIT &> /dev/null & disown;
        else
          echo The "root" user is not allowed to run this script.
        fi
      else
        echo mplayer is already running by user: $(ps -eo user,comm | grep -i "mplayer"$ | sed 's/ mplayer/,/m') | sed "s/ ,$/./m";
      fi
    fi

有關正在運行的 MPlayer 實例的更詳細信息：

    $ ps -eo pcpu,pid,user,comm | grep -i "mplayer"$ | sed  "s/ mplayer$//m"

### 額外的二進制解碼器

如果你需要播放使用 cook、drvc 或 sipr 編解碼器編碼的媒體，可以安裝帶有必要的二進制編解碼器包 codecs64AUR。更多信息參見 [2]。

## 問題處理

### 無法打開名稱含空格的文件

打開名稱含空格的文件時，如果報類似於「無法打開 `file:///The%20Movie`」的錯誤（空格被替換成 `%20` 了），可以通過下面的方法解決：

打開 `/usr/share/applications/mplayer.desktop`，修改下面的內容：

    Exec=mplayer %U

為：

    Exec=mplayer "%F"

如果要使用圖形前端，修改為 `Exec=gui_name "%F"` 即可。

### OSD 和字幕有黑色或奇怪顏色的字體

當使用 MPlayer 可能默認使用的 `vdpau` 輸出時，似乎 OSD 和字體顏色會有問題。你可以使用 `xv` 而不是 `vdpau` 來繞過這一問題。

作為一個命令行選項：

    mplayer -vo xv

添加如下一行到你的 `~/.mplayer/config` 文件：

    vo=xv

詳細信息參見原帖。

### Smplayer無圖像

打開 `mp4` 和 `flv` 文件時，SMPlayer 可能出現無圖像問題。解決方法如下：

打開 `~/.mplayer/config` 添加：

     [extension.mp4]
     demuxer=mov

如果還有問題，可能是由 SMPlayer 原有設置導致的。刪除設置文件即可：

     $ rm -rf ~/.config/smplayer/file_settings

### Gnome中啟用複合的透明 SMPlayer

在使用 compiz 和 cairo dock 時，你注意到 SMPlayer 的透明屏幕了嗎？當你用 SMPlayer 打開視頻時，你只能聽到音頻而沒有視頻，這是很可笑的！下面是解決方法：[複製粘貼到終端]

       sudo bash -c "cat > /usr/bin/smplayer.helper" <<EOF
       export XLIB_SKIP_ARGB_VISUALS=1
       exec smplayer.real "$@"
       EOF
       sudo chmod 755 /usr/bin/smplayer.helper
       sudo mv /usr/bin/smplayer{,.real}
       sudo ln -sf smplayer.helper /usr/bin/smplayer

如果你不使用 `sudo`, 請直接使用 `su` 以 root 登錄並執行上述命令！

### SMPlayer: OSD font too big / subtitle text too small

自 SMPlayer 0.8.2.1 (with MPlayer2 20121128-1)起, 字幕字體與OSD字體的比例非常奇怪。這可能會導致 OSD 文字占滿整個屏幕而字體太小以至於無法閱讀。這個問題可以通過添加如下選項解決：

    -subfont-osd-scale 2

或者添加到由 SMPlayer 傳輸到 MPlayer 的額外選項解決。這些選項可在 Options > Preferences > Advanced > Options for MPlayer 找到。也可以通過添加如下的行到 `~/.mplayer/config` 解決：

    subfont-osd-scale=2

### Mplayer 字幕中某些字符顯示為問號

如果字幕的編碼方式是 utf8，請嘗試使用：

    -subcp utf8

你可以使用如下命令查看字幕的編碼方式：

    file subtitles.srt

參考 mplayer-shows-question-marks-for-some-characters-on-subtitle.

### 斷斷續續的音頻 CD 播放

當 CDROM 向下旋轉 CD 時，CDDA 播放可能每隔幾秒鐘中斷一次。要解決這個問題，你需要使用 `-cache` 選項提前緩存或緩衝：

    mplayer cdda://:1 -cache 1024

`:1` 是為了降低 CDROM 的速度，以獲得恆定的自旋和較少的噪聲。

## 參閱

- MPlayer FAQ
- MPlayer tips
- How to configure MPlayer
- playerctl: A command-line utility and library for controlling media players

分類：​

- 視頻
- 音頻
- 包含失效連結的頁面

MPlayer
新增話題