不知为何不能生成录制文件!求大神帮忙
logger.info( "视频直播进行ffmpeg录制中...");
long startTime = System.currentTimeMillis();
List<String> commend = new ArrayList<String>();
commend.add(FileUtils.getConvertToolsDir() + "ffmpeg.exe");
commend.add("-y");
commend.add("-i");
//commend.add(rtmpString+fileString+" live=1");
commend.add(rtmpString+fileString);
// 视频选项
commend.add("-vcodec"); // 编码器
commend.add("copy");
commend.add("-acodec"); // 编码器
commend.add("copy");
commend.add("-b"); // 码率
commend.add("128k");
commend.add("-s"); // 图像分辨率
commend.add("320*240");
commend.add("-f");
commend.add("flv"); // 输出flv格式
commend.add(recordVideoDirsString+todayStr+".flv");
//commend.add("d:/x.flv");
logger.info(commend.toString());
try {
ProcessBuilder builder = new ProcessBuilder();
builder.command(commend);
Process p = builder.start();
doWaitFor2(p);
//p.destroy();
long endTime = System.currentTimeMillis();
System.out.println(endTime);
logger.info("ffmpeg录制直播结束,耗时" + (endTime-startTime) + "ms.");
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
------解决方案--------------------
cmd 退出码是啥?还有,执行情况有 log 输出,最好追踪一下
------解决方案--------------------
ffmpeg 的 log 输出