CN115706806A - 一种nat下视频设备播放方法 - Google Patents
一种nat下视频设备播放方法 Download PDFInfo
- Publication number
- CN115706806A CN115706806A CN202110928100.0A CN202110928100A CN115706806A CN 115706806 A CN115706806 A CN 115706806A CN 202110928100 A CN202110928100 A CN 202110928100A CN 115706806 A CN115706806 A CN 115706806A
- Authority
- CN
- China
- Prior art keywords
- video
- playing
- nat
- ffmpeg
- rtmp
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种NAT下视频设备播放方法,包括以下步骤:1)首先业务服务器安装Nginx并配置RTMP模块;2)接收播放的视频摄像头请求,通过摄像头品牌、RTSP地址、账户和密码进行拼装FFmpeg命令后下发至探针服务器;3)探针FFTransfer部署在NAT中,接收到播放命令,使用FFmpeg将RTSP流摄像头视频转码为RTMP推送至业务服务器Nginx流媒体服务器;4)启动播放心跳检测线程,超时或者接收不到心跳信息即停止视频流推送;5)前端通过flash插件进行视频播放;本发明利用NAT的网络原理,网络访问只能先由私网侧发起,公网无法主动访问私网主机,通过FFmpeg转发到业务Nginx上实现视频播放。
Description
技术领域
本发明涉及音视频播放技术领域,具体涉及一种NAT下视频设备播放方法。
背景技术
网络摄像头在日常生活中越来越普及,而有时这些摄像头会部署在NAT环境下,只有在需要知道摄像头ip地址和账户密码的情况下,才能对摄像头视频流进行实时画面网页展示,限制较为严格,查看效率低。现有技术通过Nginx配置RTMP模块进行相应播放,目前的用开源nginx-rtmp-module模块搭建flash直播环境,均没有采用NAT的网络原理进行视频的传输和播放。因此,迫切需要设计一种NAT下视频设备播放方法,以解决现有NAT环境限制进行FFmpeg解码流方式实现向上级业务平台进行推送进而实现NAT环境下的视频设备播放的问题。
发明内容
针对现有技术中存在的问题,本发明的目的在于提供一种NAT下视频设备播放方法。
本发明解决其技术问题所采用的技术方案是:一种NAT下视频设备播放方法,包括以下步骤:
1)首先业务服务器安装Nginx并配置RTMP模块,RTMP配置1935端口,启动业务模块接收用户页面请求视频播放、暂停、停止操作;
2)接收播放的视频摄像头请求,通过摄像头品牌、RTSP地址、账户和密码进行拼装FFmpeg命令后下发至探针服务器;
3)探针FFTransfer部署在NAT中,接收到下发的播放命令,使用FFmpeg将RTSP流摄像头视频转码为RTMP推送至业务服务器Nginx流媒体服务器;
4)启动播放心跳检测线程,超时或者接收不到心跳信息即停止视频流推送;
5)前端通过flash插件进行视频播放。
优选的是,所述步骤2)中的探针服务器的探针程序接收播放请求并通过FFmpeg转发RTSP到业务Nginx上实现视频播放。
优选的是,所述步骤3)中的NAT的网络原理,网络访问只能先由私网侧发起,公网无法主动访问私网主机。
本发明具有以下有益效果:
本发明设计的NAT下视频设备播放方法巧妙利用NAT的网络原理,网络访问只能先由私网侧发起,公网无法主动访问私网主机,通过FFmpeg转发到业务Nginx上实现视频播放。
附图说明
图1是NAT下视频设备播放的流程图,播放通过下级部署探针并推送转码视频流到上级,视频实时播放。
具体实施方式
以下将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种NAT下视频设备播放方法,利用NAT的网络原理,网络访问只能先由私网侧发起,公网无法主动访问私网主机,探针程序接收播放请求并通过FFmpeg转发rtmp到业务Nginx上实现视频播放,具体实现步骤如下:
1.首先业务服务器安装Nginx并配置RTMP模块,RTMP配置1935端口,启动业务模块接收用户页面请求视频播放、暂停、停止等操作。
2.接收播放的视频摄像头请求,通过摄像头品牌、RTSP地址、账户和密码等进行拼装FFmpeg命令后下发至探针服务器。
3.探针FFTransfer部署在NAT中,接收到下发的播放命令,使用FFmpeg将RTSP流摄像头视频转码为RTMP推送至业务服务器Nginx流媒体服务器。
4.启动播放心跳检测线程,超时或者接收不到心跳信息即停止视频流推送。
5.前端通过flash插件进行视频播放。
NAT:NAT(Network Address Translation,网络地址转换)当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法。
FFmpeg:FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它能够解码、编码、转码、混合、解密、流媒体、过滤和播放人类和机器创造的几乎所有东西。
RTMP:RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。
Nginx:Nginx是一款高性能的http服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
流媒体:流媒体指以流方式在网络中传送音频、视频和多媒体文件的媒体形式。
流媒体服务器:流媒体服务器的主要功能是对流媒体内容进行采集、缓存、调度和传输播放。
1.常见摄像头rtsp地址:
a)大华:rtsp://"+ip+":554/cam/realmonitor?channel=1&subtype=1
b)海康:rtsp://"+ip+":554/h264/ch1/main/av_stream
c)宇视:rtsp://"+ip+":554/video1
d)天地伟业:rtsp://"+ip+":554/1
2.RTMP常见变种:
a)RTMP工作在TCP之上的明文协议,使用端口1935。
b)RTMPT封装在HTTP请求之中,可穿越防火墙。
c)RTMPS类似RTMPT,但使用的是HTTPS连接。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (3)
1.一种NAT下视频设备播放方法,其特征在于,包括以下步骤:
1)首先业务服务器安装Nginx并配置RTMP模块,RTMP配置1935端口,启动业务模块接收用户页面请求视频播放、暂停、停止操作;
2)接收播放的视频摄像头请求,通过摄像头品牌、RTSP地址、账户和密码进行拼装FFmpeg命令后下发至探针服务器;
3)探针FFTransfer部署在NAT中,接收到下发的播放命令,使用FFmpeg将RTSP流摄像头视频转码为RTMP推送至业务服务器Nginx流媒体服务器;
4)启动播放心跳检测线程,超时或者接收不到心跳信息即停止视频流推送;
5)前端通过flash插件进行视频播放。
2.根据权利要求1所述的NAT下视频设备播放方法,其特征在于,所述步骤2)中的探针服务器的探针程序接收播放请求并通过FFmpeg转发RTSP到业务Nginx上实现视频播放。
3.根据权利要求1所述的NAT下视频设备播放方法,其特征在于,所述步骤3)中的NAT的网络原理,网络访问只能先由私网侧发起,公网无法主动访问私网主机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110928100.0A CN115706806A (zh) | 2021-08-13 | 2021-08-13 | 一种nat下视频设备播放方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110928100.0A CN115706806A (zh) | 2021-08-13 | 2021-08-13 | 一种nat下视频设备播放方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115706806A true CN115706806A (zh) | 2023-02-17 |
Family
ID=85181128
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110928100.0A Pending CN115706806A (zh) | 2021-08-13 | 2021-08-13 | 一种nat下视频设备播放方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115706806A (zh) |
-
2021
- 2021-08-13 CN CN202110928100.0A patent/CN115706806A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10958865B2 (en) | Data segment service | |
US10158894B2 (en) | Edge media router device for facilitating distribution and delivery of media content having end-to-end encryption | |
US9135334B2 (en) | Providing a social network | |
US8863222B2 (en) | Multiplexing, synchronizing, and assembling multiple audio/video (A/V) streams in a media gateway | |
KR102321859B1 (ko) | 자바 스크립트를 이용한 실시간 미디어 스트리밍 방법 및 그 장치 | |
US7945924B2 (en) | Detecting distribution of multimedia content | |
US9167302B2 (en) | Playlist bookmarking | |
US8144182B2 (en) | Real time video communications system | |
US9071729B2 (en) | Providing user communication | |
US9032450B2 (en) | Adaptive audio/video streams proxy | |
US20090063994A1 (en) | Providing a Content Mark | |
US20210377330A1 (en) | Low-latency video internet streaming for management and transmission of multiple data streams | |
US9232268B2 (en) | Unified video delivery system for supporting IP video streaming service | |
US9100461B2 (en) | Automatically publishing streams to multiple destinations | |
US20080155628A1 (en) | Method and system for content sharing | |
KR20120114016A (ko) | 사용자 컨텐츠를 외부 단말기에서 네트워크 적응적으로 스트리밍하는 방법 및 장치 | |
US8468558B2 (en) | Method and apparatus for bandwidth consumption usage reporting of non-managed sources | |
US9788052B1 (en) | Multiple recording devices connected in a home network | |
US9635082B2 (en) | Method of saving content to a file on a server and corresponding device | |
JP6104401B2 (ja) | メディアコンテンツの非対称コンテンツ配信 | |
Punchihewa et al. | Tutorial on IPTV and its latest developments | |
CN115706806A (zh) | 一种nat下视频设备播放方法 | |
KR20160036924A (ko) | 사용기기에 독립적인 라이브 스트리밍 시스템 | |
KR101073663B1 (ko) | 홈 네트워킹을 지원하는 개인형 방송 재전송 장치 및 이의 원격 제어 방법 | |
Begen | TV everywhere. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |