Ru-Board.club
← Вернуться в раздел «Программы»

» MPlayer / MEncoder

Автор: Nuck
Дата сообщения: 25.06.2003 11:54


Оф. сайт :: Загрузка :: Скриншоты

Медиаплеер с открытым исходным кодом, относящийся к свободному программному обеспечению. Поддерживает более чем 192 видео и 85 аудио форматов. Работает на большинстве современных операционных систем (Linux, Windows, Mac OS X, FreeBSD и т.п.), изначально разрабатывался для Linux. Поддерживает разнообразные устройства вывода изображения, такие как DirectX, VESA, SDL, X11, Quartz Compositor, включая такое своеобразное устройство вывода как ASCII-арт, то есть имеется возможность смотреть видео в текстовом режиме. Большинство аудио и видео форматов поддерживаются родной для MPlayer свободной библиотекой libavcodec, использующей код проекта FFmpeg, которой вполне достаточно для проигрывания DVD дисков и многих XviD/DivX файлов, однако некоторые файлы в проприетарном формате могут потребовать внешних DLL библиотек, поддержка которых также предусмотрена.
Официально последние версии MPlayer доступны только в виде исходников, поэтому рекомендуется пользоваться неофициальными сборками от сторонних авторов, либо самому компилировать файлы плеера из исходников. Поскольку плеер является консольным (не имеет графического интерфейса), для комфортной работы с ним также понадобится какая-нибудь графическая оболочка (GUI), а для поддержки дополнительных форматов необходимо будет установить пакет бинарных кодеков.
MPlayer for Windows - универсальная сборка от LoRd MuldeR. Включает последние билды MPlayer от Gianluigi Tiesi, оптимизированные для различных CPU, две самых популярных графических оболочки SMPlayer и MPUI и пакет бинарных кодеков (в полной версии). Обновляется, по крайней мере, раз в месяц, включает автозагрузку. Упрощенная сборка содержит только MPlayer и MPUI.
Новичкам дальше читать необязательно (а то опухнуть можно, если увлечься).

Другие сборки: Gianluigi Tiesi, william0wang, [more=BakLAN]MPlayer-SVN-r29418
MPlayer-SVN-r31978-4.5.0[/more], другие

Графические оболочки для MPlayer: SMPlayer, MPUI, MPUI-hcb, MPlayerGUI, MPF, rulesPlayer, Kliper, другие

Графические оболочки для MEncoder: MEninX, gui4menc0, MEncoder264, MeWiG, X-Mencoder, другие (см. также здесь и здесь). Сам MEncoder как правило распространяется вместе с ними.

Дополнительные шрифты для OSD.

[more=Скрипт по "нарезке" фрагментов фильмов при помощи mencoder-а и ffmpeg-а для *nix систем]

#!/bin/sh

###############################################################
# Licensed under Creative Commons by-nc-sa #
# http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en_GB #
# created by sda (sda00@himki.net) #
###############################################################

export TMPDIR="/tmp"
export RESULTDIR="./movies_splitted"
export INPUTDIR="./"
export ffmpeg="ffmpeg"
export mencoder="mencoder"
export FORMAT="x264" # there's only 2 supported at the moment: x264 and mpeg4
export output_qty="3"
export output_timing="30"
export output_dimension="240x180"
# export use_ffmpeg="1"
export encoder_time_shift="1200"


