Создание видео для Ipod (Iphone) в Ubuntu Linux
Для кодирования под форточками (Windows) лучшим кодировщиком является XviD4PSP. А вот для кодирования под Linux можно использовать различные комбинации и программы.
Напишу о программе, точнее о скрипте Podencoder. Скрипт позволяет кодировать видео для ipod-a прям с DVD привода, либо с папки VIDEO-TS если мы ее куда то скопировали. Так же позволяет кодировать файлы avi, wmv и др.
А теперь про установку. Для работы скрипта необходимо установить: lsdvd mplayer gpac zenity mencoder.
apt-get install lsdvd mplayer gpac zenity mencoder
Скачиваем сам скрипт: wget http://podencoder.googlecode.com/svn/trunk/podencoder -O /usr/sbin/podencoder
-O позволяет указать куда сохранять файл
Делаем исполняемым: chmod +x /usr/sbin/podencoder
Подробную информацию можно получить используя команду: podencoder --help
Для того чтобы перекодировать файл необходимо его просто указать скрипту название файла: podencoder video.avi
Если в вашем компьютере достаточно памяти т.е. больше 2-х gb можно хранить временные файлы кодирования в памяти, это позволяет увеличить скорость кодирования на 10%. Для этого необходимо, создать раздел и подключить его:
mkdir /tmp/tmpfs
mount -t tmpfs tmpfs -o size=1024M,nr_inodes=1M /tmp/tmpfs/
Команда позволяет создать раздел на 1 Гб и монтируется в /tmp/tmpfs. Если вы положите сюда файлы, то скорость считывания с этой папки будет намного быстрее чем с другого места, но если вы оставите эти данные там и перезагрузите систему то их там уже не будет, т.к. это оперативная память. Для того чтобы использовать этот раздел для временных файлов при кодировании надо указывать параметр -s:podencoder -s /tmp/tmpfs video.avi
Еще одна особенность заключается в том что podencoder-у можно передавать один файл, например если у вас есть папка с каким-то сериалом где лежат одни avi файлы, вам придется указывать их либо по одному и дожидаться когда он перекодируется, либо использовать оператор && и писать команду для каждого файла. Это очень неудобно, поэтому я сделал небольшой скрипт на bash-е чтобы просто указав директорию он брал оттуда все файлы и кодировал.
Создаем произвольный файл и даем права на исполнение:
touch decode.sh
chmod +x decode.sh
Вносим сам скрипт:
#!/bin/bash
for i in $( ls $1 ); do
podencoder -o $2 $1$i
done
Использование: ./decode.sh путь_к_папке_с_видео пробел путь_куда_складывать_готовые_файлы
Путь к папке должен заканчиваться / В папке не должно лежать ничего кроме видео файлов. Если не нравится, то доделывайте скрипт ![]()
p.s. если мои буковки вас устроили, тыкните плиз пару раз на гуглорекламу (если ее видно), вверху страницы.