Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
rabotaem_s_video [2013/12/25 11:25]
ansealk
rabotaem_s_video [2013/12/25 11:28] (текущий)
Строка 1: Строка 1:
 +====== Работаем с видео ======
  
 +===== Замена звуковой дорожки =====
 +Чтобы заменить в фильме звуковую дорожку и вывести результат в файл out.avi, делаем так: ​
 +<code bash>​mencoder исходный_файл.avi -ovc copy -oac copy -audiofile файл_со_звуком.mp3 -o out.avi</​code>​
 +
 +===== Извлечь звуковую дорожку =====
 +Из фильма звук можно вытащить двумя способами. ​
 +  - Вытаскивание потока без изменений. Это быстрый метод. Делается командой вида<​code bash>​mplayer –dumpfile track.mp3 –dumpaudio video.avi</​code>​ где video.avi - файл с фильмом,​ track.mp3 - генерируемый файл звуковой дорожки.
 +  - Вытаскивание потока в виде wav файла. Это медленный метод. Фильм запускается на проигрывание,​ и аудиопоток пишется в файл. То есть, получение звуковой дорожки будет продолжаться столько,​ сколько длится фильм <code bash>​mplayer -ao pcm:​file=audio.wav video.avi</​code>​ Преимущество - каким бы кодеком ни был закодирован звук, можно гарантированно получить обычный wav-файл. Если компьютер медленный,​ и при проигрывании всё подтормаживает и заикается,​ wav файл всёравно получится качественным.
 +
 +===== Выбрать звуковую дорожку =====
 +
 +Иногда попадаются диски, на которых MPEG4-фильм записан таким образом,​ что перевод идёт дополнительным аудиопотоком,​ и по умолчанию плейер его не видит. С помощью mplayer'​а этот второй звуковой поток становится доступным,​ если запустить фильм командой:​
 +<code bahs>​mplayer -aid 2 имя_файла.avi</​code>​
 +Здесь 2 - номер потока,​ обычно перевод идет как второй.
 +
 +Чтобы узнать,​ какие звуковые потоки есть в фильме,​ можно дать команду
 +<code bahs> mplayer -vo null -ao null -frames 0 -v имя_файла | grep aid</​code>​
 +
 +===== Вытащить видеопоток из MKV =====
 +Вытащить видеопоток из mkv в обычный avi можно так
 +<code bash> mencoder ~/foo.mkv -nosound -ovc copy -of avi -o ~/​foo.avi</​code>​
 +если mencoder откажется вытаскивать видеопоток,​ то его можно вытащить mkvextract с параметром --raw (иначе,​ если извлекаемый поток в формате VC1, mkvmerge поместит вытащенный видеопоток не в элементарный VC1-видеопоток,​ а в AVI, который не будет воспроизводиться)
 +<code bash>​mkvextract tracks ~/foo.mkv --raw 1:~/foo.vc1 && mencoder ~/foo.vc1 -nosound -ovc copy -of avi -o ~/​foo.avi</​code>​
 +теперь mkvmerge правильно подхватит VC1 поток из этого avi.
 +
 +Примечание - программы mkvextract и mkvmerge обычно располагаются в пакете mkvtoolnix.
 +
 +===== Перекодировать AC3 в MP3 =====
 +С помощью mencoder можно перекодировать AC3 в любой нужный формат,​ например в MP3. Для этого надо воспользоваться скриптом aconvert.sh,​ который лежит в каталоге TOOLS в дереве исходников mplayer.
 +<code bash>​aconvert.sh <"​input file">​ <"​output file">​ <"​options"></​code>​
 +Чтобы переконвертировать AC3 в MP3, достаточно ввести
 +<code bash>​aconvert.sh sound.ac3 sound.mp3</​code>​
 +и в результате получится MP3 файл с битрейтом 128Кбит/​сек.
 +
 +Код скрипта aconvert.sh ​
 +<file bash aconvert.sh >
 +#!/bin/sh
 +# Author: Jonas Jermann
 +# Description:​ A hack to allow mencoder to encode from an audio only file
 +if [ "​$1"​ = ""​ ]; then
 +    echo "​Usage:​ $0 <​\"​input file\">​ <​\"​output file\">​ <​\"​options\">"​
 +    exit 0
 +fi
 +options=${3:​-"​-oac mp3lame"​}
 +mencoder -demuxer rawvideo -rawvideo w=1:h=1 -ovc copy -of rawaudio -endpos `mplayer -identify $1 -frames 0 2>&1 | grep ID_LENGTH | cut -d "​="​ -f 2` -audiofile $1 -o $2 $options $1
 +</​file>​
rabotaem_s_video.txt · Последние изменения: 2013/12/25 11:28 (внешнее изменение)
GNU Free Documentation License 1.3
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 Яндекс.Метрика