import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class CmdRunnable implements Runnable{
private String channel="";
private Boolean isRun=false;
private Process process=null;
@Override
public void run() {
Thread.currentThread().setName("ffmpeg"+channel);
String command="ffmpeg -f rtsp -rtsp_transport tcp -i" +
" \"rtsp://admin:abcd1234@192.168.10.11:554/Streaming/Channels/"+channel+"01\"" +
" -vcodec libx264 -vprofile baseline" +
" -acodec libmp3lame -ar 44100 -ac 1 -f flv" +
" rtmp://172.18.1.229:1935/live/show"+channel;
try {
cmd(command);
}catch (Exception ex){
if (ex instanceof InterruptedException){
System.out.println("关闭线程:"+Thread.currentThread().getName());
}else {
ex.printStackTrace();
}
}finally {
isRun=false;
process.destroy();
}
}
private void cmd(String command) throws IOException, InterruptedException {
String line=null;
Runtime runtime = Runtime.getRuntime();
process = runtime.exec(command);
//用于存储执行命令的错误信息
Thread out = new Thread(new CmdReadRunnable(channel,new InputStreamReader(process.getErrorStream(),"GB2312")));
out.start();
process.waitFor();//会堵塞线程
}
public CmdRunnable(String channel) {
this.channel=channel;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Cmd.rar (18个子文件)
Cmd
src
CmdRunnable.java 2KB
MyThreadFactory.java 340B
Main.java 921B
CmdReadRunnable.java 817B
.idea
misc.xml 489B
compiler.xml 734B
workspace.xml 26KB
description.html 97B
encodings.xml 171B
smartfox_info.xml 188B
inspectionProfiles
Project_Default.xml 8KB
modules.xml 253B
vcs.xml 173B
Cmd.iml 508B
out
production
Cmd
CmdReadRunnable.class 2KB
Main.class 1KB
CmdRunnable.class 3KB
MyThreadFactory.class 679B
共 18 条
- 1
资源评论
- gzuguo2019-07-16上当了,大家不要下载,大骗子一个
LZM
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功