ffmpeg+nginx+video实现rtsp流转hls流(H5)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ffmpeg+nginx+video实现rtsp流转hls流(H5),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1866字,纯文字阅读大概需要3分钟。
内容图文
![ffmpeg+nginx+video实现rtsp流转hls流(H5)](/upload/InfoBanner/zyjiaocheng/960/ef15d76ca5b046ea9af47ff6eeb03e34.jpg)
本文档以大华摄像头为基础进行研究,基于window环境,Linux类似,首先了解不同协议之间的区别,本次研究主要使用rtmp(长连接) 和 hls(短连接)。
大华提供的视频流地址格式:
rtsp://{账号}:{密码}@{IP}:{端口}/cam/realmonitor?channel=1&subtype=0
例如:
rtsp://admin:admin123@10.20.1.20:554/cam/realmonitor?channel=1&subtype=0
一、视频流解码 - 环境配置
1、FFmpeg下载:http://ffmpeg.zeranoe.com/builds/
下载并解压FFmpeg文件夹,配置环境变量:在“Path”变量原有变量值内容上加上d:\ffmpeg\bin,验证:ffmpeg -version 出现版本号则成功
2、安装nginx服务器
(1) 下载具有rtmp的nginx
https://github.com/illuspas/nginx-rtmp-win32 可以直接使用
(以下配置已经存在)
rtmp { #增加rtmp配置
server {
listen 1935;
chunk_size 4096;
application live { #使用rtmp 协议播放 (例如:播放器访问地址 rtmp://localhost:1935/live/test)
live on; #开启实时
}
application hls { #增加hls 协议支持
live on; #开启实时
hls on; #开启hls
hls_path C:/nginx-1.12.2/html/hls; #切片存放位置
hls_fragment 1s; #每个TS文件包含1秒的视频内容
hls_playlist_length 3s; #HLS播放列表长度。 默认为30秒
}
}
}
http {
server {
listen 20000;
location / {
root html;
}
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
root html;
}
#新增能访问到hls流协议配置
location /hls {
#server hls fragments
types{
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root html;
add_header Cache-Control no-cache;
add_header Access-Control-Allow-Origin *;
}
}
}
在nginx\conf\mime.types中为了支持hls流协议新增:
application/x-mpegURL m3u8;
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
(2) 启动nginx
进入nginx目录,
启动 start nginx。
停止 nginx.exe -s stop
3、转码
进入cmd.exe命令框, 输入 ffmpeg -i "rtsp://admin:admin123@10.20.1.20:554/cam/realmonitor?channel=1&subtype=0" -vcodec copy -acodec aac -ar 44100 -strict -2 -ac 1 -f flv -s 1280x720 -q 10 -f flv rtmp://localhost:1935/live/test
内容总结
以上是互联网集市为您收集整理的ffmpeg+nginx+video实现rtsp流转hls流(H5)全部内容,希望文章能够帮你解决ffmpeg+nginx+video实现rtsp流转hls流(H5)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。