论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
物联网
›
物联网
›
海康威视摄像头RTSP使用nginx推流到服务器直播教程 ...
海康威视摄像头RTSP使用nginx推流到服务器直播教程
祗疼妳一个
金牌会员
|
2025-1-19 18:15:02
|
显示全部楼层
|
阅读模式
楼主
主题
830
|
帖子
830
|
积分
2490
思路:
之前2020年在本科的时间,由于项目的需求须要将海康威视的摄像头使用推流服务器到网页举行直播。这里将本身半个月琢磨出来的步骤给大家发一些。切勿转载!!!!
使用网络摄像头中的rtsp协议---------通过rtsp链接让推流软件获取到视频流------推流软件推流到直播服务器-----直播服务器的搭建-----使用flv.js举行直播
1、须要的设备。
1、摄像头:必须是网络摄像头,支持rtsp协议。比方本教程中的海康威视摄像头
2、一个centos的服务器(由于只找到了centos的教程,这里没有ubuntu的教程。不事后来使用了宝塔面板,以是其实都无所谓)
3、一台window电脑(用于obs推流)
2、详细步骤
1、搭建直播服务器
1、设置centos的网络服务,让该虚拟机以局域网的形式链接到实验室的网络(网络上举行搜索,成功的标准是你的主机可以ping通你的虚拟机。比方下图
2、安装宝塔面板
宝塔Linux面板安装教程 - 2023年5月11日更新 - 7.9.10正式版 - Linux面板 - 宝塔面板论坛
这里有实行命令
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
复制代码
2、登录宝塔面板
安装完成后,在你的shell页面会有登录的用户名和密码。另有登录网址。登录到宝塔网站后,会有建议让你安装一些软件。不要安装nginx,不要安装nginx,不要安装nginx。这里是我对我的宝塔设置,仅供参考。
3、安装gcc-c++环境
yum install -y gcc gcc-c++ autoconf wget
yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype*
4、下载nginx-http-flv-module
这个大家在网上找一下,如果肯定是这个模块嗷,这里是我之前下载的东西
??winshining-nginx-http-flv-module-master.zip
5、把解压后的内里的flv框架放在/www/server(这个路径如果没有,重新安装宝塔)
6、接下来修改宝塔的nginx的安装脚本,可以通过宝塔面板文件管理打开路径
7、添加自界说模块
8、在下面的框框内里输入这些
--add-module=/www/server/nginx-http-flv-module
复制代码
8、然后修改后点击提交后,等候安装
9、安装完成后查察时间安装成模块输入(记住V是大写的)
nginx -V
复制代码
10、如果你看到这着,恭喜你,已经成功一半了。
11、然后编写设置文件
你可以宝塔面板内里的首页内里举行修改。
12、然后对nginx举行设置。
user www www;
worker_processes auto;
error_log /www/wwwlogs/nginx_error.log crit;
pid /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
multi_accept on;
}
rtmp {
server {
listen 1935; #Nginx监听的RTMP推流/拉流端口
application live {
live on; #当推流时,RTMP路径中的APP(RTMP中一个概念)匹配myapp时,开启直播
record off; #不记录视频
gop_cache off;
}
}
}
http
{
include mime.types;
#include luawaf.conf;
include proxy.conf;
default_type application/octet-stream;
server_names_hash_bucket_size 512;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6].";
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn_zone $server_name zone=perserver:10m;
server_tokens off;
access_log off;
server
{
listen 888;
server_name phpmyadmin;
index index.html index.htm index.php;
root /www/server/phpmyadmin;
#error_page 404 /404.html;
include enable-php.conf;
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*.(js|css)?$
{
expires 12h;
}
location ~ /.
{
deny all;
}
access_log /www/wwwlogs/access.log;
}
server {
listen 8432; #1.你想让你的这个项目跑在哪个端口
server_name localhost; #2.当前服务器ip
#root /www/server/nginx/hls;
location /live {
#开启flv直播
flv_live on;
chunked_transfer_encoding on;
# 这里是要负责跨域呀
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Credentials' 'true';
}
}
include /www/server/panel/vhost/nginx/*.conf;
}
复制代码
13、你主要须要参加的是一下设置
这个是rtmp直播设置,可以照抄
rtmp {
server {
listen 1935; #Nginx监听的RTMP推流/拉流端口
application live {
live on; #当推流时,RTMP路径中的APP(RTMP中一个概念)匹配myapp时,开启直播
record off; #不记录视频
gop_cache off;
}
}
}
复制代码
这个是网页访问的设置。也可以照抄
server {
listen 8432; #1.你想让你的这个项目跑在哪个端口
server_name localhost; #2.当前服务器ip
location /live {
#开启flv直播
flv_live on;
chunked_transfer_encoding on;
#配置跨域
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Credentials' 'true';
}
}
复制代码
再修改完数据后,要重载设置,然后重启设置
15,开启1935和8435端口
2、下载设置obs
安装它就可以了
1、添加媒体源,就是摄像头的rtsp的链接。
任意填写就可以。
取消本地文件的勾选
然后再这个输入内里填写摄像头的rtsp的链接。
再本实验的rtsp为
rtsp://admin:123456789a@211.64.41.218:554/h264/ch1/main/av_stream
复制代码
2、设置推流地址
点击文件内里的设置
点击推流
这里如果你的设置是和我的一样,那么就如此添加。
这里的live的是你设置的rtmp的application的名字。这里的串流密钥是index 你可以任意写。
然后,点击应用和确定
点击开始推流
如果这里是这样的有绿标,就说明推流成功。
3、运行拉流
这里有一个例子,有好多人说这个例子失效了,我上传到CSDN后,居然须要VIP才气下载,我想了一下,要不就用百度网盘吧。
链接:https://pan.baidu.com/s/1pDmC5GpualMdrzSm85rsiApwd=qhhp
提取码:qhhp
??直播2.zip
这里说一下url的拼写
'http://211.64.41.229:8432/live?port=1935&app=live&stream=index’中port是rtmp端口,app是rtmp中application的名字,而stream就是推流时指定的。然后就可以得到了视频
3、关于在线播放的设置。
在线播放也较为简单,你须要调低码率,要不然,你的直播带宽会很大。
1、调低码率
(1)、先停止推流。然后打开文件
(2)、打开设置。打开输出
(3)、然后讲输出模式调到高级,然后将串流的比特率改为800Khps
(4)然后点击应用,然后确定即可
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
祗疼妳一个
金牌会员
这个人很懒什么都没写!
楼主热帖
容斥原理
信息收集之 端口扫描
高考是人生旅途的一处驿站
Java EnumMap get()方法具有什么功能呢 ...
Hyperf微服务——四、第一个微服务的搭 ...
教你30分钟快速搭建直播间
ASP.NET Core依赖注入系统学习教程:Se ...
【.NET 深呼吸】全代码编写WPF程序 ...
苞米豆的多数据源 → dynamic-datasour ...
【C++】拷贝构造函数的调用时机 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表