Использование Командная строка MPlayer использует составное дерево проигрывания. Оно состоит из глобальных опций, идущих первыми, например mplayer -vfm 5, и опций, идущих после имени файла, которые применяются только к данному файлу/URL/и т.п., например: mplayer -vfm 5 movie1.avi movie2.avi -vfm 4 Вы можете группировать файлы/URL'ы вместе, используя { и }. Это полезно, например, с опцией : mplayer { 1.avi -loop 2 2.avi } -loop 3 Эта команда проиграет файлы в таком порядке: 1, 1, 2, 1, 1, 2, 1, 1, 2. Воспроизведение файла: mplayer [опции] [путь/]имя_файла Другой способ: mplayer [опции] file:///uri-escaped-path Воспроизведение множества файлов: mplayer [общие опции] [путь/]имя_файла1 [опции для имя_файла1] имя_файла2 [опции для имя_файла2] ... Воспроизведение VCD: mplayer [опции] vcd://номер_дорожки [-cdrom-device /dev/cdrom] Воспроизведение DVD: mplayer [опции] dvd://номер_ролика [-dvd-device /dev/dvd] Воспроизведение из WWW: mplayer [опции] http://site.com/file.asf (так же можно использовать и списки проигрывания (плейлист[playlist]) ) Воспроизведение по RTSP: mplayer [опции] rtsp://server.example.com/streamName Примеры: mplayer -vo x11 /mnt/Films/Contact/contact2.mpg mplayer vcd://2 -cdrom-device /dev/hdc mplayer -afm 3 /mnt/DVDtrailers/alien4.vob mplayer dvd://1 -dvd-device /dev/hdc mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi Управление MPlayer использует полностью конфигурируемый, основанный на понятии команды, уровень управления, позволяющий манипулировать MPlayer'ом с клавиатуры, мышью, джойстиком или с пульта дистанционного управления (используя LIRC). Полный список кнопок для управления с клавиатуры см. на man-странице. Конфигурация управления MPlayer позволяет повесить любую MPlayer'овскую команду на любую кнопку, используя простой конфигурационный файл. Синтаксис файла состоит из имени кнопки, сопровождающегося командой. По умолчанию конфигурационный файл находится в $HOME/.mplayer/input.conf, но это можно изменить, указав опцию (относительный путь указывается относительно $HOME/.mplayer). Простой файл конфигурации ввода ## ## 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 Управление через 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), используйте опцию , чтобы указать другой файл. Подчинённый ("рабский") режим Наличие подчинённого режима позволяет Вам создавать простые приложения к MPlayer'у. Когда режим включён (опцией ), MPlayer читает со стандартного входа команды, разделяемые символом конца строки (\n). Команды документированы в файле slave.txt. Сетевые потоки и каналы MPlayer может проигрывать файлы по сети, используя HTTP, FTP, MMS или RTSP/RTP протокол. Проигрывание включается добавлением URL'а в командную строку. Также, MPlayer учитывает переменную среды http_proxy и использует прокси[proxy], если это возможно. Также можно заставить использовать прокси: mplayer http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/stream.asf MPlayer может считывать данные со стандартного входа (а не из поименованных каналов). Это может, например, использоваться при проигрывании файлов по FTP: wget ftp://micorsops.com/something.avi -O - | mplayer - Мы рекомендуем включать при проигрывании из сети: wget ftp://micorsops.com/something.avi -O - | mplayer -cache 8192 - Сохранение потоковых данных Как только вам удалось воспроизвести любимый интернет-поток, вы можете воспользоваться опцией , чтобы сохранить его в файл. For example: mplayer http://217.71.208.37:8006 -dumpstream -dumpfile stream.asf сохранит данные из потока http://217.71.208.37:8006 в stream.asf. Это работает для всех протоколов, поддерживаемых MPlayer, таких как MMS, RSTP, и других. Удалённые потоки Удалённые потоки позволяют получить доступ к большинству поддерживаемых MPlayer'ом типам потоков с удалённой машины. Основное предназначение этой возможности — это прямой доступ к CD или DVD приводу другого компьютера по сети (предполагается, что пропускной способности сети будет достаточно). С другой стороны, некоторые типы потоков (в настоящий момент это TV и MF) не могут использоваться удалённо, поскольку они выполнены на уровне демуксера. Это печально для MF, а вот TV всё равно потребовал бы ужасной пропускной способности сети. Компиляция сервера После компиляции MPlayer'а, перейдите в каталог TOOLS/netstream и выполните make, чтобы собрать сервер. Затем Вы можете скопировать файл netstream в нужное место Вашей системы (обычно это /usr/local/bin на Linux). Использование удалённых потоков Сначала Вы должны запустить сервер на машине, к которой Вы хотите получить удалённый доступ. В настоящий момент сервер чрезвычайно прост и не использует никаких аргументов командной строки, поэтому просто запускайте netstream. Теперь, например, Вы можете проиграть вторую дорожку VCD'шника на сервере: mplayer -cache 5000 mpst://servername/vcd://2 Вы можете получить доступ к файлам на сервере: mplayer -cache 5000 mpst://servername//usr/local/movies/lol.avi Обратите внимание, что пути не начинающиеся с / будут относительными к каталогу, в котором запущен сервер. Использование не требуется, но это будет очень полезно. Обратите внимание, что в настоящий момент сервер вообще не является безопасным. поэтому, не сообщайте о многочисленных эксплоитах[exploit], которые его используют. Лучше пришлите несколько (хороших) патчей, чтобы сделать его лучше, или начните писать свой сервер. Редактируемые списки решений [Edit Decision Lists] (EDL) Система редактируемых списков решений [edit decision list] (EDL) позволяет Вам автоматически пропускать или заглушать части при воспроизведении, основываясь на специфичном для каждого фильма конфигурационном файле. Это полезно для тех, кто может захотеть посмотреть фильм в "семейном" режиме. Вы можете исключить любые проявления насилия, ненормативной лексики, Jar-Jar Binks, и т. п. из фильмов, сообразуясь с Вашими личными предпочтениями. Помимо этого, существуют другие применения, например автоматический пропуск рекламы при просмотре фильмов. Формат EDL файлов пока элементарен. в каждой строке находится одна команда, которая указывает, что делать (пропустить/выключить звук) и когда (используя pts в секундах). Использование EDL файлов Включите опцию , когда Вы запускаете MPlayer, с именем EDL файла, который Вы хотите использовать с видео. Создание EDL файлов Текущий формат файлов EDL: [начальная секунда] [конечная секунда] [действие] Где секунды - это числа с плавающей точкой (вещественные числа), а действие - это или 0 для пропуска или 1 для заглушения звука. Пример: 5.3 7.1 0 15 16.7 1 420 422 0 Это вызовет пропуск видео с 5.3 секунды до 7.1 секунды, затем заглушит звук на 15 секунде, включит обратно в 16.7 секунд и пропустит видео с 420 по 422 секунды. Эти действия будут происходить, когда таймер проигрывания достигнет указанных в файле значений. Чтобы начать создать EDL файл, используйте опцию . При проигрывании, когда Вы хотите отметить предыдущие две секунды для пропуска, нажмите i. Соответствующая запись для этого времени будет добавлена в файл. Затем Вы можете вернуться и подстроить сгенерированный EDL файл также как и поправить действие по-умолчанию (пропуск блока, указанного в строке). Расширенные возможности аудио Окружающее/Многоканальное[Surround/Multichannel] воспроизведение DVD'шники Большинство DVD и многие другие файлы содержат окружающий звук. MPlayer поддерживает воспроизведение такого звука, но не задействует его по-умолчанию, поскольку стерео оборудование более распространено. Для воспроизведения файла с более чем двумя каналами звука, используйте опцию . Например, для воспроизведения DVD со звуком 5.1: mplayer dvd://1 -channels 6 Имейте ввиду, что несмотря на название "5.1" на самом деле присутствует шесть независимых каналов. Если у вас есть соответствующее оборудование, вы спокойно можете добавить опцию в конфигурационный файл ~/.mplayer/config MPlayer'а. Например, для установки по умолчанию квадрофонического[quadraphonic] вопроизведения, добавьте такую строку: channels=4 MPlayer будет выводить четырехканальный звук, если все четыре есть в проигрываемом файле. Воспроизведение стерео звука на четырех колонках По-умолчанию, MPlayer не дублирует никакие каналы, как и большинство звуковых драйверов. Если вы хотите, сделайте это самостоятельно: mplayer filename -af channels=2:2:0:1:0:0 Объяснения ищите в разделе копирование каналов. Передача AC3/DTS DVD, как правило, имеют окружающий звук, кодированный в AC3 (Dolby Digital) или DTS (Digital Theater System[система цифрового кинотеатра]) формате. Некоторое современное аудио оборудование способно самостоятельно декодировать эти форматы. MPlayer может быть сконфигурирован, чтобы передавать данные без их декодирования. Это работает только для наличие в вашей звуковой карте разъема S/PDIF (Sony/Philips Digital Interface[цифровой интерфейс Sony/Philips]). Если ваше оборудование может вукодировать и AC3, и DTS, выможете спокойно задействовать передачу для обоих форматов. В противном случае включайте передачу только того формата, который поддерживается оборудованием. Чтобы включить передачу из командной строки: для только AC3, используйте для только DTS, используйте для AC3 и DTS, используйте Чтобы включить передачу в файле настроек <application>MPlayer</application>: для только AC3: для только DTS: для AC3 и DTS: Заметьте, что в конце и присутствует запятая (","). В этом случае MPlayer вернется к кодеку, который он обычно использует, при воспроизведении файла, не содержащего звука AC3 или DTS. запятой не требует; Когда указано семейство аудио, MPlayer вернется к нужному кодеку так или иначе. Передача MPEG аудио Передатчики цифрового ТВ (такие как DVB и ATSC) и некоторые DVD, обычно имеют аудио потоки MPEG (в частности MP2). Некоторые аппаратные MPEG декодеры, такие как полнофункциональные DVB карты и DXR2 адаптеры имеют встроенную возможность декодирования этого формата. MPlayer может быть настроен для передачи аудио данных без из декодирования. Для использования этого кодека: mplayer -ac hwmpa Matrix-кодированное[matrix-encoded] аудио ***TODO*** Этот раздел пока не написан, и не может быть завершен, пока кто-нибудь не предоставить нам образцы файлов для тестирования. Если у вас есть matrix-кодированные файлы, знаете где их можно достать или имеете информацию, которая может быть полезна, отошлите сообщение в рассылку MPlayer-DOCS. Укажите в теме письма [matrix-encoded audio]. Если не появятся файлы или какая-нибудь информация, этот раздел будет удален. Полезные ссылки: http://electronics.howstuffworks.com/surround-sound5.htm http://www.extremetech.com/article2/0,1697,1016875,00.asp Эмуляция окружающего звука в наушниках MPlayer содержит плагин HRTF (Head Related Transfer Function), основанный на проекте MIT откуда взяты измерения от микрофонов, вмонтированных в макет человеческой головы. Хотя точная имитация системы окружающего звука[surround system] невозможна, MPlayer'овский плагин HRTF производит более пространственный окружающий звук на 2-х канальных наушниках. Обичное сведение, просто объединяет канали в два; кроме объединения каналов, создает хитрое эхо, слегка увеличивает разделение стерео, и меняет громкость некоторых частот. Лучше ли звучит HRTF, зависеть от исходного звука, и является делом личного вкуса, но его определенного стоит попробовать. Для воспроизведения DVD с HRTF: mplayer dvd://1 -channels 6 -af hrtf работает хорошо тоько с 5-ю или 6-ю каналами. Также, тербуется 48 kHz звук. DVD аудио уже kHz, но если у вас есть файл, который вы хотите воспроизвести при помощи , с другой частотой сэмплирования, необходимо его ресэмплировать[resample]: mplayer filename -channels 6 -af resample=48000,hrtf Решение проблем Если вы ничего не слышите при использовании окружающего звука, проверьте настройки вашего микшера при помощи такой как alsamixer программы; очень часто по-умолчанию выходной звук выключен или его уровень установлен в ноль. Манипуляции с каналами Общая информация К сожалению, нет стандарта, описывающего порядок следования каналов. Порядки, указанные ниже, таковые из AC3 и довольно типичны; попробуйте их и увидите совпадают ли они с вашим источником. Каналы нумеруются с нуля. mono[моно] center[центральный] stereo[стерео] left[левый] right[правый] quadraphonic[квадрофонический] left front[левый передний] right front[правый передний] left rear[левый задний] right rear[правый задний] surround 4.0[окружение 4.0] left front[левый передний] right front[правый передний] center rear[центральный задний] center front[центральный передний] surround 5.0[]окружение 5.0 left front[левый передний] right front[правый передний] left rear[левый задний] right rear[правый задний] center front[центральный передний] surround 5.1[окружение 5.1] left front[левый передний] right front[правый передний] left rear[левый задний] right rear[правый задний] center front[центральный передний] subwoofer[сабвуфер] Опция используется для запроса количества каналов у аудио декодера. Некоторые аудио кодеки используют указанное количество каналов для определения необходимо ли сведение каналов. Заметьте, что это не всегда отражается на количестве выходных каналов. Например, используя для проигрывания стерео MP3 файла будет по-прежнему выводить звук на два канала, поскольку MP3 кодек не создает дополнительных каналов. Аудио плагин может использоваться для создания или удаления каналов, и полезен для управления количеством каналов, отсылаемых на звуковую карту. Смотрите следующие разделы для получения информации о манипуляции каналами. Воспроизведение моно на двух колонках Моно звук намного лучше звучит, при воспроизведении на двух колонках - особенно при использовании наушников. Аудиофайлы, реально имеющие один канал, автоматически проигрываются через две колонки; к сожалению, множество файлов с моно звуком кодированы как стерео с тишиной в одном из каналов. Простейший и безопасный способ вопроизведения одинакового звука на обеих колонках состоит в использовании плагина : mplayer filename -af extrastereo=0 Он усредняет оба канала, делая каждый в два раза тише изначального. В следующих разделах приводятся другие способы сделать то же самое без уменьшения громкости, но они сложнееи требуют указания различных опций в зависимоти от того, какой канал остается. Если вам действительно требуется управлять громкостью, бутет проще пожкспериментировать с плагином и определить верное значение. Например: mplayer filename -af extrastereo=0,volume=5 Копирование/перемещение каналов Плагин может переместить любой или все каналы. Установка всех подопций плагина не так проста и требует определенной аккуратности. Определитесь, сколько выходных каналов вам необходимо. Это первая подопция. Посчитайте количество перемещаемых каналов. Это вторая подопция.Каждый канал может быть перемещен в несколько отличных каналов одновременно, но учтите, что исходный канал (даже при меремещении в одно место) будет пуст, пока в него не переместится какой-либо другой. Для копирования канала, оставляя исходный неизменным, просто переместите канал одновременно в требуемый и исходный. Например: канал 2 --> канал 3 канал 2 --> канал 2 Запишите копии каналов в виде пары подопций. Заметьте, что первый канал - это 0, второй - 1 и т.д. Порядок следования значений не имеет, пока они правильно сгрупиированы в пары исходный:результирующий. Пример: один канал на две колонки Это пример другого способа воспроизвести один канал на обе колонки. В нем предполагается, что левый канал должен воспроизводиться, а правый надо отбросить. Выполняем шаги, описанные выше: Для создания по каналу на каждую из колонок, первая подопция должна быть 2. Левый канал надо переместить на правый и на себя, чтобы он не оставался пуст. Всего два перемещения, делаем вторую подопцию тоже равной "2". Для перемещения левого канала (канал 0) в правый (канал 1) пара подопций имеет вид "0:1", "0:0" перемещает левый канал на себя. Собираем все вместе: mplayer filename -af channels=2:2:0:1:0:0 Преимущество этого примере перед состоит в том, что громкость каждого канала такая же как у исходного. Недостаток заключается в необходимости изменить подопции на "2:2:1:0:1:1", если желаемый канал - правый. К тому же его труднее запомнить и набрать. Пример: левый канал на две колонки (сокращение) На самом деле есть более простой способ использования плагина для воспроизведения левого канала на обеих колонках: mplayer filename -af channels=1 Второй канал отбрасывается и, при отсутствии других подопций, остается единственным. Драйвер звуковой карты автоматически воспроизводит одноканальный звук на обеих колонках. Но это сработает только если желаемый канал - левый. Пример: дублирование передних каналов на задние Другая обычная операция - это дублирование передних каналов и воспроизведение их на задних колонках при квадрофонической настройке. Выходных каналов должно быть четыре. Первая подопция равна "4". Каждый из передних каналов надо переместить на соответствующий задний и на себя. Это четыре перемещения, так что вторая подопция равна "4". Левый передний (канал 0) надо переместить на левый задний (канал 2): "0:2". Левый передний также надо переместить на себя: "0:0". правый передний (канал 1) перемещается на правый задний (канал 3): "1:3", и на себя: "1:1". Собираем все и получаем: mplayer filename -af channels=4:4:0:2:0:0:1:3:1:1 Микширование каналов Плагин пожет микщировать каналы в указанных пользователем пропорциях. Он может делать все, что , и даже больше. К сожалению, подпоции намного сложнее. Определите со скольки каналами будете работать. Вам необходимо указать это при помощи и/или . Дальнейшие примеры покажут когда какую использовать. Решите, сколько каналов скормить (дополнительные декодированные каналы отбрасываются). Это первая подопция, она также определяет сколько каналов готовится к выводу). Оставшиеся подопции указывают какая часть каждого входного канала микшируется в в каждый выходной. Это самая сложная часть. Для решения задачи, разделите подопции на несколько наборов, по одному на каждый выходной канал. Каждая подопция в наборе относится к входному каналу. принимает значения от 0 до 512, давая от 0% до 51200% громкости исходного канала. Будьте осторожны, используя значения больше 1, если вы превыситы диапазон сэмплинга вашей звуковой карты, вы услышите противный треск и скрежет. Если хотите, можете вслед за указать для задействования обрезки, но лучше держать значения достаточно низкими, чтобы не требовалось обрезание. Пример: один канал на две колонки Это еще один пример воспроизведения девого канала на двух колонках. Следуя инструкциям выше: должен выдать два канала, т.о. первая подопция равна "2". Поскольку входных каналов два, будет два набора подопций. Так как выходных каналов тоже два, то будет по две подопции в каждом наборе. Левый канал из файла должен перейти с полной громкостью в новые левый и правый. Таким образом, первый набор подопций будет "1:1". правый канал должен быть отброшен, поэтому второй набор равен "0:0". Любые значения 0 в конце могут быть опущены, но для более легкого понимания мы их оставим. Соединение опций дает: mplayer filename -af pan=2:1:1:0:0 Если вместо правого канала нужен левый, подопции для будут "2:0:0:1:1". Пример: левый канал на две колонки (сокращение) Как и с , существует сокращенный вариант, который работает только для левого канала: mplayer filename -af pan=1:1 Поскольку имеет только один входной канал (остальные отбрасываются), будет только одна подопция, указывающая, что единственный канал получает 100% собственной громкости. Пример: сведение 6-канального PCM Декодер MPlayer'а для 6-канального PCM не способен сводить каналы. Здесь описан способ сведения PCM, используя : Количество выходный каналов равно 2, значит первая подопция равна "2". С шестью входными каналами будем иметь шесть наборов подопций. К счастью, поскольнку мы беспокоимся о выводе только первых двух, достаточно создать два набора; оставшиеся можно опустить. Имейте ввиду, что не все многоканальные имеют одинаковый порядок каналов. пример показывает как свести файл с порядком как у AC3 5.1: 0 - передный левый 1 - передний правый 2 - задний левый 3 - задний правый 4 - сентральный передний 5 - сабвуфер В первом наборе указаны проценты от исходной громкости, в соответствующем порядке, которую каждый выходной канал получит от переднего левого канала: "1:0". Правый передний должен перейти в правый: "0:1". То же для задних: "1:0" и "0:1" Центральный должен попасть в оба с половинной громкостью: "0.5:0.5", и сабвуфер переходит в оба канала с полной громкостью: "1:1". Все вместе: mplayer 6-channel.wav -af pan=2:1:0:0:1:1:0:0:1:0.5:0.5:1:1 Проценты, указанные выше всего лишь пример. подстраивайте их как вам удобно. Пример: Воспроизведение звука 5.1 на больших колонках без сабвуфера Если у вас есть пара огромных передних колонок, нет надобности тратиться на сабвуфер для поноценной системы 5.1. Если использовать для запроса к liba52 на декодирование 5.1 аудио в 5.0, канал сабвуфера просто отбрасывается. Если вы сотите самостоятельно распределить канал сабвуфера, то потребуется ручное сведение при помощи : Поскольку надо анализировать все шесть каналов, укажите , чтобы liba52 декодировал их все. выводит только пять каналов, первая подопция равна 5. Шесть входных каналов означает шесть наборов по пять подопций в каждом. Левый передний будлируется только на себя: "1:0:0:0:0" То же для правого переднего: "0:1:0:0:0" То же для левого заднего: "0:0:1:0:0" И то же для правого заднего: "0:0:0:1:0" Центральный передний, тоже: "0:0:0:0:1" И, наконец, мы должны решить что же делать с сабвуфером, например, половина на передний правый и половина на передний левый: "0.5:0.5:0:0:0" Собирая все подопции месте, получаем: mplayer dvd://1 -channels 6 -af pan=5:1:0:0:0:0:0:1:0:0:0:0:0:1:0:0:0:0:0:1:0:0:0:0:0:1:0.5:0.5:0:0:0 Программная подстройка звука Некоторые звуковые дорожки без усиления слишком тихие для комфортного прослушивания. Это становится проблемой, если звуковое оборудование не способно усиливать сигнал. Опция указывает MPlayer'у использовать встроенный микшер. После этого вы можете использовать клавиши подстройки громкости (по-умолчанию 9 и 0) чтобы достичь значительно более громкого звучания. Заметьте, что это не исключает использования микшера вашей карты; MPlayer всего лишь усиливает сигнал перед отправкой его на звуковую карту. Следующим пример может являться неплохим началом: mplayer quiet-file -softvol -softvol-max 300 Опция указывает максимально допустимый уровень звука в процентах от исходного. Например, позволит увеличивать громкость вдвое по сравнению с оригинальным звуком. Использование больших значений с; высокий уровень громкости не будет достигнуть без использования клавиш регулирования громкости. Единственный минус больших значений заключается в том, что, поскольку MPlayer регулирует громкость в процентах от максимума, вы не будете иметь той же точности при успользовании клавиш решулирования громкости. Используйте меньшее значение и/или укажите если нужна повышенная точность. Опция работает, управляя аудио плагином . Если вам надо воспроизвести файл с определенной громкостью от начальной, можете указать вручную: mplayer quiet-file -af volume=10 Будет воспроизведен файл в усилением в 10 децибелл. Будьте осторожны, используя плагин - вы можете легко повредить ваши уши слишком громким звуком. Начните с маленьких значений и постепенно увеличивайте, пока не почуствуете, что достаточно. Также, если указать черезчур высокие значения, может потребоваться обрезать звук, чтобы извежать отправления на карту данных, превышающих допустимые значение; это приведет к искажению звука.