Java中使用ffmpeg对rstp推流
官方集成的项目
链接: FFCH4J项目地址
rtsp推流
ffch4j项目如何使用
项目是直接能够使用的,可以直接在pom.xml中导入依赖,依赖就在下载FFCH4J的pom.xml中。
命令测试
默认方式,rtsp->flv转流单个命令测试,这里我是直接将流堆到本地的,文件名fileName可以自取。
测试代码 。
// CommandManager manager = new CommandManagerImpl();
// -rtsp_transport tcp
//测试多个任何同时执行和停止情况
//默认方式发布任务
manager.start(id, " -i rtsp://@192.168.xxx.xxx:8554/xxx -vcodec copy -acodec copy -f flv -y D://2/3/"+fileName+".flv");
Thread.sleep(30000);
// 停止全部任务
manager.stopAll();
CommandManager manager = new CommandManagerImpl();
// -rtsp_transport tcp
//测试多个任何同时执行和停止情况
//默认方式发布任务
manager.start(id, " -i rtsp://@192.168.xxx.xxx:8554/xxx -vcodec copy -acodec copy -f flv -y D://2/3/"+fileName+".flv");
Thread.sleep(30000);
// 停止全部任务
manager.stopAll();
运行结果
如何获取rtsp流?
在网上下载一个vlc播放器,之后可以对MP4的视频文件进行
串流,首先点击串流,之后点击添加,添加过后点击串流,之后点击下一个
在新目标中选择rstp,之后点击添加
端口号默认为8554,路径自己填写,我填写的是123
之后勾选掉激活转码,配置文件选择(MP4)的,再点击下一个
勾选串流所有基本流,最后点击流
最后新开一个vlc,注意:一定是新开一个!点击网络串流
输入你的地址和端口号,就可以播放了。
之后在代码中测试,就可以进行推流了