[Rtsp]RTSP视频流实时进行转换基于FFmpeg与FFserver实现
1.一、问题描述
输入数据为来自摄像头的RTSP视频流,然后利用FFmpeg将其输出到FFserver监听的服务(Feed)上,然后客户端(vlc)可以播放FFserver广播的经过转换后的视频流(Streams)。
通过FFserver的配置文件来配置视频流的转换参数(帧大小,帧频等)
2.二、实现方法
编辑FFserver配置文件,参考官网配置文件说明(ffserver.conf)
- Port 8090 #绑定端口号
- BindAddress 0.0.0.0 #绑定ip
- MaxHTTPConnections 2000 #最大HTTP连接数
- MaxClients 1000 #最大客户端连接数
- MaxBandwidth 1000 #最大带宽
- CustomLog - #日志文件,“-”为直接打印
- NoDaemon #默认全局参数
- <Feed feed1.ffm> #Feed:每一个输入(摄像头)建立一个Feed
- File /tmp/feed1.ffm #Feed缓存文件
- FileMaxSize 200K #缓存文件最大值
- ACL allow 127.0.0.1 #允许写入Feed的ip
- </Feed>
- <Stream test.flv> #Stream:每一个广播(转换后的视频流)的转码设置项目
- Format flv #视频流格式
- Feed feed1.ffm #视频流的种子来源
- VideoFrameRate 40 #视频帧频
- VideoBitRate 128 #视频比特率
- VideoSize 160x80 #视频帧大小
- AVOptionVideo flags +global_header
- AudioBitRate 24 #音频比特率
- AudioChannels 1 #音频声道
- AudioSampleRate 44100
- AVOptionAudio flags +global_header
- </Stream>
启动FFserver,终端输入命令:
ffserver -f ffserver.conf
启动FFmpeg,终端输入命令:
ffmpeg -i rtsp://192.168.1.111:8000/?videoCodecType=H.264 http://localhost:8090/feed1.ffm
#-i:为输入参数选项
#rtsp://192.168……:为输入的RTSP视频流
#http://localho……:为FFserver配置文件中设置的Feed的监听地址和端口
打开客户端(vlc)请求视频流地址:打开vlc–>File–>OpenNetwork–>URL中填写“http://localhost:8090/test.flv”–>Open (地址为FFserver配置文件中Stream项的名字)
热门文章推荐
- [rtsp]设置海康配置DDNS远程访问的用户手册(组图说明)
- [FFmpeg]FFmpeg实现监控摄像头的RTSP协议转RTMP协议直播
- [海康]海康网络摄像机激活功能图文教程
- [Rtsp]RTSP对实时摄像头视频流进行转换(FFmpeg+FFserver)
- [RTSP]海康家用摄像头wifi设置指南(组图说明)
- [Rtsp]海康网络摄像头基于RTSP协议的windows平台监控
- 海康客户端软件安装与使用教程ivms 4200(ivms 4200 客户端)图文
- [rtsp]IPC网络摄像头常见传输协议(rtsp协议,udp协议)介绍