本地实现Rtsp视频流推送
简言:使用ffmpeg实现本地视频流推送
srs存储(延时推送)
准备工作
安装包:
ffmpeg:http://ffmpeg.org/download.html
EasyDarwin:EasyDarwin流媒体音视频资源汇总
srs安装教程地址:http://t.zoukankan.com/innershare-p-11045363.html
也可以使用我上传的资源,需要0积分,可以放心下载
https://download.csdn.net/download/m0_71817461/90622799
https://download.csdn.net/download/m0_71817461/90622802
https://download.csdn.net/download/m0_71817461/90622805
ffmpeg
安装ffmpeg:找一台带摄像头的电脑安装ffmpeg,windows环境,注意:配置环境变量
下载完成之后对电脑摄像头进行查询:(在doc命令窗口进行)查询出摄像头之后以备后用
ffmpeg -list_devices true -f dshow -i dummy
EasyDarwin
在本机安装EasyDarwin-windows-8.1.0-1901141151,下载解压之后,直接双击EasyDarwin.exe进行运行
srs
srs使用的是docker镜像,所以需要先安装docker,安装docker可以参考:docker安装(手动和yum源方式)_docker yum源配置-CSDN博客
srs的具体安装操作可以参考地址:http://t.zoukankan.com/innershare-p-11045363.html
实现Rtsp推流
在有摄像头的电脑上打开doc命令窗口,执行以下命令
ffmpeg -f dshow -i video="摄像头名称" -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -rtsp_transport tcp -f rtsp rtsp://本机IP地址/可修改的streamId
(注意,在执行这条命令之前,须在本机把EasyDarwin.exe运行,不然会推流失败)
执行完成之后,就可以在VLC上进行拉流操作,拉流地址为rtsp://本机IP地址:554/test
(其中554是EasyDarwin默认端口)
以上实现rtsp推流操作
使用java代码转码
java是实现视频流Rtsp转Rtmp-CSDN博客
非srs存储(实时推送)
准备工作
安装包
Pingos:https://github.com/pingostack/pingos
ffmpeg:http://ffmpeg.org/download.html
charm插件:https://chrome.google.com/webstore/detail/native-hls-playback/emnphkkblegpebimobpbekeedfgemhof/related?hl=zh-CN
注意:实时推送的程序都在虚拟机(Linux)上进行安装测试的
Pingos
说明:推流成功后,上面的图片播放地址都可以进行访问。
ffmpeg
解压后执行命令测试是否能够运行
找一个摄像头测试rtsp转换rtmp是否正常执行
/ffmpeg -rtsp_transport tcp -i rtsp://admin:a12345678@10.30.46.95:554/h265/ch1/main/av_stream -c:v libx264 -s 1920x1080 -f flv rtmp://10.30.30.239/live/test
该命令是把摄像头监控的rtsp转换为rtmp并推流给pingos流媒体服务器
使用charm查看视频
http://服务器ip/hls/test.m3u8