使用FFmpeg将本地.mp4视频从android发布到wowza
我正在尝试使用ffmpeg java包装器将本地.mp4视频从SD卡发布到wowza 我已经使用了在Android上执行ffmpeg命令 在Android上,我的代码如下所示:使用FFmpeg将本地.mp4视频从android发布到wowza,android,video,ffmpeg,Android,Video,Ffmpeg,我正在尝试使用ffmpeg java包装器将本地.mp4视频从SD卡发布到wowza 我已经使用了在Android上执行ffmpeg命令 在Android上,我的代码如下所示: FfmpegController objController = new FfmpegController(MainActivity.this, new File("/tmp")); //objController.installBinaries(MainActivity.this,tru
FfmpegController objController = new FfmpegController(MainActivity.this, new File("/tmp"));
//objController.installBinaries(MainActivity.this,true);
mFfmpegBin = objController.installBinary(MainActivity.this, R.raw.ffmpeg, "ffmpeg", true);
//no just extract the audio
ArrayList<String> cmd = new ArrayList<String>();
//-f dshow -i video="Integrated Camera" out.mp4
cmd.add(mFfmpegBin);
//cmd.add("-sample_fmts");
cmd.add("-re");
cmd.add("-i");
cmd.add("/sdcard/sample.mp4");
cmd.add("-c");
cmd.add("copy");
cmd.add("-f");
cmd.add("flv");
cmd.add("rtsp://192.168.1.35:1936/live/myStream");
objController.execFFMPEG(cmd, new ShellUtils.ShellCallback() {
@Override
public void shellOut(String shellLine) {
// TODO Auto-generated method stub
System.out.println("shell out" + " " +shellLine);
}
@Override
public void processComplete(int exitValue) {
// TODO Auto-generated method stub
System.out.println("process complete::" + " " +exitValue);
}
});
}catch(Exception ex){
ex.printStackTrace();
}
}
为什么Android不支持该协议。当我使用ffmpeg从windows命令行运行相同的ffmpeg命令时,它工作正常
命令是,
ffmpeg-re-i sample.mp4-c copy-f flvrtmp://192.168.1.35:1936/live/myStream
可以请人帮忙吗?您应该显示
ffmpeg
的完整输出。可能librtmp
没有编译/链接到您的构建中。如何链接librtmp@MulvyaFFmpeg具有本机RTMP支持。你的命令各不相同。一个输出到rtsp,另一个输出到rtmp。完整的控制台输出将提供有用的信息。
shell out Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/sdcard/sample.mp4':
shell out rtmp://192.168.1.35:1936/live/myStream: Protocol not found