2017-05-29 64 views
1

我在命令提示符下成功執行了下面的FFMPEG終端命令。但是我無法在我的java程序中執行這個命令。我可以在我的java程序中執行所有其他沒有雙引號的ffmpeg命令。這裏我只會用雙引號(「...」)來混淆。如何在java中運行ffmpeg命令(windows)

ffmpeg -i "concat:C:\\journalism\\videos\\vid1.ts|C:\\journalism\\videos\\vid2.ts" -c copy C:\\journalism\\videos\\output.mp4 

我可以在命令提示符下成功執行。但我在我的java代碼中嘗試了下面的代碼。

Runtime.getRuntime().exec("C:\\ffmpeg\\bin\\ffmpeg -i 'concat:C:\\journalism\\videos\\vid1.ts|C:\\journalism\\videos\\vid2.ts' -c copy C:\\journalism\\videos\\output.mp4"); 

即使我試着用單引號('...')替換雙引號(「...」)。但沒有成功。

誰能幫我走出這個問題...

在此先感謝...

回答

1

我發現答案自己。而不是使用String對象,我使用瞭如下的String數組,然後該命令成功執行。

String[] cmd={"C:\\ffmpeg\\bin\\ffmpeg","-i", "concat:C:\\journalism\\videos\\vid1.ts|C:\\journalism\\videos\\vid2.ts", "-c", "copy", "C:\\journalism\\videos\\output.mp4"}; 
Runtime.getRuntime().exec(cmd); 
0

我的程序正在運行,我只是使用如下。希望它對你有所幫助:

String cmd =「ffmpeg -i http://117.103.224.78/videoinput/Video1.mp4 -s 1920x1080 -c:副本D:\\ tmp \\ Video2.mp4」;

進程p = Runtime.getRuntime()。exec(cmd);