case $1 in
    --help)
    echo -e '\E[37;44m'"\033[1mNAME\033[0m"
    echo "    movie_splitter - is a script aimed to be handy in making multiple cuttings out of a movies."
    echo "              It uses 'mencoder' or 'ffmpeg' (or both of them) and capable to make encoding"
    echo "             in 'x264' or 'mpeg4' video codec."
    echo ""
    echo -e '\E[37;44m'"\033[1mSYNOPSIS\033[0m"
    echo "    movie_splitter [options]"
    echo ""
    echo -e '\E[37;44m'"\033[1mOPTIONS\033[0m"
    echo "        You're welcome to tune them as you like... "
    echo ""
    echo "    -d    Set 'output_dimension' of [WxH], like: -d 240x180. Aspect always preserved. "
    echo ""
    echo "    -f    Use 'ffmpeg' for encoding."
    echo ""
    echo "    -F    Set full path to 'ffmpeg' binary."
    echo ""
    echo "    -fmt    Set video codec format: -fmt mpeg4 or -fmt x264. x264 is a default value."
    echo ""
    echo "    -i    Turn on 'single file mode' by setting a full path to a desired movie."
    echo "        In this case filename should not contain spaces and other 'special' characters."
    echo ""
    echo "    -I    Turn on processing of a desired catalogue with your movies. Nested folders are left intact."
    echo "        In this case filenames are NOT restricted."
    echo ""
    echo "    -m    Use 'mencoder' for encoding."
    echo ""
    echo "    -M    Set full path to 'mencoder' binary."
    echo ""
    echo "    -O    Set desired catalogue for encoded results. It's highly recommended to keep them seperate from the sources."
    echo ""
    echo "    -q    Set quantity of a 'thumbnails' per source movie. Default value is 3."
    echo ""
    echo "    -s    Set 'time shift' - interval in seconds between cuts."
    echo ""
    echo "    -t    Set the duration of cuts in seconds."
    echo ""
    echo "    -T    Set catalogue for temporary files. The default is /tmp."
    echo ""
    echo "Hope you like it :). Though it's pretty raw and definitely should be improved."
    exit 0

    ;;
esac


for ARGS in $* ; do

    case $ARGS in
        -f)
        export use_ffmpeg="1"
        ;;
        -m)
        export use_mencoder="1"
        ;;
        -F)
        export ffmpeg=$(echo $* | awk -F\-F '{ print $2 }' | awk '{ print $1 }')
        ;;
        -M)
        export mencoder=$(echo $* | awk -F\-M '{ print $2 }' | awk '{ print $1 }')
        ;;
        -O)
        export RESULTDIR=$(echo $* | awk -F\-O '{ print $2 }' | awk '{ print $1 }')
        ;;
        -i)
        export input_file=$(echo $* | awk -F\-i '{ print $2 }' | awk -F\ \- '{ print $1 }')
        ;;
        -I)
        export INPUTDIR=$(echo $* | awk -F\-I '{ print $2 }' | awk '{ print $1 }')
        ;;
        -T)
        export TMPDIR=$(echo $* | awk -F\-T '{ print $2 }' | awk '{ print $1 }')
        ;;
        -fmt)
        export FORMAT=$(echo $* | awk -F\-fmt '{ print $2 }' | awk '{ print $1 }')
        ;;
        -q)
        export output_qty=$(echo $* | awk -F\-q '{ print $2 }' | awk '{ print $1 }')
        ;;
        -t)
        export output_timing=$(echo $* | awk -F\-t '{ print $2 }' | awk '{ print $1 }')
        ;;
        -d)
        export output_dimension=$(echo $* | awk -F\-d '{ print $2 }' | awk '{ print $1 }')
        ;;
        -s)
        export encoded_time_shift=$(echo $* | awk -F\-s '{ print $2 }' | awk '{ print $1 }')
        ;;

    esac

done


mkdir -p $TMPDIR
mkdir -p $RESULTDIR


if [ -d $RESULTDIR ] ; then echo "RESULTDIR created as $RESULTDIR"
else echo "Check your permissions for a proper $RESULTDIR. Going to exit." && read a1 && exit 0
fi

if [ -d $TMPDIR ] ; then echo "TMPDIR created as $TMPDIR"
else echo "Check your permissions for a proper $TMPDIR. Going to exit." && read a1 && exit 0
fi

if [ -n "$(eval which ${ffmpeg})" ]; then echo "Good... ffmpeg is here"
else echo "ffmpeg is missing" && touch "$TMPDIR/noffmpeg"
fi

