前言 最近在项目中遇到一个奇怪的问题,同样的SDK调用,访问海康摄像机的RTSP流,发保活OPTIONS命令保活,一个正常,而另一个一发就会被IPC断开,先看现场截图: 图1:发OPTIONS,摄像机立马断流 图2:但在另一个程序中发OPTIONS保活包又不断流 在大部分的摄像机上,都没什么问题,单单在海康的这一款摄像机中出现了这种问题,不仔细对比命令行中的输出,根本无法确定问题点,图2中的OPTIONS报文中携带了Authorization的头字段,将认证信息都带入了进来,而图1中只是简单将用…
本文转自EasyDarwin团队成员Alex的博客:http://blog.csdn.net/cai6811376 EasyCamera在向EasyDarwin云平台推送音视频数据时,有时一个I帧会很大,从摄像机SDK中获取的数据就会被拆分.我们使用EasyPusher向云平台推送时需要每次发送一整帧数据,这时我们就需要设计一个缓存机制将SDK拆分的帧组成一个完整的帧数据,再使用EasyPusher推送给EasyDarwin云平台.这里以海康威视摄像机SDK获取的数据为例. 数据分析 我们先看一…
之前的一篇博客<网络摄像机IPCamera RTSP直播播放网络/权限/音视频数据/花屏问题检测与分析助手EasyRTSPClient>,我们介绍了RTSP流的检测和分析工具EasyRTSPClient,可以说已经是深入了我的平时运维工作中了,当我们发现有任何RTSP源或者摄像机无法播放的时候,我用EasyRTSPClient工具运行检测一下,就立即能够知道问题原因,真是非常非常方便: EasyRTSPClient方案Github:https://github.com/EasyDSS/Easy…
出现问题 我们在做流媒体开发的过程中,进程会出现摄像机RTSP流莫名其妙无法播放的问题,而我们常用的vlc经常是直接弹出一个无法播放的提示框就完事了,没有说明出错的原因,或者在vlc的消息里面能看到日志消息,但是并不能清晰地将整个RTSP的流程及服务器返回的错误码反馈给开发者,而且有的时候vlc或者ffplay经常出现音视频数据无法播放的问题,我们需要一个非常好的工具将视频(H.264/H.265/MPEG),音频(G.711A/G.711U/G.726/AAC)存储成文件进行分析: 解决问题…
开篇 炙手可热,望而生畏的音视频开发 时至今日,短视频App可谓是如日中天,一片兴兴向荣.随着短视频的兴起,音视频开发也越来越受到重视,但是由于音视频开发涉及知识面比较广,入门门槛相对较高,让许许多多开发者望而生畏. 为什么写这一系列博文 虽然网上有很多的博文总结了音视频打怪升级的路线,但是音视频开发相关的知识都相对独立,有讲"音视频解码相关"的,有讲"OpenGL相关"的,也有讲"FFmpeg相关的",但是对于新手来说,把所有的知识衔接串联起来…
一.背景需求 传统监控行业里不管是设备端.服务器端亦或是客户端都在一个内网里面.而且现在的大部分监控方案都是这样的格局,小到一个公司范围内的监控,再到一个园区.一个仓库监控.一个农业园林监控.一个养殖场监控.一个小区的监控,大到电力.交通行业的大局域网监控,这种监控场景下,客户终端出不了监控的内网,无法做到公网监控与录像回放. 虽然现在也有一些个别大的监控项目,会搞一个网关机器,将视频服务映射到公网,但始终都是小规模使用,上不了量,成不了监控云平台. 对于有着监控需求,却无法投入巨额资金的中小企…
还记得去年在北京安博会上,看到一些厂家的展示台上,各种船舶.公路.车辆的高清视频直播,好奇这些数据是怎么接到现场的,现场成百上千家展台,不可能有那么大的带宽供应,细想数据肯定不是实时的,果然,盯着看了好久,果然是文件反复回放: 现在想来,这个功能IPC模拟器算不得上是一个非常牛x的技术,但是能解决好多问题啊,比如,我要在公网服务器上部署一套演示系统,系统呢需要接入很多很多的IPC摄像机资源,公网跟内网的IPC又不能连通起来,而且即使映射端口一方面是IP不固定,即使IP固定,上行带宽也有限,接入不…
H.264简介 什么是H.264?H.264是一种高性能的视频编解码技术.目前国际上制定视频编解码技术的组织有两个,一个是"国际电联",它制定的标准有H.261.H.263.H.263+等,另一个是"国际标准化组织(ISO)"它制定的标准有MPEG-1.MPEG-2.MPEG-4等.而H.264则是由两个组织联合组建的联合视频组(JVT)共同制定的新数字视频编码标准,所以它既是ITU-T的H.264,又是ISO/IEC的MPEG-4高级视频编码,而且它将成为MPEG…
概述 libEasyPlayer实现对RTSP直播流进行实时采集和解码显示,稳定,高效,低延时:解码可采用intel硬件解码和软件解码两种方式,能实时进行录像和快照抓图,OSD叠加等功能. API接口函数定义  int EasyPlayer_Init(); 函数说明: 播放器初始化,播放器使用之前调用: 参数说明:  void EasyPlayer_Release(); 函数说明: 播放器资源释放,播放器不再使用以后调用: 参数说明: int EasyPlayer_OpenStream(c…
1.背景需求 有许多客户现场,有许多设备但是不需要一直向设备端取视频流,因为在用户不观看的情况下,还在获取视频资源,一方面大大的浪费了网络带宽资源,一方面对设备服务器要求也较高,用户成本就要提高,这是我们不愿意看到的. 2.问题分析 需求是当没有人观看的情况下,服务器停止向设备端拉取视频流,当用户想观看的其中一路,在向设备端拉取,这样的话大大的节约了带宽的占用. 3.解决方案 因此软件这边就做了一个心跳接口,通过心跳接口当用户观看视频的时候软件才会向重新设备端拉取视频流.这里如果用户二次开发集成…