2.2. Управление
Пред. | Глава 2. Использование | След.

## 2.2. Управление

MPlayer использует полностью конфигурируемый, основанный на понятии команды, уровень управления, позволяющий манипулировать MPlayer'ом с клавиатуры, мышью, джойстиком или с пульта дистанционного управления (используя LIRC). Полный список кнопок для управления с клавиатуры см. на man-странице.

### 2.2.1. Конфигурация управления

MPlayer позволяет повесить любую MPlayer'овскую команду на любую кнопку, используя простой конфигурационный файл. Синтаксис файла состоит из имени кнопки, сопровождающегося командой. По умолчанию конфигурационный файл находится в `$HOME/.mplayer/input.conf`, но это можно изменить, указав опцию `-input `conf`` (относительный путь указывается относительно `$HOME/.mplayer`).

Пример 2.1. Простой файл конфигурации ввода

    ##
    ## MPlayer input control file
    ##

    RIGHT seek +10
    LEFT seek -10
    - audio_delay 0.100
    + audio_delay -0.100
    q quit
    > pt_step 1
    < pt_step -1
    ENTER pt_step 1 1

#### 2.2.1.1. Названия кнопок

Вы можете получить полный список, запустив mplayer -input keylist.

Клавиатура

- Все печатные символы
- `SPACE`
- `ENTER`
- `TAB`
- `CTRL`
- `BS`
- `DEL`
- `INS`
- `HOME`
- `END`
- `PGUP`
- `PGDWN`
- `ESC`
- `RIGHT`
- `LEFT`
- `UP`
- `DOWN`

Мышь (поддерживается только под X'ами)

- `MOUSE_BTN0` (Левая кнопка)
- `MOUSE_BTN1` (Правая кнопка)
- `MOUSE_BTN2` (Средняя кнопка)
- `MOUSE_BTN3` (Колёсико)
- `MOUSE_BTN4` (Колёсико)
- ...
- `MOUSE_BTN9`

Джойстик (поддержка должна быть включена при компиляции)

- `JOY_RIGHT` или `JOY_AXIS0_PLUS`
- `JOY_LEFT` или `JOY_AXIS0_MINUS`
- `JOY_UP` или `JOY_AXIS1_MINUS`
- `JOY_DOWN` или `JOY_AXIS1_PLUS`
- `JOY_AXIS2_PLUS`
- `JOY_AXIS2_MINUS`
- ...
- `JOY_AXIS9_PLUS`
- `JOY_AXIS9_MINUS`

#### 2.2.1.2. Команды

Вы можете получить полный список известных команд, запустив mplayer -input cmdlist.

- `seek` (int) val [(int) type=0]

  Переместиться в какое-то место фильма. Type `0` — это относительное перемещение на +/- величина секунд. Type `1` — это перемещение к val, выраженному в процентах от длины фильма.

- `audio_delay` (float) val

  Подстроить задержку звука на заданное количество секунд

- `quit`

  Выйти из MPlayer'а

- `pause`

  остановить/продолжить воспроизведение

- `grap_frames`

  Кто-нибудь знает ?

- `pt_step` (int) val [(int) force=0]

  Перейти к следующему/предыдущему элементу дерева. Знак val указывает направление. Если в этом направлении нет доступных элементов, то ничего не произойдёт, если force равно нулю.

- `pt_up_step` (int) val [(int) force=0]

  Почти как pt_step, но перемещается на следующий/предыдущий элемент в родительском списке. Полезно, чтобы выйти из внутреннего цикла в дереве.

- `alt_src_step` (int) val

  Если доступно более одного источника, выбирает следующий/предыдущий (поддерживается только в asx списках проигрывания).

- `sub_delay` (float) val [(int) abs=0]

  Подстройка задержки субтитров на +/- val секунд или установить в val секунд, если abs не ноль.

- `osd` [(int) level=-1]

  Переключить osd режим или установить его в level, если level > 0.

- `volume` (int) dir

  Увеличить/уменьшить громкость.

- `contrast` (int) val [(int) abs=0]
- `brightness` (int) val [(int) abs=0]
- `hue` (int) val [(int) abs=0]

- `saturation` (int) val [(int) abs=0]

  Установить/подстроить параметры видео. Val изменяется от -100 до 100.

- `frame_drop` [(int) type=-1]

  Изменить/установить режим пропуска кадров.

- `sub_visibility`

  Отрегулировать видимость субтитров.

- `sub_pos` (int) val

  Подстроить позицию субтитров.

- `vobsub_lang`

  Изменить язык VOBsub субтитров.

- `vo_fullscreen`

  Переключить полноэкранность режима.

- `vo_ontop`

  Переключает stay-on-top(оставаться на поверхности). Поддерживается всеми драйверами, использующими X11, кроме SDL, и directx, и gl2 под Windows.

- `tv_step_channel` (int) dir

  Выбрать следующий/предыдущий канал.

- `tv_step_norm`

  Изменить стандарт TV.

- `tv_step_chanlist`

  Изменить список каналов.

- `gui_loadfile`
- `gui_loadsubtitle`
- `gui_about`
- `gui_play`
- `gui_stop`
- `gui_playlist`
- `gui_preferences`

- `gui_skinbrowser`

  Действия с GUI

### 2.2.2. Управление через LIRC

Linux Infrared Remote Control[Инфракрасное Удалённое Управление Linux'ом] — используйте легко собираемый в домашних условиях IR-приёмник, (почти) любой пульт управления и управляйте с их помощью Вашей Linux машиной. Подробности на www.lirc.org.

Если у Вас установлен ракет lirc, configure само его обнаружит. Если Всё прошло хорошо, MPlayer при старте напечатает сообщение, похожее на "`Setting up lirc support...`". Если произошла ошибка, он Вам сообщит. Если он не говорит ничего про LIRC, то поддержка LIRC не была скомпилирована. Вот так :-)

Имя приложения для MPlayer — угадайте — `mplayer`. Вы можете использовать все команды mplayer'а и даже можете использовать более одной команды, разделив их символами `\n`. Не забудьте включить флаг repeat[повтор] в `.lircrc`, когда это имеет смысл (перемещение, громкость и т.п.). Вот выдержка из моего `.lircrc`:

    begin
         button = VOLUME_PLUS
         prog = mplayer
         config = volume 1
         repeat = 1
    end

    begin
        button = VOLUME_MINUS
        prog = mplayer
        config = volume -1
        repeat = 1
    end

    begin
        button = CD_PLAY
        prog = mplayer
        config = pause
    end

    begin
        button = CD_STOP
        prog = mplayer
        config = seek 0 1\npause
    end

Если Вам не нравится стандартное место Вашего конфигурационного файла lirc (`~/.lircrc`), используйте опцию `-lircconf `filename``, чтобы указать другой файл.

### 2.2.3. Подчинённый ("рабский") режим

Наличие подчинённого режима позволяет Вам создавать простые приложения к MPlayer'у. Когда режим включён (опцией `-slave`), MPlayer читает со стандартного входа команды, разделяемые символом конца строки (\n).

Пред. | Уровень выше | След.
2.1. Командная строка | Начало | 2.3. Сетевые потоки и каналы