在android我正在制作一个应用程序,它将录制视频并从中心裁剪视频这样做我发现FFMPEG over google。我跟着http://dmitrydzz-hobby.blogspot.in/2012/04/how-to-build-ffmpeg-and-use-it-in.html
它工作正常,但我想知道如何使用这个`ffmpeg -y -i /sdcard/videokit/short.mp4 -vf crop = 100:100:0:0 -s 320x240 -r 15 -sepect 3: 4 -ab 12288 -vcodec mpeg4 -b 2097152 -sample_fmt s16 /sdcard/videokit/out.mp4
`视频裁剪命令以及在何处编写此命令。
我试过这个(连接只是为了检查一下如何使用ffmpeg命令)
public class MainActivity extends Activity {
private static native int logFileInfo(String[] args);
String pathOut = "/storage/sdcard/12.mp3";
String pathInM = "/storage/sdcard/23.mp3";
String pathIn = "/storage/sdcard/out.mp3";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String[] args = {"ffmpeg", "-i", "concat:", pathOut, "|",pathInM ,pathIn};
logFileInfo(args);
//logFileInfo("/storage/sdcard/12.mp3");
}
static
{
System.loadLibrary("mylib");
}
但是我不知道在mylib.c中写什么来执行这个。有人请帮忙
答案 0 :(得分:0)
您应该能够使用ProcessBuilder生成一个运行ffmpeg的进程:
Process ffmpeg = new ProcessBuilder().command(args).start()
if (ffmpeg.waitFor() != 0) {
// handle failure case
}
(以上代码阻止当前线程直到ffmpeg结束。)
但是,我认为你的更大问题是必须为你所定位的每台设备交叉编译和分发ffmpeg版本。