![](https://img-blog.csdnimg.cn/20190926200520747.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
网络摄像头IPC开发
文章平均质量分 92
网络摄像头IPC介绍、onvif交互、RTSP拉流、视频编解码、MP4封装。
ProYuan28
嵌入式音视频开发方向,一起分享,一起学习,一起成长。
展开
-
网络摄像机(IPC)介绍
目录一、什么是网络摄像机(IPC)二、IPC功能三、分辨率和存储四、编码标准五、AHD和IPC的区别一、什么是网络摄像机(IPC)网络摄像机是一种结合传统摄像机与网络技术所产生的新一代摄像机,它可以将视频影像通过网络传至地球另一端,且远端的浏览者不需用任何专业软件,只要标准的网络浏览器(如“Microsoft IE或Netscape)即可监视其视频影像。网络摄像机一般由镜头、图像传感器、声音传感器、信号处理器、A/D转换器、编码芯片、主控芯片、网络及控制接口等部分...原创 2021-11-24 11:33:49 · 14376 阅读 · 0 评论 -
ONVIF协议介绍
目录一、什么是ONVIF二. ONVIF技术框架三. ONVIF技术规格四、ONVIF接口规范五、开发流程一、什么是ONVIFONVIF(开放式网络视频接口论坛)是一个全球性的开放式行业论坛,其目标是促进开发和使用基于物理IP的安全产品接口的全球开放标准。ONVIF创建了一个视频监控和其他物理安全领域的IP产品如何进行相互通信的标准。ONVIF是由Axis Communications,博世安防系统和索尼于2008年创立的。200...原创 2021-11-25 09:43:38 · 4892 阅读 · 0 评论 -
网络摄像机(IPC)开发(1):ONVIF设备搜索
一、设备搜索原理 Onvif协议要求实现Onvif协议服务的设备支持设备发现以及探测,也就是discovery和probe;discovery,客户端向网段内的组播地址为239.255.255.250,端口为3702发送广播消息,等待网内Onvif协议设备响应响应消息的设备会返回自己的IP、UUID、EP Address、Type等,最重要的会返回设备的Device Service Ad...原创 2019-10-09 14:54:22 · 4888 阅读 · 2 评论 -
网络摄像机(IPC)开发(2):ONVIF获取设备基本信息
一、获取IPC设备设备基本信息 上一篇文章介绍了如何搜索IPC摄像头,搜索出IPC后,就有了该IPC的Web Services地址:http://192.168.100.123:8099/onvif/device_service,接下来就能获取IPC摄像头的基本信息:1、创建tcp socket,IP为192.168.100.123,端口:8099;2、通过ONVIF Devic...原创 2019-10-10 09:38:25 · 2111 阅读 · 1 评论 -
网络摄像机(IPC)开发(3):ONVIF获取编码参数
一、编码参数 通过GetVideoEncoderConfigurations可以得到IPC视频流的编码参数:视频编码类型、视频分辨率、帧率、视频质量、码流、I帧间隔等参数;二、获取编码参数实现1、创建tcp socket,IP为192.168.100.123,端口:8099;2、通过ONVIF Device Test Tool工具得到GetDeviceInformation数...原创 2019-10-10 16:03:15 · 3230 阅读 · 1 评论 -
网络摄像机(IPC)开发(4):ONVIF设置编码参数
一、设置编码参数 对于IPC默认的编码参数可能并不是我们所想要的,这时候可以设置IPC设备的编码参数,通过SetVideoEncoderConfiguration来设置二、获取编码参数实现1、创建tcp socket,IP为192.168.100.123,端口:8099;2、填写token="000",Name="VideoE_000",编码格式Encoding = H264,视...原创 2019-10-12 14:17:17 · 5168 阅读 · 1 评论 -
网络摄像机(IPC)开发(5):ONVIF获取rtsp流url
一、获取URL通过GetStreamUri获取IPC的rtsp流url,这个url地址就是后面RTSP交互时,获取视频流的地址,同时,通过VLC等软件加载网络URL,也是可以播放视频流的。二、获取编码参数实现1、创建tcp socket,IP为192.168.100.123,端口:8099;2、填写ProfileToken值为上篇博客获取编码参数的值token="000",这里直接...原创 2019-10-12 14:42:47 · 4996 阅读 · 1 评论 -
网络摄像机(IPC)开发(6):RTSP交互获取H264流
一、RTSP简介 RTSP(Real Time Streaming Protocol),实时流传输协议,是TCP/IP协议体系中的一个应用层协议,由哥伦比亚大学网景和RealNetworks公司提交的IETF RFC标准,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据,RTSP在体系结构上位于RTP和RTCP之上,它使用TCP或RTP完成数据传输,具体关于RTSP协议的...原创 2019-10-14 09:59:41 · 2998 阅读 · 5 评论 -
网络摄像机(IPC)开发(7):RTP协议解析(H264码流)
一、RTP(实时传输协议) RTP全名是Real-time Transport Protocol(实时传输协议),它是IETF提出的一个标准,对应的RFC文档为RFC3550(RFC1889为其过期版本),RFC3550不仅定义了RTP,而且定义了配套的相关协议RTSP,RTP用来为IP网上的语音、图像、传真等多种需要实时传输的多媒体数据提供端到端的实时传输服务,RTP为Internet上...原创 2019-06-21 17:33:28 · 3540 阅读 · 0 评论 -
网络摄像机(IPC)开发(8):mp4v2封装h264裸流
一、mp4v2库文件的下载1、可以网址下载https://launchpad.net/ubuntu/artful/+source/mp4v22、也可以去CSDN下载可以文件https://download.csdn.net/download/u012478275/10799430二、linux下mp4v2库的交叉编译1、使用tar -jxvf xxxx.tar.bz2解压,生成...原创 2018-11-21 20:32:47 · 2838 阅读 · 1 评论 -
网络摄像机(IPC)开发(9):ffmpeg封装H246为MP4
前言文章主要对H264视频流封装为MP4格式文件的讲述,有实时H264视频流的封装和h264文件的封装,本文主要针对飞思卡尔I.MX6Q-vpu视频编码后的视频封装,所以没涉及到音频,一、h264视频文件的封装这部分代码主要是从雷博那里借鉴过来的,雷博的文章是音频和视频封装,我这里只实现视频的封装,雷博的文章网站:http://blog.csdn.net/leixiaohua10...原创 2016-09-08 17:33:46 · 13238 阅读 · 19 评论 -
网络摄像机(IPC)开发(10):使用gSOAP生成ONVIF框架C代码
前言 前面有一系类自行实现ONVIF协议网络摄像机(IPC)开发的专栏,相对比使用gSOAP生成的ONVIF框架代码会复杂些,但是编译出的应用程序大小会小很多,而且更加适合于初学者学习和懂得原理,如果想了解可以查看博客专栏:https://blog.csdn.net/u012478275/article/details/102619307,这篇博客讲解的是使用gSOAP生成ONVIF框...原创 2020-02-20 10:38:54 · 2735 阅读 · 3 评论 -
VLC搭建简单的RTSP流媒体服务器
在做视频传输客户端开发的时候,经常需要用到流媒体服务,VLC有着非常强大的流媒体处理能力,同时它也可以搭建流媒体服务器。这里介绍一种使用图形化界面搭建RTSP流媒体服务的应用。一、VLC搭建RTSP流媒体服务器(1)打开一个本地的流文件(2)点击播放按键旁边的倒三角符号,选择串流。(3)选择RTSP 然后点击添加(4)添加路径,我们这里写/test,点击下一步(5)选择Video-H264+Mp3(Mp4)(6)修改SDP路径,这里添加上...原创 2021-11-24 14:06:28 · 6588 阅读 · 1 评论 -
RTSP协议解析
一、 概述1.1 RTSP简介 RTSP(Real Time Streaming Protocol),实时流传输协议,是TCP/IP协议体系中的一个应用层协议,由哥伦比亚大学网景和RealNetworks公司提交的IETF RFC标准,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据,RTSP在体系结构上位于RTP和RTCP之上,它使用TCP或RTP完成数据传输。...原创 2019-06-22 11:28:24 · 2662 阅读 · 0 评论 -
RTP 的时间戳(Timestamp)
前言: RTP包整体的理解,可以查看博主文章RTP协议解析:https://blog.csdn.net/u012478275/article/details/93197104;本文主要对RTP Header中的时间戳(Timestamp)进行讲解;一、基本概念:1、时间戳单位:时间戳计算的单位不是秒之类的单位,而是由采样频率所代替的单位,这样做的目的就是 为了是时间戳单位更为精准...原创 2019-08-15 10:38:34 · 14351 阅读 · 1 评论