EasyNVR无插件直播服务器如何使用ffmpeg实现摄像机快照功能的
EasyNVR提供快照预览功能,并且提供向EasyDSS云平台上传快照的功能
EasyNVR会定时向配置的摄像机抓取快照数据,保存图片用于预览,并且用于快照上传
原理
将从摄像机取出来的I帧数据编码成jpeg图片数据
实现
AVPacket管理,使用wrapper管理AVPacket的资源
class AVPacketWrapper
{
public:
AVPacketWrapper()
: packet_(new AVPacket)
{
av_init_packet(packet_);
packet_->data = NULL;
packet_->size = 0;
}
explicit AVPacketWrapper(size_t size)
: packet_(new AVPacket)
{
av_new_packet(packet_, size);
}
~AVPacketWrapper()
{
if (packet_)
{
av_packet_unref(packet_);
delete packet_;
}
}
AVPacket* getPacket() const
{
return packet_;
}
private:
AVPacketWrapper(const AVPacketWrapper&);
AVPacketWrapper& operator =(const AVPacketWrapper&);
AVPacket* packet_;
};
int DecoderHelper::DecodeVideo(char* inBuff, int inBuffSize)
{
if (!inBuff)
return -1;
if (1 > inBuffSize)
return -1;
if (!avCodecContext_)
{
releaseVideoDecoder();
return -2;
}
AVPacketWrapper packetWrapper;
AVPacket* packet = packetWrapper.getPacket();
packet->size = inBuffSize;
packet->data = reinterpret_cast<uint8_t*>(inBuff);
int ret = avcodec_send_packet(avCodecContext_, packet);
if (ret < 0 && ret != AVERROR(EAGAIN) && ret != AVERROR_EOF)
{
return -3;
}
ret = avcodec_receive_frame(avCodecContext_, avFrame_);
if (ret < 0 && ret != AVERROR_EOF)
{
return -3;
}
return 0;
}
关于EasyNVR
EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据进行拉取,转换为RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且EasyNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发;
详细说明:http://www.easydarwin.org/easynvr/
点击链接加入群【EasyNVR解决方案】:383501345
获取更多信息
Copyright © EasyDarwin.org 2012-2017

EasyNVR无插件直播服务器如何使用ffmpeg实现摄像机快照功能的的更多相关文章
- EasyNVR无插件直播服务器软件接口调用返回“Unauthorized”最简单的处理方式
背景需求 对于EasyNVR的受众群体十分的广泛,不仅仅有将EasyNVR作为视频直播平台直接使用的,更多的是使用EasyNVR的对应功能集成到自身系统.对于前者,只需要将软件的使用功能搞清楚即可,对 ...
- EasyNVR无插件直播服务器软件览器低延时播放监控摄像头视频(EasyNVR播放FLV视频流)
背景描述 EasyNVR的使用者应该都是清楚的了解到,EasyNVR一个强大的功能就是可以进行全平台的无插件直播.主要原因在于rtsp协议的视频流(默认是需要插件才可以播放的)经由EasyNVR处理可 ...
- EasyNVR无插件直播服务器软件使用详情功能 - 录像功能说明
背景介绍 EasyNVR不仅仅拥有无插件的直播功能,更拥有对于直播录像的存储和日期检索功能: 本篇博文主要用于介绍EasyNVR的录像功能. 之前有博文介绍相关的录像功能,本篇主要为了介绍录像的新功能 ...
- EasyNVR无插件直播服务器软件使用详情功能-通道配置Excel
背景需求 使用EasyNVR的用户都有知道,由于EasyNVR是将设备与EasyNVR的通道进行绑定的,因此EasyNVR是通过手动的通道配置来进行设备接入的,这样可以做到将设备的和通道对应的接入.但 ...
- EasyNVR无插件直播服务器软件如何自己更改web界面(网页的自定修改)
背景需求 很多用户都在使用了EasyNVR,看到EasyNVR自身带有的界面后有这样的需求,就是需要更改一下web前端的一些样式,当前EasyhNVR为3.0版本,web前端为了增加前端的运行效率和减 ...
- EasyNVR无插件直播服务器播放页面的集成----单独的播放器样式
背景需求: EasyNVR自身拥有独立的客户端体系,安卓和IOS拥有各自独立的APP, 安卓下载地址:https://fir.im/EasyNVR: IOS下载可直接在APPstore搜索EasyNV ...
- EasyNVR无插件直播流媒体服务器云端集中管控的EasyNVS云管理平台安装使用文档
EasyNVS - EasyNVR云端集中管理服务 EasyNVS云管理平台是一套专门用于集中化管理EasyNVR 的解决方案. EasyNVR 采用主动注册的方式接入到 EasyNVS, 再由 Ea ...
- 使用EasyNVR无插件流媒体服务器接口和EasyPlayer.js播放器插件实现web网页H5播放无插件
1.背景需求 很多客户在使用EasyNVR无插件流媒体服务器时,不喜欢产品化的界面,有时可能满足不了日常观看使用的需求.因此软件提供丰富的HTTP接口,供第三方平台调用集成.但是有时客户这边可能没有专 ...
- EasyNVR无插件直播服务如何配合EasyBMS使用以及实现流媒体管理功能概述
本文转自:https://blog.csdn.net/black_3717/article/details/79769195 功能概要: 1.摄像机的无插件直播: 2.摄像机的低延时直播: 3.摄像机 ...
随机推荐
- luogu P1616 疯狂的采药
题目背景 此题为NOIP2005普及组第三题的疯狂版. 此题为纪念LiYuxiang而生. 题目描述 LiYuxiang是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的 ...
- Filter解决中文乱码问题
1,FIlter中编码设置 编码设置一定要在跳转页面之前 public void doFilter(ServletRequest request, ServletResponse response, ...
- PHP如何在页面中原样输出HTML代码
字符串与HTML之间的相互转换主要应用htmlentities()函数来完成. header("Content-Type: text/html; charset=utf-8"); ...
- Docker镜像原理和最佳实践
https://yq.aliyun.com/articles/68477 https://yq.aliyun.com/articles/57126 DockerCon 2016 深度解读: Dock ...
- HDU1087上升子序列的最大和
解法一 此题是一个简单的动态规划问题,用dp[i]记做最后一步经过第i个数所得到的最大sum值,则结果=max(dp[i]),i=1,...n.考虑dp[i]的前一步会经过那里?假设dp[i]的前一 ...
- Ubuntu免安装配置MySQL
1.下载mysql http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz 2.解压 ta ...
- navicat链接lunix平台上的数据库
xsell 4.navicat软件 想在链接数据库的得常规设置里设置: 链接名称.主机名(链接lunix平台后才干ping 通的ip地址) port.username.password 然后选择ssh ...
- Openfire 4.1.2 DOWNLOADS
DOWNLOADS Source Code Openfire 4.1.2 http://www.igniterealtime.org/downloads/ http://download.ignit ...
- angular - 启用form组件
1.导入form组件 2.导出form组件 3.使用form组件
- C#托付之愚见
C#托付起源 近期參加实习和奔走于各大招聘会,被问及非常多技术方面的问题.C#问的较多的就是托付和linq. linq之前已经写过一篇文章,能够參见 http://blog.csdn.net/yzys ...