if [ -n "$(eval which ${mencoder})" ]; then echo "Good... mencoder is here"
else echo "mencoder is missing" && touch "$TMPDIR/nomencoder"
fi

if [ -e "$TMPDIR/noffmpeg" -a -e "$TMPDIR/nomencoder" ]
then echo "Can't locate 'ffmpeg' or 'mplayer'. Check your setup" && read a1 && exit 0
fi

if [ "$FORMAT" = "x264" ]
then export vcodec_ffmpeg="libx264" && export vcodec_mencoder="x264"
fi

if [ "$FORMAT" = "mpeg4" ]
then export vcodec_ffmpeg="mpeg4" && export vcodec_mencoder="lavc"
fi

export mencoder_dimension=$(echo $output_dimension | awk -Fx '{ print $1 }' )


get_time_ffmpeg_function ()
{
    export movie_total_time=$(expr $(find $input_file -exec ${ffmpeg} -i {} \; 2>&1 | grep -i duration |\
    awk -F: '{ print $2 }') '*' 3600 \
    '+' $(find $input_file -exec ${ffmpeg} -i {} \; 2>&1 | grep -i duration | awk -F: '{ print $3 }') '*' 60 \
    '+' $(find $input_file -exec ${ffmpeg} -i {} \; 2>&1 | grep -i duration | awk -F: '{ print $4 }' |\
    awk -F\. '{ print $1 }' ))
}



