FFMPEG を使用してビデオをフレームに変換するプログラムを作成したいと考えています。Ubuntu端末で使用すると、正常に動作します。しかし、それを Java コードに入れようとすると、実行時エラーが発生します。以下のコードで間違いを犯しましたか?
import java.util.*;
import java.awt.*;
import java.lang.*;
import java.lang.Runtime;
import java.io.*;
import java.io.IOException;
public class ConvertVideoToImage
{
private SingletonServer ss = null;
public ConvertVideoToImage(SingletonServer ss)
{
this.ss = ss;
}
public void run()
{
convertVideo();
}
public void convertVideo()
{
try
{
Runtime rt = Runtime.getRunTime().exec("ffmpeg" + "-i" + "display.wmv" + "image%d.jpg");
}
catch(Exception e){}
}
}
編集:
あなたが提案したようにコードを変更しましたが、それも機能しません。そして、Googleで検索したところ、誰かが実行可能ファイル内にフルパスを入力したことがわかり、次のようになりました。
Runtime.getRuntime().exec("/home/pc3/Documents/ffmpeg_temp/ffmpeg -i display.wmv image%d.jpg")
ところで、返信ありがとうございます。別の質問があります。FFMPEGのカウンターを作ることは可能ですか? Ubuntu ターミナルでこのコマンドを使用して、ビデオを 30 フレーム/1 秒に変換しました。
ffmpeg -i display.wmv image%d.jpg
これにより、image1.jpg、image2.jpg、image901.jpg などの番号が自動的に生成されます。これに対するカウンターを作ることは可能ですか?ファイルを数えて数を制御する必要があるためです。
前もって感謝します。