H.264/AVC视频编解码技术详解
课时介绍
现在我们已经了解了指数格伦布编码的基本编码原理和方法。接下来,我们来实际实现一个指数格伦布编码的解析过程。首先,打开编译器并新建一个项目。我们看到这是一个空工程,除了一个"num"之外什么都没有。我们该如何在这里实现一个指数格伦布编码的解析过程呢?首先,定义一个数组并定义一个类型。我们使用"type define"命令将无符号字符型定义为"uint8",表示一个占据8个bit无符号整数。接着,我们定义一个长度为6的数组,其元素分别为0xa1、0x6f、0x92、0x98、0x12、0x04和0x8a。这里定义的数字是后面使用的基础。无论是哈佛版编码还是指数格伦布编码,数据的读取和写入都是在比特级别上进行的,因此必须找到一种逐比特而非逐字节读取内存序中的数据的方法。我们额外定义了一个函数"static int get_bit_and_position"来实现这个功能。该函数需要一个缓存区"buffer"来读取指定内存中的数据,并需要两个引用类型的参数"byte_position"和"bit_position",用于表示当前读到了第几个字节的第几位。我们定义了一个"mask"变量,用于在读取每个bit时采用的模板。"value"变量是我们需要返回的值。在每一次的读取过程中,我们通过"mask"的值来确定读取这个字节的哪一位。如果"bit_position"等于7,表示我们要读取这一字节的最右边位,也就是最低位。因此,我们可以通过这样的方式来实现逐比特读取内存中的数据。
课程介绍
H.264/AVC是目前业界应用为广泛的视频压缩编码标准,包含了先进而且较为成熟的视频编码技术。本课程将从原理、标准和实现等多个角度,详细讲述了H.264/AVC视频编码标准的整体架构与技术细节,不但讲解了H.264/AVC标准协议文档中的内容,还通过实际的H.264码流分析/解码程序的开发来帮助观众更深入地理解H.264编码标准的原理。
推荐课程

H.264/AVC视频编解码技术详解
殷汶杰 · 81215人在学

FFmpeg系列之33:庖丁解牛之H.264/H.265视频编码
梅会东 · 445人在学

Windows之5:DirectShow+H.264+AAC采集编码
梅会东 · 86人在学

FFmpeg4.3开发系列之15:同步录音录屏并存储或直播实战
梅会东 · 434人在学

rtp协议实战视频教程
杨炳坤 · 369人在学

FFmpeg4.3开发系列之二:音视频基础理论
梅会东 · 1050人在学

JavaCV系列之2:JavaCV音视频基础及麦克风摄像头直播实战
梅会东 · 487人在学

Android视频编码和直播推流教程
杨万里 · 7429人在学

C#零基础入门到精通教程
徐杨 · 6905人在学