split_by_ffmpeg_single ()
{
a1=0

get_time_ffmpeg_function

while [ "$a1" -lt "$output_qty" ]
do
    
    $( ${ffmpeg} -ss $(expr $movie_total_time '/' $output_qty '*' $a1) \
    -t $output_timing -i $(find $input_file) -f avi \
    -s $output_dimension -vcodec $vcodec_ffmpeg -sameq -bf 2 -ab 128k -ac 2 -y \
    "$input_file"_ffmpeg_"$a1".avi )

    mv $INPUTDIR/*_ffmpeg_*.avi $RESULTDIR/

    a1=$(expr $a1 '+' 1)

done

find $RESULTDIR/ -size 0c -exec rm {} \;
find $RESULTDIR/ -size 4108c -exec rm {} \;

}

split_by_ffmpeg_multiple ()
{
a1=0
while [ "$a1" -lt "$output_qty" ]
do
    $(find $INPUTDIR -maxdepth 1 -exec ${ffmpeg} -ss $(expr $encoder_time_shift '*' $a1) \
    -t $output_timing -i {} -f avi \
    -s $output_dimension -vcodec $vcodec_ffmpeg -sameq -bf 2 -ab 128k -ac 2 -y \
    {}_ffmpeg_"$a1".avi \; )

    mv $INPUTDIR/*_ffmpeg_*.avi $RESULTDIR/

    a1=$(expr $a1 '+' 1)

done

find $RESULTDIR/ -size 0c -exec rm {} \;
# find $RESULTDIR/ -size 4108c -exec rm {} \;

}



split_by_mencoder_multiple ()
{
a1=0
while [ "$a1" -lt "$output_qty" ]
do
    find $INPUTDIR -maxdepth 1 -exec ${mencoder} {} -ss $(expr "$a1" '*' "$encoder_time_shift") -endpos $output_timing \
    -oac copy -ovc $vcodec_mencoder -vf scale=$mencoder_dimension:-2 \
    -forceidx -zoom \
    -o {}_mencoder_"$a1".avi \;

    mv $INPUTDIR/*_mencoder_*.avi $RESULTDIR/

    a1=$(expr $a1 '+' 1)

done

find $RESULTDIR/ -size 0c -exec rm {} \;
# find $RESULTDIR/ -size 4108c -exec rm {} \;

}


split_by_mencoder_single ()
{
a1=0
while [ "$a1" -lt "$output_qty" ]
do
    find $input_file -exec ${mencoder} {} -ss $(expr "$a1" '*' "$encoder_time_shift") -endpos $output_timing \
    -oac copy -ovc $vcodec_mencoder -vf scale=$mencoder_dimension:-2 \
    -forceidx -zoom \
    -o {}_mencoder_"$a1".avi \;

    mv $INPUTDIR/*_mencoder_*.avi $RESULTDIR/

    a1=$(expr $a1 '+' 1)

done

find $RESULTDIR/ -size 0c -exec rm {} \;
# find $RESULTDIR/ -size 4108c -exec rm {} \;

}




if [ "$use_ffmpeg" = "1" -a "$input_file" != "" ] ; then
split_by_ffmpeg_single
fi

if [ "$use_ffmpeg" = "1" -a "$input_file" = "" ] ; then
split_by_ffmpeg_multiple
fi

if [ "$use_mencoder" = "1" -a "$input_file" = "" ] ; then
split_by_mencoder_multiple
fi

if [ "$use_mencoder" = "1" -a "$input_file" != "" ] ; then
split_by_mencoder_single
fi


if [ -e "$TMPDIR/noffmpeg" ]
then rm "$TMPDIR/noffmpeg"
fi

if [ -e "$TMPDIR/nomencoder" ]
then rm "$TMPDIR/nomencoder"
fi


[/more]
Внимание! Не рекомендуется пользоваться русской версией оф. сайта, т.к. она уже сильно устарела.




Голосование "Лучший плеер для видео 2014"
Автор: EXTERMINATOR
Дата сообщения: 27.02.2004 02:09
У меня MPlayer:
1.Не переходит в fullscreen mode (образовывается черное поле на экране а размеры картинки не меняются)
2.Настройки видео в эквалайзере не работают
Может кто поможет советом (если не советом то может подскажете достойную замену проге)
Автор: Nuck
Дата сообщения: 27.02.2004 20:48
Попробуй VDR для приема телевидения под Линукс, там все интегрированно. уменя все ОК.
Автор: Aleksanders
Дата сообщения: 21.03.2004 06:44
Привет всем!

Запускаю на проигрывание DVD плеер командой:
gmplayer dvd://5 -dvd-device /dev/cdrom
где 5 - номер видеофрагмента, который смотрю, -dvd-device /dev/cdrom - это ключик показывает, что у меня нет девайса DVD, а фильм читается с комбо-привода с именем /dev/cdrom. Звук идет русский. Возникает вопрос - как мне автоматом переключить другую дорожку, например, имеющуюся в наличии немецкую или английскую? Когда запускаю преобразование в opendivx программой mencoder, конвертится наоборот только немецкая звуковая дорожка. Как это переключается из командной строки? Почитал справку - не нашел
Автор: berkut_v
Дата сообщения: 20.05.2004 11:27
Прога супер. Добавлю что и под виндой работает очень хорошо и на машинах П 166 32 мозгов мпег 4 без тормозов на винде, в качестве эксперемента попробывал и офигел.

Aleksanders я дорожку выбираю ключем -aid номер дорожки, правдо под виндой, автоматом не нашел как с дорожки на дорожку прыгать
Автор: kipus
Дата сообщения: 27.05.2004 00:52
Поставил себе Mplayer под винду. В принципе, всем меня устраивает кроме одного:
не хватает полной поддержки ssa субтитров. Они отображаются, но как обычный srt и т.д.
Может быть существует какой-нибудь модуль для ssa?
Автор: mymuss
Дата сообщения: 22.07.2004 06:50
Как заставить MPlayer использоваьт 2-ю звуковую дорожку в обычном avi файле?
/path/to/mplayer -aid 2 file.avi не сработало
(MPlayer OS X 2 v2.0b7, MacOS X 10.3.3)
Автор: sertas
Дата сообщения: 09.09.2004 17:05
А не подскажете,
может ли эта софтина играть видео по ФТП?
Как в виндовой версии указать путь к файлу для проигрывания в виде URL .(по документации вроде такая опция есть)
Автор: kipus
Дата сообщения: 09.09.2004 19:45
sertas
Может. Единственное - на некоторых фтп серверах это почему-то не работает (на G6 и BFTP точно).



Цитата:
Как заставить MPlayer использоваьт 2-ю звуковую дорожку в обычном avi файле?
/path/to/mplayer -aid 2 file.avi не сработало
(MPlayer OS X 2 v2.0b7, MacOS X 10.3.3)

У меня под виндой все прекрасно работает.
mplayer -aid 2 "путь к файлу"

Добавлено
На всякий случай моя версия:
MPlayer dev-CVS-040518-18:06 (C) 2000-2004 MPlayer Team
Автор: Aleksanders
Дата сообщения: 03.01.2005 18:24
Кому-нибудь удавалось прикрутить к сабжу не родные кодеки с сайта, а кодеки, которые распространяются в коллекциях кодеков? Если да, то как?
Автор: Demetrio
Дата сообщения: 05.01.2005 15:17
Aleksanders
Ну а чего там прикручивать?

В Винде их ставишь (или инсталлятор распаковываешь) и потом копируешь куда-нибудь в /usr/lib/win32
Автор: sda00
Дата сообщения: 15.01.2005 14:36
Aleksanders
либо в /usr/lib/ создать папку win32, сделать на неё симлинк (здесь же в /usr/lib/), обозвав его codecs и в эту папку положить любые необходимые кодеки.
Если кодеки идут в экзешнике, то можно попробовать wine/cedega. Проходит на ура.
Автор: zhuman
Дата сообщения: 21.03.2005 15:20
а 3gp файлы у кого-то получается проигрывать *со звуком*?
после добавления в codecs.conf в разделе
[videocodec ffh263] строчки 'format 0x33363273' картинка пошла, а как оживить звук?
В 3GP он хранится в формате AMR.
Автор: eugrus
Дата сообщения: 29.03.2005 12:18
в последнее время всё чаще при запуске gmplayer вылазит ошибка:



В консоли остаётся:
Playing /home/eugrus/films/Spacebattle.avi.
AVI file format detected.
VIDEO: [DX50] 720x480 24bpp 29,970 fps 5721,6 kbps (698,4 kbyte/s)
==========================================================================
Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 48000 Hz, 2 ch, 16 bit (0x10), ratio: 192000->192000 (1536,0 kbit)
Selected audio codec: [pcm] afm:pcm (Uncompressed PCM)
==========================================================================
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffodivx] vfm:ffmpeg (FFmpeg MPEG-4)
==========================================================================
Checking audio filter chain for 48000Hz/2ch/16bit -> 48000Hz/2ch/16bit...
AF_pre: af format: 2 bps, 2 ch, 48000 hz, little endian signed int
AF_pre: 48000Hz 2ch Signed 16-bit (Little-Endian)
[AO OSS] audio_setup: Can't open audio device /dev/dsp: Device or resource busy
alsa-init: got device=0, subdevice=0
alsa-init: 1 soundcard found, using: default


В /etc/udev/permissions.d/50-udev.permissions поменял права на /dev/dsp с 0660 на 0777 - не помогло
Автор: Demetrio
Дата сообщения: 29.03.2005 15:10
Ну так поставь в настройках выводить звук через arts.
Или выруби его нах
Автор: Swappp
Дата сообщения: 29.03.2005 15:40
eugrus

Цитата:
[AO OSS] audio_setup: Can't open audio device /dev/dsp: Device or resource busy

Ну что тут не поняного, другой процес использует /dev/dsp (скорее всего arts, если DE KDE). А от arts действительно стоит избавиться, ну и за одно перейти на ALSA, там можно dmix'ом зделать многопоточный звук.

Добавлено:
Почему у тебя там вообще OSS?

Цитата:
alsa-init: got device=0, subdevice=0
alsa-init: 1 soundcard found, using: default

А здесь alsa?
Попробуй в /etc/mplayer.conf написать

Код: ao=alsa
Автор: eugrus
Дата сообщения: 29.03.2005 17:30

Цитата:
Попробуй в /etc/mplayer.conf написать


Код: ao=alsa
Автор: Swappp
Дата сообщения: 30.03.2005 13:42
eugrus

Цитата:
(только не ao=alsa а просто ao alsa)

Почему? ao (audio output) устанавливается в значение alsa, так же можно передвать в командной строке:

Код: mplayer -ao alsa ...
Автор: eugrus
Дата сообщения: 31.03.2005 19:06

Цитата:
Почему? ao (audio output) устанавливается в значение alsa, так же можно передвать в командной строке:

да не - всё работает
только в mplayer.conf нужно писАть
Код: ao alsa
Автор: eugrus
Дата сообщения: 06.04.2005 22:24
можно ли его научить играть .asx-потоки?
Автор: UKPR
Дата сообщения: 22.05.2005 16:51
MPlayer v1.0pre7 для Windows

Цитата:
Здесь все.
description
Codecs
Fonts
Skins
http://www.mplayerhq.hu/homepage/design7/dload.html
Качаем и любуемся.

Автор: Panzer
Дата сообщения: 22.05.2005 17:19
Возможно ли в MPlayer переключать аудио дорожки в AVI "на лету"? С опцией -aid выбор дорожки делается только с начала воспроизведения.
Автор: Wuyko_WINDOWS
Дата сообщения: 02.06.2005 21:32
UKPR
По указанной ссылке качается действительно все. Однако версии с GUI (MPlayer Windows GUI) имеются и посвежее. Однако, как правило, в GUI версиях нет кодеков в комплекте. Все доступные мне файлы проигрываются и при пустом каталоге Codecs (включая QuickTime и RealMedia). Зачем они тогда нужны?
Автор: sda00
Дата сообщения: 07.06.2005 09:10
Wuyko_WINDOWS

mplayer использует под вином установленные в систему кодеки, и кроме этого, те, что найдёт в /codecs (только в обратной последовательности).

Поэтому, если чего в вине не установлено (или если ты - простой бесправный юзер в корпоративной сетке) - достаточно кинуть в /codecs то, чего не хавтает.

Panzer

на сайте:

Update
Somehow we forgot to mention that we added audio track switching during playback, one of the most requested features since ages. It only works for Matroska and MPEG containers for now and is still experimental, but it's a start. Press the "#" key on a file with multiple audio tracks to try it out.

Автор: Wuyko_WINDOWS
Дата сообщения: 07.06.2005 22:41
sda00

Спасибо, разобрался.
Автор: Oleg_SZ
Дата сообщения: 27.07.2005 10:04
EXTERMINATOR

Цитата:
У меня MPlayer:
1.Не переходит в fullscreen mode (образовывается черное поле на экране а размеры картинки не меняются)


Поменяй драйвер, у меня нормально проигрываются AVI файлы с XV.
Автор: Queer
Дата сообщения: 08.09.2005 14:11
А ftp-streaming у него работает только в passive mode ?
Выключить это никак нельзя ?
Автор: sda00
Дата сообщения: 30.09.2005 20:00
Queer

формально вопрос ftp-streaming passive mode закрыт

wget ftp://micorsops.com/something.avi -O - | mplayer -cache 8192 -
Автор: tolyn77
Дата сообщения: 06.01.2006 09:57
у меня виндовая версия не подскажите как сделать что бы по умолчанию MPlayer всегда был сверху?
зарпанее благодарен
Автор: tolyn77
Дата сообщения: 12.01.2006 10:32
может где в другом форуме можно спросить?

Страницы: 1234567891011

Предыдущая тема: Как вытащить AC3 звук из *vob файла?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.