视频编解码:第一章 编解码基础

1. 视频编码概念

    视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。

2. 为什么要进行视频压缩?

  • 数据太大:未经压缩的数字视频数据量巨大
  • 存储困难:一张DVD只能存储几秒钟的未压缩数字视频(标准DVD光盘是4.7GB,双层DVD光盘也不过8.5GB
  • 传输困难:1M的带宽传输一秒的数组电视视频需要大概4分钟
一分钟的视频数据量
Frame Rate(帧率)Frame SizeBits/pixelBit-rate(bpsFile Size(Bytes

30

frames/sec

176X 144

pixels

12

9123480

约1M

68428800

1M*60

3. 压缩原理

    去除冗余信息

  • 空间冗余:图像相邻像素之间有较强的相关性
  • 时间冗余:视频序列的相邻图像之间内容相似
  • 编码冗余:不同像素值出现概率不同
  • 视觉冗余:人的视觉系统对某些细节不敏感
  • 知识冗余:规律性的结构可由先验知识个北京知识得到

4. 数据压缩分类

    无损压缩(Lossless)

  • 压缩前解压后图像完全一致
  • 压缩比低(2:1~3:1)
  • 如:Winzip,JPEG-LG

    有损压缩(Lossy)

  • 压缩前解压后图像不一致
  • 压缩比高(10:1~20:1)
  • 利用人的视觉系统特性
  • 如:MPEG-2,Hello64/AVC,AVS

5. 编解码器

    编码器(Encoder):压缩信号的设备或者程序

    解码器(Decoder):解压缩信号的设备或者程序

    编解码去(Codec):编解码器对

6. 编解码系统组成

    (1)编码器中的关键技术

    (2)编解码中的关键技术

   

7. 编解码器实现

    编解码器的实现平台

  • 超大规模集成电路VLSI  ASIC,FPGA
  • 数字信号处理器DSP
  • 软件

    编解码器产品

  • 机顶盒
  • 数字电视
  • 摄像机
  • 监控器

8. 视频编码标准

     编码标准作用:

  • 兼容:不同厂家生产的编码器压缩的码流能够被不同厂家的解码器解码
  • 高效:标准编解码器可以进行批量生产,节约成本
  • 主流的视频编码标准:

        MPEG-2   

        MPEG-4 Simple Profile

        H.264/AVC

        AVS

        VC-1

9. 视频传输

    视频传输:通过传输系统将压缩的视频码流从编码端传输到解码端

    传输系统:互联网、地面无线卫星、卫星

10. 视频传输面临问题

  • 传输系统不可靠

        带宽限制

        信号衰减

        噪声干扰

        传输延迟

  • 视频传输的问题

        不能解码出正确的视频

        视频播放延迟

11. 视频传输差错控制

  • Error Control解决视频传输过程中由于数据丢失或延迟导致的问题
  • 差错控制技术:

        信道编码差错控制技术

        编码器差错恢复

        解码器差错隐藏

12. 视频传输的OoS参数

  • 数据包的端到端的延迟
  • 带宽:比特/秒
  • 数据包的延迟时间的波动

 

转载于:https://www.cnblogs.com/rubykakas/p/4157520.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/406676.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[python]删除列表中相同的元素

去除列表中重复的元素,非常简单,直接上代码: a [11, 21, 3, 4, 3, 2, 5] b list(set(a)) print(a) print(b)运行结果: E:\Program\Python>d.py [11, 21, 3, 4, 3, 2, 5] [2, 3, 4, 5, 11, 21]看到了吗,结果中确实…

js-cookie使用方法

该插件解决了原生js操作cookie的麻烦 js-cookie使用方法 js-cookie用来处理cookie相关的插件,非常简单好用,下面简单记录一下:1、项目中引用: npm install --save js-cookie2、js-cookie的使用: 安装好js-cookie插…

WindowsXP命令行修改服务启动选项

1、修改服务启动类型;使用命令sc,命令使用方法见下例:sc config messenger displayname "messenger" start auto说明:messenger:所要操作的服务名称displayname "messenger":所要操作的服务名称显示出来的名称…

Python 文件读和写

转载于:https://www.cnblogs.com/nzyjlr/p/4157582.html

element-ui 设置菜单栏展开

element-ui 侧边栏默认要全部展开怎么做&#xff1f; element-ui文档中是这么写的 default-openeds 当前打开的sub-menu的key数组 给标签加上这个属性 <el-menu class"el-menu-vertical" open"handleOpen" close"handleClose" theme"…

删除列表中满足一定条件的元素

从列表中删除满足一定条件的元素。 如&#xff1a;删除一个列表中长度为0的元素&#xff0c;或者删除列表中同时是2和3的倍数的元素。 做过高级语言编程的人想当然的会认为“这很简单”&#xff0c;可以如下面的方式来实现&#xff1a; for i in listObj:if(...):listObj.rem…

简单JS实现走马灯效果的文字(无需jQuery)

效果类似&#xff1a;(抱歉&#xff0c;图片是静态的) 写一段html&#xff0c;需要走马灯上下跳动的内容&#xff0c;但每次只显示一行&#xff1a;<hr size"0" align"center" style"border-top: 1px solid #F5F5F5;"/> <div id"m…

Android Service 生命周期

Android Service的生命周期 Managing the Lifecycle of a Service service的生命周期&#xff0c;从它被创建开始&#xff0c;到它被销毁为止&#xff0c;可以有两条不同的路径&#xff1a; A started service 被开启的service通过其他组件调用 startService()被创建。 这种ser…

Python正则表达式如何进行字符串替换

先来段网上的知识&#xff1a;http://developer.51cto.com/art/201003/188824.htm Python正则表达式在使用中会经常应用到字符串替换的代码。有很多人都不知道如何解决这个问题&#xff0c;下面的代码就告诉你其实这个问题无比的简单&#xff0c;希望你有所收获。 1.替换所有匹…

[Violation] Added non-passive event listener to a scroll-blocking ‘mousewheel‘ event.

在基于 Element-ui 写项目的时候&#xff0c;Chrome 提醒&#xff1a; [Violation] Added non-passive event listener to a scroll-blocking ‘mousewheel’ event. Consider marking event handler as ‘passive’ to make the page more responsive. 翻译过来如下&#xf…

ubuntu下集群设置静态ip

hadoop集群时&#xff0c;需要固定集群内计算机相互通信之间的ip地址&#xff0c;但是每次进行网络连接后&#xff0c;ip地址都是变换的&#xff0c;我们希望设置一个用于集群内通信的静态ip&#xff0c;即使重启电脑也不会变化&#xff0c;同样希望能够正常的访问互联网。 sud…

新书出版:《Android深度探索(卷1):HAL与驱动开发》

《Android深度探索&#xff08;卷1&#xff09;&#xff1a;HAL与驱动开发》【1】亚马逊【2】当当网【3】京东商城【4】互动网【5】淘宝网【6】豆瓣网 《 Android深度探索&#xff08;卷1&#xff09;&#xff1a;HAL与驱动开发》分为4篇&#xff0c;分别从搭建开发环境&#x…

python对时间日期做格式化

From: http://www.cnblogs.com/65702708/archive/2011/04/17/2018936.html Python格式化日期时间的函数为datetime.datetime.strftime()&#xff1b;由字符串转为日期型的函数为&#xff1a;datetime.datetime.strptime()&#xff0c;两个函数都涉及日期时间的格式化字符串&…

element-ui中表单验证rules

我们在项目中头疼的是什么&#xff1f;对&#xff0c;你没有听错&#xff0c;就是表单验证&#xff0c;各种非空校验&#xff0c;正则校验等等 而初次使用element-ui&#xff0c;在做表单验证的时候&#xff0c;由于项目急&#xff0c;自己呢&#xff0c;也没有时间去研究这个…

图像熵的意义以及计算

熵&#xff08;entropy&#xff09;指的是体系的混乱的程度&#xff0c;它在控制论、概率论、数论、天体物理、生命科学等领域都有重要应用&#xff0c;在不同的学科中也有引申出的更为具体的 定义&#xff0c;是各领域十分重要的参量。熵由鲁道夫克劳修斯&#xff08;Rudolf C…