当前位置: 首页 > news >正文

海康威视摄像头实时推流到阿里云公网服务器(Windows + FFmpeg + nginx-rtmp)

海康威视摄像头实时推流到阿里云公网服务器(Windows + FFmpeg + nginx-rtmp

    • 1. 步骤总览
    • 2. 阿里云 ECS(Linux)配置
      • 2.1 开放端口
      • 2.2 安装 nginx-rtmp
    • 3. Windows 电脑端配置
      • 3.1 安装 FFmpeg
        • 3.1.1 官网/镜像下载:
        • 3.1.2 解压后将 bin 目录加入系统 Path
      • 3.2 获取海康 RTSP 地址
      • 3.3 一次性推流测试
    • 4. 公网观看
      • 4.1 VLC播放器
      • 4.2 网页嵌入(可选)
    • 5. 长期守护运行
      • 5.1 注册成 Windows 服务(nssm)
        • 5.1.1 下载 [nssm](https://nssm.cc/)
        • 5.1.2 管理员 PowerShell:
        • 5.1.3 启动服务 HikPush,开机即推流,崩溃自动重启。
    • 6. 常见问题速查表
    • 7. 一键脚本(懒人版)

适用场景

  • 摄像头:海康威视 IPC/NVR(局域网)
  • 推流机:Windows 10/11(可 7×24 开机)
  • 服务器:阿里云 ECS(Ubuntu / CentOS)
  • 公网观看:VLC、网页、微信小程序均可

1. 步骤总览

阶段任务备注
① 服务器端部署 nginx-rtmp,监听 1945 端口一次性
② Windows 端安装 FFmpeg,拉 RTSP 推 RTMP一次性
③ 验证VLC 公网播放随时
④ 长期运行注册 Windows 服务/nssm可选

2. 阿里云 ECS(Linux)配置

2.1 开放端口

安全组 添加 2 条入方向规则

  • TCP 1945 → RTMP 推流
  • TCP 80/443 → 可选 HTTP-FLV/HLS

2.2 安装 nginx-rtmp

sudo apt update
sudo apt install nginx-full libnginx-mod-rtmp -ysudo tee /etc/nginx/nginx.conf > /dev/null <<'EOF'
user www-data;
events { worker_connections 1024; }
http  { include /etc/nginx/sites-enabled/*; }rtmp {server {listen 1945;chunk_size 4096;application live {live on;record off;gop_cache on;   # 低延迟}}
}
EOFsudo systemctl restart nginx

3. Windows 电脑端配置

3.1 安装 FFmpeg

3.1.1 官网/镜像下载:
https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-essentials.zip
3.1.2 解压后将 bin 目录加入系统 Path

PowerShell 验证

ffmpeg -version

3.2 获取海康 RTSP 地址

类型示例
主码流rtsp://admin:密码@192.168.1.64:554/Streaming/Channels/101
子码流rtsp://admin:密码@192.168.1.64:554/Streaming/Channels/102

3.3 一次性推流测试

ffmpeg -re -rtsp_transport tcp `-i "rtsp://admin:Sago0%402024@192.168.1.64:554/Streaming/Channels/101" `-vcodec libx264 -preset ultrafast -tune zerolatency -an `-s 1280x720 -b:v 1200k -f flv `rtmp://<ECS-公网IP>:1945/live/hik1

出现 fps ≈ 25 speed ≈ 1.0x 即成功。

4. 公网观看

4.1 VLC播放器

  • 菜单:媒体 → 打开网络串流

  • URL:

    rtmp://<ECS-公网IP>:1945/live/hik1
    

4.2 网页嵌入(可选)

<script src="https://cdn.jsdelivr.net/npm/flv.js/dist/flv.min.js"></script>
<video id="video" controls autoplay></video>
<script>if (flvjs.isSupported()) {const player = flvjs.createPlayer({type: 'flv',url: 'http://<域名或IP>:8080/live/hik1.flv'});player.attachMediaElement(document.getElementById('video'));player.load();player.play();}
</script>

5. 长期守护运行

5.1 注册成 Windows 服务(nssm)

5.1.1 下载 nssm
5.1.2 管理员 PowerShell:
nssm install HikPush
  • Application:C:\ffmpeg\bin\ffmpeg.exe
  • Arguments:
    -re -rtsp_transport tcp -i rtsp://admin:Sago0%402024@192.168.1.64/Streaming/Channels/101 -vcodec libx264 -preset ultrafast -tune zerolatency -an -s 1280x720 -b:v 1200k -f flv rtmp://:1945/live/hik1
  • Startup type:Automatic
5.1.3 启动服务 HikPush,开机即推流,崩溃自动重启。

6. 常见问题速查表

现象原因 & 解决
VLC 无法连接安全组未放行 1945 / 路径拼写错误
画面黑屏摄像头未启用 RTSP / 路径 101/102 选错
花屏/卡顿网络抖动:改用 -rtsp_transport tcp 并降码率
延迟高降低分辨率或 GOP;使用 tune=zerolatency

7. 一键脚本(懒人版)

保存为 start_hik_push.bat,双击即可运行:

@echo off
title Hikvision → Aliyun RTMP
ffmpeg -re -rtsp_transport tcp ^-i "rtsp://admin:Sago0%402024@192.168.1.64:554/Streaming/Channels/101" ^-vcodec libx264 -preset ultrafast -tune zerolatency -an ^-s 1280x720 -b:v 1200k -f flv ^rtmp://<ECS-公网IP>:1945/live/hik1
pause
http://www.lryc.cn/news/614915.html

相关文章:

  • 基于开源AI大模型、AI智能名片与S2B2C商城小程序的零售智能化升级路径研究
  • Selenium使用超全指南
  • Linux运维新手的修炼手扎之第27天
  • 【无标题】AI 赋能日常效率:实用案例与操作心得分享
  • vulhub-Beelzebub靶机
  • 【LeetCode 热题 100】(五)普通数组
  • 版本控制的详细说明介绍(已有github账号版)
  • 【数学归纳法】证明数列极限
  • 模拟人脑处理文本——从分句到分词,从段落到时间线叙事
  • 小米开源大模型 MiDashengLM-7B:不仅是“听懂”,更能“理解”声音
  • 力扣前200题字符串总结
  • Effective C++ 条款31: 将文件间的编译依存关系降至最低
  • Matlab系列(004) 一 Matlab分析正态分布(高斯分布)
  • DBSCAN聚类算法实战全解析
  • 制作 VSCode 插件
  • React Native jpush-react-native极光推送 iOS生产环境接收不到推送
  • 计算机网络:如何将/22的CIDR地址块划分为4个子网
  • 华数杯C题:可调控生物节律的LED光源研究——数学建模与Python实战
  • 2025年华数杯评审标准发布
  • 2025华数杯B题一等奖方案:网络切片无线资源管理全解析(附Python/MATLAB代码)
  • 计算机网络1-6:计算机网络体系结构
  • 4深度学习Pytorch-神经网络--损失函数(sigmoid、Tanh、ReLU、LReLu、softmax)
  • 等保测评-RabbitMQ中间件
  • 直接插入排序算法:可视化讲解与C语言实现
  • Android MediaMetadataRetriever取视频封面,Kotlin(1)
  • 记一次奇异的bug
  • 自动化一键部署 LNMP 环境
  • 【n8n教程笔记——工作流Workflow】文本课程(第二阶段)——5 自动化业务工作流——0 用例 (Use case)
  • 五、RuoYi-Cloud-Plus 前端项目部署以及如何改后端请求地址。
  • 线上排查问题的一般流程是怎么样的?