Довольно длительные и упорные поиски в англоязычном сегменте интернета таки были вознаграждены правильными советами. Обсуждаемый плеер с удовольствием кушает правильно и старательно приготовленный AVI: только с нравящимися ему ингридиентами, и только под авторским соусом.
В качестве кухонного комбайна я взял ffmpeg. Он есть в репозиториях.
$ sudo aptitude install ffmpeg
Чтобы сконвертировать видео в нужный формат, можно выполнить вот такую команду:
$ ffmpeg -y -i ljudi_x.mkv -cropleft 120 -cropright 120 -croptop 28 -cropbottom 28 -f avi -vcodec libxvid -s 320x240 -b 400kb/s -r 30 -aspect 4:3 -acodec libmp3lame -ab 192kb/s -ac 2 x_mans.svi
Немного пояснений.
-y - Перезаписываем файл назначения, если по какой-то причине мы начали процесс заново.
-i - Имя исходного файлы в любом поддерживаемом ffmpeg формате.
-cropleft, cropright, croptop, cropbottom, padleft, padright, padtop, padbottom - Обрезаем края и добавляем черные полоски. Это нужно, когда соотношение сторон кадра в исходном видео отличается от 4:3. Если не обрезать, то морды будут вытянутые или сплюснутые. Чтобы подобрать правильные числа, необходимы знания элементарной математики. Обрезание происходит до преобразования, так что манипулировать нужно именно с исходным размером. Узнать их можно, например, запустив конвертацию (после чего ее можно тут же оборвать комбинацеий Ctrl+C). ffmpeg выведет в первых строках своего письма основные данные об исходном формате. Если же вы не умеете считать или просто влом, можете упустить эти параметры.
-f - Формат файла назначения.
-vcodec - Кодек для кодирования видео. Нужен именно libxvid.
-s - Размер кадра на выходе. В примере - разрешение нашего плеера.
-b - Количество данных в секунду - по сути качество. Мне с таким размером хватило 400kb/s. Хотя кто-то предлагал 2000.
-r - количество кадров в секунду. Можно попробовать убрать, чтобы частота кадров не менялась. Не помню, работает ли с другими значениями.
-aspect - соотношение сторон на выходе.
-acodec - Кодек для звука. Нужен именно libmp3lame.
-ab - Количество данных в секунду для звука. По сути качество звука. Рекомендуют три варианта значения, из которых я взял максимальное: 192kb/s. Делать меньше никакого смысла не вижу. Итак нихрена не видно на мелком экране, пусть хоть звук будет нормальный :)
-ac - Количество каналов звука (2 для стерео).
Вот такие настройки работают. Шаг вправо, шаг влево - и может уже не читать.
Если во время конвертации вы хотели бы иметь возможность делать на вашем компьютере что-то еще, читайте про ограничение использования процессора процессом
вместо использования cpulimit можно в начало команды добавить nice -19 ffmeg ...
ОтветитьУдалитьТогда будут отъедаться только незанятые ресурсы процессора..
Спасибо! Не знал такого способа установки приоритета :)
ОтветитьУдалитьОднако, nice лично у меня не решает проблему полностью, все равно система медленно откликается, плюс на винт ведь nice не поставишь.
А почему именно 19?
Я уже в соседнем посте отписался. ionice.
ОтветитьУдалитьА почему 19 и прочее man nice
man ionice
Там все подробно описано, честно!
Спасибо полезно :)
ОтветитьУдалить