したがって、.flvファイルを他の形式に変換するプログラムを作成しています。 私はffmpegを使用しています.ffmpegは、コマンドラインで実行すると完全にその仕事をします。例:外部コマンドが完全に実行されない - Java
ffmpeg -i C:\test.flv -acodec libmp3lame -y C:\test.mp3
この例は、魔法のように機能します。コマンドを実行すると、1つの問題はありません。
しかし、私はJavaクラス内から同じコマンドを実行しようとすると問題が発生します。私はtry-catchブロックでこれを行います:
System.out.println("Start");
Process p = Runtime.getRuntime().exec("cmd /c ffmpeg -i C:\test.flv -acodec libmp3lame -y C:\test.mp3");
System.out.println("End");
コンソールは「スタート」を表示します。変換を開始して終了しません。
誰かが私を助けることができますか?
「終了」も印刷されますか? – Nerdtron
C:\ testの\ tはC: estとして渡されます。ところで...バックスラッシュをエスケープする必要があります。 –
'ffmpeg'は' DOS'コマンドではありません。これはコマンドラインプログラムです。 –