视频监控客户端-GB28181之转码库-转码格式支持H265、H264、MPEG4、MPEG2
如需交流可联系QQ:123011785
转码库的基本内容是通过ffmepg的函数进行转码,主要针对市面上的基本码流格式进行转码,可以根据分辨率进行码流转换,适用于手机端码流推送,转码效率基本在10:1的比例。
也可以转码成不同格式的码流,支持H265、H264、MPEG4、MPEG2
转码时间基本在1s内完成。
下面粘贴下头文件源码:
#ifndef __STREAMTRANS_H_
#define __STREAMTRANS_H_#ifndef __int64
#define __int64 long long
#endiftypedef enum
{STREAMTRANS_MODE_NONE,STREAMTRANS_MODE_DEC,STREAMTRANS_MODE_FILTER,STREAMTRANS_MODE_ENC,}StreamTransMode_E;typedef enum
{STREAM_YUV420 = -1,STREAM_NONE = 0,STREAM_MPEG2 = 2,    //值对应FFMEPGSTREAM_MPEG4 = 13,STREAM_H264 = 28,STREAM_H265 = 174}StreamCodec_E;typedef struct _StreamTransIn
{StreamTransMode_E  eMode;          //转换模式 解码 滤镜 编码unsigned char*       pBufIn[3];      //输入码流int                   nSizeIn[3];     //输入码流大小StreamCodec_E       eType;          //码流的编码类型int                    nWidth;         //图像分辨率宽度int                    nHeight;        //图像分辨率高度int                    nFps;           //图像帧率char*             strFilter;      //滤镜描述
}StreamTransIn;typedef struct _StreamTransOut
{unsigned char* pBufOut[3];     //输出流int                nSizeOut[3];    //输出流大小__int64          pts;            //输出流PTS(显示时间戳)__int64          dts;            //输出流DTS(解码时间戳)StreamCodec_E    eType;          //码流的编码类型int                nWidth;         //图像分辨率宽度int                nHeight;        //图像分辨率高度int                nFps;           //图像帧率int               nMbps;          //图像码率
}StreamTransOut;#ifdef __cplusplus
extern "C"{
#endif
#include "libavcodec/avcodec.h"
#include "libswscale/swscale.h"
#include "libavformat/avformat.h"
#include "libavutil/imgutils.h"
#include "libavutil/opt.h"
#include "libavfilter/avfiltergraph.h"
#include "libavfilter/buffersink.h"
#include "libavfilter/buffersrc.h"//打开转码句柄long STREAMTRANS_Open(void);//关闭转码句柄long STREAMTRANS_Close(long Handle);//开始转换long STREAMTRANS_Trans(long Handle, StreamTransIn* pIn, StreamTransOut* pOut);//拷贝数据结构(内部自动alloc数据空间)StreamTransIn* STREAMTRANS_CloneYUV(StreamTransOut* src);#ifdef __cplusplus
}
#endif#endif


视频监控客户端-GB28181之转码库-转码格式支持H265、H264、MPEG4、MPEG2相关推荐

  1. 音视频开发(18)---视频监控客户端开发(IP Camera)总结

    视频监控客户端开发(IP Camera)总结 首先看下项目需求:   1.最多同时支持16路高清音视频同时显示.   2.窗口模式,全屏,1窗口,4窗口,9窗口,16窗口.   3.播放控制,开始播放 ...

  2. 视频监控客户端开发(IP Camera)总结

    做了将近三年时间的视频监控客户端开发,当然期间也做个一些其他开发.在开发期间,经对系统不断进行重构优化积累了一些经验,现向大家分享一下.希望以此抛砖引玉,有这方面经验的朋友也发表一下看法和见解: 首先 ...

  3. Duilib版视频监控客户端(简易版)

    Duilib版视频监控客户端(简易版) 基于目前物联网发展的形式,网络视频监控几乎无处不在,对监控的视频的查看和回放自然成了必不可少的部分,下面介绍一下使用Duilib来开发的视频监控客户端例子. 界 ...

  4. 《华清远见学习手记》 之3G智能机器人——移植视频监控客户端到我的Nokia E52上

    移植视频监控客户端到我的Nokia E52上 [编译环境]ubuntu 8.10 + Vmware + windows xp [目标机]Nokia E52 / symbian s60 v3 [交叉编译 ...

  5. 也用C#做个视频监控客户端来玩玩

    前几天看到园友农民伯伯写的C# 视频监控系列实现了对海康板卡的封装,这几天参与的项目进入了后续阶段了,现进行性能测试.测试流媒体服务器的稳定性,并发性,看看并发处理300-500路视频效果如何,部门没 ...

  6. 多线程python 客户端fuwuq实现方式_纯python实现的视频监控客户端软件(终稿)

    clientdemo.py playdemo.py 视频效果 前面三篇文章给大家详细讲解了核心的调用过程,以及给出了预览部分的示例代码,大家完全可以举一反三的去增加和扩展更多的海康SDK函数来实现更多 ...

  7. 视频监控平台GB28181:媒体流保活机制

    前言 目前实际项目对接遇见很多平台级联过程中,视频流有类似rtsp一样的rtcp保活机制,随翻看国标GB28181-2016协议文档,查阅相关说明,现分享如下. 协议原文 平台.设备媒体流保活机制 贴 ...

  8. 视频监控平台GB28181:实时视音频点播

    实时视音频点播基本要求 -实时视音频点播的SIP消息应通过本域或其它域的SIP服务器进行路由.转发,目标设备的实时视音频流宜通过本域内的媒体服务器进行转发. -实时视音频点播采用SIP协议(RFC 3 ...

  9. 基于wifi面向android的远程视频监控客户端开发,基于Wifi面向Android的远程视频监控客户端开发...

    龟寻世界<<<I 心设备,所有的视频信号必须送到切换 台,导演再通过它对所有的图像信号进 行选择和特技处理 ,最后才能得到我们 所需要的节目信号.DFS一700P作为数字 设备,具有 ...

最新文章

  1. 通过yiic来创建yii应用
  2. Android自定义组件之简单组合
  3. mysql分组后组内排序_数据小白的转行之路-MYSQL(七)
  4. Maven最佳实践:版本管理
  5. 1.Vue 安装与简单使用
  6. Linux 4.21优化Zen 2架构
  7. jq js json 转字符串_JSON字符串转换成JSON对象的JS代码
  8. vue3安装WangEditor富文本编辑器v5版本
  9. jmail 发送html,jmail发送html格式的邮件
  10. 内窥镜去反光的论文整理(转)
  11. windows电脑截截屏截图的方法
  12. kaggle代码补全
  13. 工业机器人常用的六种坐标系
  14. [论文阅读:姿态识别Transformer] TransPose: Keypoint Localization via Transformer 2021 ICCV
  15. 这几个拍图读字软件你见过吗?附赠使用方法
  16. matches()方法的使用规则
  17. RMAN完全恢复与不完全恢复测试
  18. AVI文件花屏问题分析和解决
  19. 进给服务器系统包含机械,數控机床培训系统基本要求.doc
  20. 功能性近红外脑成像技术fNIRs开源网站

热门文章

  1. cv.waitkey()参数详解
  2. UTF-8编码和UTF-8-BOM编码的区别和处理
  3. mysql事务使用转化_Mysql事务
  4. 队列 (Queue)
  5. javascript复习资料第一部分
  6. 在微服务架构中管理技术债务
  7. Linux (CentOS) 系统下载地址
  8. 字节Scala面试题(2) --- 伴生对象
  9. php nette,php – Nette Framework – 自定义属性宏
  10. 为什么包名要域名反写?