zoukankan      html  css  js  c++  java
  • RTSP/GB28181协议视频平台对接RTMP推流摄像头编码简介

    视频是利用人眼视觉暂留的原理,通过播放一系列的图片,使人眼产生运动的感觉。单纯传输视频画面,视频量非常大,对现有的网络和存储来说是不可接受的。为了能够使视频便于传输和存储,人们发现视频有大量重复的信息,如果将重复信息在发送端去掉,在接收端恢复出来,这样就大大减少了视频数据的文件,因此有了H.264视频压缩标准。

    在H.264压缩标准中I帧、P帧、B帧用于表示传输的视频画面。

    1.I帧

    I帧又称帧内编码帧,是一种自带全部信息的独立帧,无需参考其他图像便可独立进行解码,可以简单理解为一张静态画面。视频序列中的第一个帧始终都是I帧,因为它是关键帧。

    2.P帧

    P帧又称帧间预测编码帧,需要参考前面的I帧才能进行编码。表示的是当前帧画面与前一帧(前一帧可能是I帧也可能是P帧)的差别。解码时需要用之前缓存的画面叠加上本帧定义的差别,生成最终画面。与I帧相比,P帧通常占用更少的数据位,但不足的是,由于P帧对前面的P和I参考帧有着复杂的依赖性,因此对传输错误非常敏感。

    3.B帧

    B帧又称双向预测编码帧,也就是B帧记录的是本帧与前后帧的差别。也就是说要解码B帧,不仅要取得之前的缓存画面,还要解码之后的画面,通过前后画面与本帧数据的叠加取得最终的画面。B帧压缩率高,但是对解码性能要求较高。

    总结

    I帧只需考虑本帧;P帧记录的是与前一帧的差别;B帧记录的是前一帧及后一帧的差别,能节约更多的空间,视频文件小了,但相对来说解码的时候就比较麻烦。因为在解码时,不仅要用之前缓存的画面,而且要知道下一个I或者P的画面,对于不支持B帧解码的播放器容易卡顿。

    视频监控系统中预览的视频画面是实时的,对画面的流畅性要求较高。采用I帧、P帧进行视频传输可以提高网络的适应能力,且能降低解码成本所以现阶段的视频解码都只采用I帧和P帧进行传输。海康摄像机编码,I帧间隔是50,含49个P帧。

    由上面摄像机的参数可以知道,该推流摄像机是一秒出25帧,每50个帧中存在一个关键帧,因此是每两秒一个关键帧。这样的设置可以保证设备的正常流畅的直播。

    TSINGSEE青犀视频全线产品目前都已经支持了H265编码视频播放,RTMP协议视频平台EasyDSS、RTSP协议视频平台EasyNVR、GB28181协议视频平台EasyGBS、视频融合平台EasyCVR内都集成了H265播放器EasyPlayer。大家对H265有兴趣的话可以阅览一下:h264编码视频与h265编码视频哪个更清晰

    • EasyNVR边缘网关服务中的EasyPlayer.js:

      • EasyGBS国标GB/T28181流媒体服务中的EasyPlayer.js:

      • EasyDSS流媒体视频直播/点播服务中的EasyPlayer.js:

      • EasyCVR安防视频云服务平台中的EasyPlayer.js:

  • 相关阅读:
    mysql BETWEEN操作符 语法
    mysql IN操作符 语法
    mysql LIKE通配符 语法
    mysql TOP语句 语法
    mysql DELETE语句 语法
    mysql Update语句 语法
    mysql INSERT语句 语法
    mysql ORDER BY语句 语法
    mysql OR运算符 语法
    mysql AND运算符 语法
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/13810306.html
Copyright © 2011-2022 走看看