Bash-скрипт и mencoder
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Bash-скрипт и mencoder - 2011-08-09 20:25:23.136666
|
|
|
lampa100
Сообщений: 13
Оценки: 0
Присоединился: 2011-07-31 16:51:16.920000
|
Здравствуйте. Возникла такая проблема с утилитой mencoder. У меня есть Mp3-плаюре samsung yp-q2, который может воспроизводить видео. Я сам по натуре анимешник, и нужно на mp3-шник скинуть мои анимешки. И вот тут у меня появляется проблема =-( у каждой анимешки, серий очень много. Начиная от 12 серий, заканчивая 340 и выше. Раньше я поступал так:
# Macross Frontier - 01.avi
mencoder Macross\ Frontier\ -\ 01.avi -o Macross\ Frontier\ -\ 01.svi -ovc lavc -lavcopts vcodec=mpeg4 -vf scale=320:240,crop=320:240 -mf fps=25 -oac mp3lame -lameopts cbr:br=192
# Macross Frontier - 02.avi
mencoder Macross\ Frontier\ -\ 02.avi -o Macross\ Frontier\ -\ 02.svi -ovc lavc -lavcopts vcodec=mpeg4 -vf scale=320:240,crop=320:240 -mf fps=25 -oac mp3lame -lameopts cbr:br=192
И так далее, всего в этой анимешке 25 серий. И естественно каждый раз писать одну и туже команду в терминале это не удобно. Гораздо проще было бы написать скрипт, который подставлял каждый раз эти цифры от "01-25" . Или же чтобы он допустим заходил в директорию 1. "/media/442CA2357CE1AA4A/Res/anime/Macross\ Frontier\ TV" 2. от туда брал все файлы с указным разрешением *.avi и из имени каждого файла он брал его имя и подставлял его в mencoder то есть выгладила это как то так : В скрепите y = Macross\ Frontier\ -\
x = [01-25]
mencoder $y $x.avi -o $y $x.svi .... что- там А в самой программе подставлялось :
mencoder Macross\ Frontier\ -\ 01.avi -o Macross\ Frontier\ -\ 01.svi .... что-то там ---> далее конвертация Видео ---> переход к следующему видео
mencoder Macross\ Frontier\ -\ 02.avi -o Macross\ Frontier\ -\ 02.svi .... что-то там ---> далее конвертация Видео ---> переход к следующему видео
mencoder Macross\ Frontier\ -\ 03.avi -o Macross\ Frontier\ -\ 03.svi .... что-то там ---> далее конвертация Видео ---> И тд конца подстановки всего этого "x = [01-25]" ——————————————– Я очень слабо представляю что нужно делать . В bash скриптах я не силён. Поэтому описал все как можно доступнее.
|
|
|
RE: Bash-скрипт и mencoder - 2011-08-09 22:11:39.386666
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
for ((i=1; i <= 25; i ++)); do
n=`printf '%02d' $i`
echo nice -n 10 mencoder "Macross Frontier - $n.avi" -o "new-name-$n.svi"
done Если этот код напечатает правильную последовательность команд, то надо убрать echo и запустить ещё раз, он начнёт работать.
|
|
|
RE: Bash-скрипт и mencoder - 2011-08-10 01:19:43.983333
|
|
|
lampa100
Сообщений: 13
Оценки: 0
Присоединился: 2011-07-31 16:51:16.920000
|
rgo Спасибо))) я хоть мало что понял. Всё токи с башем вообще дело имел мало. на сколько я понял у нас. for - начало цикла ((i=1; i <= 25; i ++)); - не совсем понял но похоже выполняет 1 раз , с повтором 25 ; do - что там о должен сделать n=`printf '%02d' $i - вот это строка вообще не понятна, тут $i перекладывает номинацию на n? echo nice -n 10 mencoder "Macross Frontier - $n.avi" -o "new-name-$n.svi" - тут все ясно , простой shell done - конец функции… И ещё один вопрос, возможно он тупой, но в начале сценария писать #/bin/bash
|
|
|
RE: Bash-скрипт и mencoder - 2011-08-10 02:17:38.023333
|
|
|
lampa100
Сообщений: 13
Оценки: 0
Присоединился: 2011-07-31 16:51:16.920000
|
всё разобрался что и как работает, только зачем нужна вот эта штука "nice -n 10" ведь скрипт успешно работает без него
|
|
|
RE: Bash-скрипт и mencoder - 2011-08-10 08:07:08.110000
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
Чтобы процесс перекодирования не мешал бы тебе работать за компьютером.
|
|
|
RE: Bash-скрипт и mencoder - 2011-08-12 01:19:27.520000
|
|
|
xakir2
Сообщений: 55
Оценки: 0
Присоединился: 2010-05-28 13:57:22.590000
|
убрать надо echo и запустить и без него работать будет
|
|
|
RE: Bash-скрипт и mencoder - 2011-08-12 02:18:36.796666
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
quote:
ORIGINAL: xakir2 убрать надо echo и запустить и без него работать будет echo там нужен не для того чтобы работало, а для того, чтобы не работало. =) С echo этот скрипт ничего не делает, но зато пишет в консольку что он сделает если убрать echo. Простейший способ отладки скриптов. Очень полезный кстати, иначе недолго какую-нибудь такую хрень намутить, что потом замучаешься восстанавливать. Правда не в данной ситуации, но… что поделаешь, привычка.
|
|
|
|
|