melksoft 20.11.2010 22:40
Скрипты на bash — Мой вариант скрипта конвертирования видео для плеера
Тут уже был скрипт конвертирования видео на Perl, я пользуюсь своим вариантом на Bash. Немного быдлокода included.Принимает параметры ./convert.sh где_искать куда_кидать.
Скрипт ищет все видеофайлы в заданной директории, отдает их mencoder'у, пробуя подсунуть ему str-сабы с таким же именем.
Затем удаляет исходное видео, сабы и пустые директории.
Wav-файлы сгенерены фестивалем, подумал лучше хранить их на диске, чем каждый раз дергать фестиваль.
Требует: mencoder (то, чем собственно все конвертится), libnotify-bin (для нотификаций, sox (для воспроизведения wav).
Скачать скрипт аудиофайлы.
Исправил. Файлы латиницей переписывать не буду - лишняя морока только, да и так мне сразу понятно на каком языке файл и что в нем содержится. А еще скрипт их с русскими именами генерит.
#!/bin/bash
echo "$1" | text2wave -o "$HOME/.say/$1.wav" -eval "(voice_msu_ru_nsh_clunits)"
play -q ~/".say/$1.wav"
Было бы неплохо чтоб скрипт перед конвертированием вычислял правильные ширину и высоту конечного файла, а не просто прописывал 320 на 240.
Проигрывателю потом приходится самому их вычислять исходя из соотношения сторон.
Специально скормил ему файл с разрешением 768x238. После конвертирования плеер ресайзит его из 320x240 в 774x240 o_O
Проигрывателю потом приходится самому их вычислять исходя из соотношения сторон.
Специально скормил ему файл с разрешением 768x238. После конвертирования плеер ресайзит его из 320x240 в 774x240 o_O
Можно сделать, но смысла мало. Изображение почти не искажается и так, вычислять правильный скейл сложно, да и на плеере будут черные полосы.
Зато размер увеличивается, ну и -vf scale=-3:$height или $width:-3 - автоматом сам посчитает соотношение исходя из имеющегося параметра.
И ещё, незначительное:
play -q "$HOME/.say/Начато конвертирование.wav"
или так
play -q ~/.say/Начато\ конвертирование.wav
Хотя ещё лучше бы файлы именовать латиницей и без пробелов.