![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Привет всем! У меня проблема--немогу запустить программу на выполнение в Linux из кода Java методом Runtime.Exec! Вот сама команда:
ffmpeg -i "путь_до_клипа_для_перекодировки_с_!!!пробелами!!!_в_названии" -acodec libfaac -ab 128kb -vcodec mpeg4 -b 1200kb -mbd 2 -flags +4mv+trell -aic 2 -cmp 2 -subcmp 2 -s 320x240 -title X "путь_и_название_клипа_на_выходе_с_!!!пробелами!!!" Вот оригинал:ffmpeg -i "/home/white/Media/Video/Clips/Akon - Don't matter.avi.mp4" -acodec libfaac -ab 128kb -vcodec mpeg4 -b 1200kb -mbd 2 -flags +4mv+trell -aic 2 -cmp 2 -subcmp 2 -s 320x240 -title X "/home/white/Media/Video/Clips/Akon - Don't matter.avi.coded.mp4" Эта команда незапускается на выполнение,хотя из консоли в Linux'e всё хорошо работает! Подскажите как запустить её на выполнение,что б всё работало,а то столько дней мучаюсь-и ничего ![]() ![]() |
|||
|
||||
Hroft |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 20.10.2003 Где: Москва Репутация: 1 Всего: 3 |
Скорее всего интерпретатор не указываете (sh, bash) |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Все равно не запускается
![]() |
|||
|
||||
Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 6 Всего: 92 |
А как ты сейчас её пытаешься запустить? -------------------- Да. Именно так. |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Запускаю вот эту строку:
Это сообщение отредактировал(а) Nord2008 - 3.10.2008, 13:23 |
|||
|
||||
Krivoy |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 6.2.2008 Где: г. Киров Репутация: нет Всего: нет |
ИМХО занеси это все в скрипт и выполняй его.
|
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
а как тогда менять названия и пути к клипам\фильмам?? Парсить и менять каждый раз файл? ![]() |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Ну начнём с того, что эта строка не скомпилируется ![]() И почему путь в Linux ты указываешь через обратный слэш? И вообще неплохо бы писать с каким кодом завершился запуск, или было исключение и какое, или что написал в stdout/stderr. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Вот часть программы,отвечающая за запуск:
сейчас пишет: "process hasn't exited" ![]() |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Уже веселей (по крайней мере слеши заэскейплены
![]() Но все же почему пути так странно указаны? -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
В каком смысле странно?
![]() |
|||
|
||||
Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 6 Всего: 92 |
Я бы попробовал вызывать не одной строкой, а массивом, сделав каждый параметр отдельным элементом.
По идее так решается проблема с пробелами в путях, но может есть ещё какая-то Linux-специфика, я не знаю. -------------------- Да. Именно так. |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
блин,извините,но ничего что то неподходит....
Вот код который сейчас запускаю и ничего:
Это сообщение отредактировал(а) Nord2008 - 3.10.2008, 15:03 |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
В Linux в качестве разделителя пути используется прямой слэш /, а не обратный \, как у тебя. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Всё равно не получается так!
![]() |
|||
|
||||
Krivoy |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 6.2.2008 Где: г. Киров Репутация: нет Всего: нет |
Пути можно задавать как параметры к запуску и обращаться к ним как $1 $2 и т.д. У тебя --- String[] cmd ={"ffmpeg","-i", ..... и т.д. --- не задумывался что выполняться будет ffmpeg-i .... и т.д. - думаю врядли такая команда есть ![]() Образец скрипта:
Ну к примеру назевёшь ты его tydysh.sh и соответственно первым параметром запуска первый путь, вторым второй ---
Еще раз обращаю внимание на пробелы! Ну и на путь до скрипта. |
||||||||
|
|||||||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Спасибо большое! Попробую!(думаю что это выход!
![]() |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Ещё раз всем СпАсИбО!
![]() |
|||
|
||||
SoulKeeper |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 14.1.2007 Где: Ukraine, Lviv. Репутация: 11 Всего: 15 |
На прямую ffmpeg дёргать можно, передавая ему параметры.
Юзали его на проекте. Что у дэвов под виндой, что на сервере под линухом - работало идеально. |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Напиши поподробнее как делали! ![]() |
|||
|
||||
SoulKeeper |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 14.1.2007 Где: Ukraine, Lviv. Репутация: 11 Всего: 15 |
getCodecPath() возвращает путь к ffmpeg, getAttachmentsDirectory() рабочую папку для нового процесса. Это сообщение отредактировал(а) SoulKeeper - 8.10.2008, 11:21 |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Спасибо большое за помошь! Но подскажи что-за прогцедура getCodecPath() (если можете,и вас незатруднит распишите её) И ещё вопросик: у вас прога склеивает видеофайл и звуковой в оди flv ?
|
|||
|
||||
SoulKeeper |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 14.1.2007 Где: Ukraine, Lviv. Репутация: 11 Всего: 15 |
Да, склеивает.
getCodecPath() возвращает путь к ffmpeg. Берется из конфига, т.к. на линухе и винде разный. |
|||
|
||||
Nord2008 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 3.10.2008 Репутация: нет Всего: нет |
Привет. Вот мой код:
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |