Передача Java в FFMPEG не работает и не выдает ошибкуJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Передача Java в FFMPEG не работает и не выдает ошибку

Сообщение Anonymous »


Я пишу загрузчик подкастов, в котором хочу иметь возможность загружать один или несколько подкастов, а затем запускать их через FFMPEG.

Она запускается, когда я запускаю программу в Windows.
Он не запускается, когда я запускаю программу в Linux. Это означает, что FFMPEG мог быть вызван, а мог и не быть вызван. У меня нет возможности узнать. Я получаю -1 в ответ от процесса.waitfor(), но в моих журналах Java нет ошибок и вообще нет записей в файле ffmpeg.log. И в каталоге обработанных файлов нет файла, который мог бы создать FFMPEG.
Он работает в Linux, если я запускаю из командной строки ту же команду, которая не работает в Java.

У FFMPEG есть разрешения: rwxr-xr-x , поэтому не похоже, что это ошибка разрешения. Код Java выглядит так:

ProcessBuilderprocessBuilder = новый ProcessBuilder(команды); processBuilder.redirectErrorStream(истина); // Добавлена ​​следующая строка, чтобы проверить, смогу ли я зарегистрировать ошибку из ffmpeg processBuilder.redirectOutput( ProcessBuilder.Redirect.appendTo(new File( "./ffmpeg.log" ) )); Процесс процесса = процессBuilder.start(); BufferedReader bufferedOutputReader = новый BufferedReader (новый InputStreamReader (process.getInputStream())); делать { outputString = bufferedOutputReader.readLine(); если (выходная строка!= ноль) { LOGGER.trace(выходная строка); } } Пока (outputString!= null); результаты = процесс.waitFor(); LOGGER.debug("Значение выхода: " + результаты); Команды:

2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils — командная строка: /bin/ffmpeg 2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - командная строка: -y 2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - командная строка: -i 2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - командная строка: "/home/todd/aggregator/incoming/Downrange Radio/Downrange_Radio_2023-02-15_The_Avidity_PD -10_Delivers_.mp3" 2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - командная строка: -ac 2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - командная строка: 1 2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - командная строка: -af 2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - командная строка: "atempo=1.4,volume=1.4" 2023-10-25 16:21:52,452 224257 [pool-1-thread-4] DEBUG org.sperbolink.utils.CodecUtils - командная строка: "/home/todd/aggregator/processed/Downrange Radio/Downrange_Radio_2023-02-15_The_Avidity_PD -10_Delivers_.mp3" И созданная и запущенная вручную командная строка, которая ДЕЙСТВИТЕЛЬНО работает:

/bin/ffmpeg -y -i "/home/todd/aggregator/incoming/Downrange Radio/Downrange_Radio_2023-02-15_The_Avidity_PD-10_Delivers_.mp3" -ac 1 -af "atempo=1.4,volume=1.4 " "/home/todd/aggregator/processed/Downrange Radio/Downrange_Radio_2023-02-15_The_Avidity_PD-10_Delivers_.mp3" Файл ffmpeg.log пуст, поэтому я сомневаюсь, что FFMPEG когда-либо будет достигнут.

Что я делаю не так?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»