视频解码技术的DSP实现研究

VIP免费
3.0 赵德峰 2024-11-19 4 4 775.79KB 69 页 15积分
侵权投诉
摘要
AVS 是我国具备自主知识产权的第二代音视频编码标准,标准的第二部分,
AVS-P2 主要针对视频编解码。在编码效率上 AVS-P2 H.264/AVC 相当,但是算
法复杂度只有 H.264 70%。本文基于 AVS-P2 来研究视频解码技术。
DSP 是专用的数据处理芯片,特别适合用于视频解码这种高运算复杂度应用。
基于 DSP 开发的视频解码程序的效率要比基于通用处理器开发的高,程序的可升
级和可维护性要比基于 ASIC 芯片开发的强。本文选择的开发平台是 TI 公司推出
的面向多媒体处理的 C6000 系列 DSP 芯片,TMS320DM642
本文完成的工作是将一个基于 PC AVS-P2 视频解码器程序移植到
DM642 上实现对 AVS 码流的实时解码。
首先研究AVS 频压编码论,主要AVS 编码流程内预
技术,帧间预测技术,变换量化和熵编码技术等。
接下来研究了 DM642 的硬件平台和软件开发。硬件方面主要研究了 DM642
CPU 结构和指令系统、两级 Cache EDMA 控制器等。软件方面主要研究了
TI 的实时操作系统 DSP/BIOS,以及如何使用片级支持库(CSL)中提供的 API 来控
DM642 的片上外设。
在前面视频编码理论和硬件平台部分研究的基础上,本文的后两部分研究基
DM642 AVS-P2 视频解码器的实现、程序移植和优化。解码器程序主要由 3
个部分组成,分别完成码流的接收、解码和显示等功能。在程序的移植和优化上,
主要是依据 DM642 的硬件特点来修改程序,使得解码器能高效的运行。例如,
DM642 的存储器配置的特点,为不同的数据结构选择合理的链接地址,根据
C64x 特有的指令系统改写一些关键的函数等。测试结果表明,本文所做的移植优
化工作提高了解码器的效率。
关键词:视频编解码 AVS DM642 移植 优化
ABSTRACT
AVS standard is owned by China with fully Intellectual Property. The second part
of the standard,AVS-P2, is about video codec. the coding efficency of AVS is equivalent
to H.264, while the complexity is only seventy percent of H.264. This paper researched
on the decoding technology based on AVS-P2.
DSPs is dedicated in data processing, especially for the application of video codec
with high operation complexity. A video codec developed on DSPs has much better
performance in ecfficiency than the general purpose processor, and is more convenient
in program manintenance and upgrading tha ASIC. This paper choses DM642 as the
developping platform, which is an ideal choice for digital media applications.
The task of this paper is to transplant a decoder based on PC to DM642, in order to
decode the AVS bit stream in real time.
In the front part of this paper, we introduced the theory of the AVS video codec,
including the flow chat of how does the AVS codec work, intra prediction technology,
inter prediction technology, transform, quantization and entropy coding, etc.
Then , we researched on the hardware and software developping of DM642. In the
aspect of hardware, we mainly studied the CPU architecture of DM642 and its
instruction set. While in the software developping, we focused on the real time
operating system DSP/BIOS and how to use the chip support library(CSL) to operate
the on-chip peripherals.
On the basis of above two, in the last past of this paper,we started to do the
implementing, ransplanting and optimizing of the AVS decoder to the DM642
platform.The programme of the decoder consists of three different parts, which are bit
stream acquring, decoding, and displaying respectively. The transplanting and
optimizing of the programme is based on the DM642 architecture, in order to run
efficiently on the DSPs. For example, we allocated proper linked address for different
data structure according to the memory architechture of DM642. We also modified the
key functions of the programme in accordance with the special C64x instruction set.
The experiments revealed that affter we applied the optimization methods, the
efficiency of the decoder is improved greatly.
Key Wordsvideo codecAVSDM642transplantationoptimization
目录
摘要
ABSTRACT
第一章 绪论 .......................................................... 1
§1.1 视频编解码技术的发展现状...........................................................................1
§1.2 视频压缩编码的国际标准...............................................................................2
§1.3 本文的主要工作及结构安排...........................................................................4
第二章 视频压缩编码理论 .............................................. 5
§2.1 AVS 视频编码标准........................................................................................... 5
§2.2 AVS 标准帧内预测技术................................................................................... 6
§2.2.1 AVS 的帧内预测算法............................................................................. 7
§2.2.2 宏块编码举例.........................................................................................8
§2.3 AVS 标准帧间预测技术................................................................................... 9
§2.3.1 参考图像的选择...................................................................................10
§2.3.2 分块大小的选择...................................................................................10
§2.3.3 匹配准则...............................................................................................11
§2.3.4 运动搜索算法.......................................................................................11
§2.3.5 帧间编码流程.......................................................................................12
§2.4 AVS 的整数变换和量化技术......................................................................... 13
§2.4.1 AVS 8×8 整数变换........................................................................... 13
§2.4.2 AVS 标准的量化技术........................................................................... 14
§2.5 AVS 的熵编码技术......................................................................................... 15
§2.5.1 指数哥伦布编码...................................................................................15
§2.5.2 语法元素到编码码字的映射...............................................................17
§2.5.3 AVS 块变换系数的熵编码...................................................................18
第三章 DM642 硬件平台和软件开发 .................................... 21
§3.1 DM642 芯片的架构........................................................................................ 21
§3.1.1 DM642 CPU 结构和指令集 ......................................................... 22
§3.1.2 DM642 的二级 Cache 结构............................................................... 23
§3.1.3 DM642 的关键外设 EDMA .............................................................. 26
§3.2 DM642 的软件开发........................................................................................ 27
§3.2.1 片级支持库(CSL)的使用 ............................................................. 28
§3.2.2 实时操作系统 DSP/BIOS 的原理 ..................................................... 29
§3.2.3 DSP/BIOS 的线程调度 ...................................................................... 30
§3.2.4 DSP/BIOS 的任务间通信 .................................................................. 31
第四章 AVS 视频解码器的 DSP 实现 .................................... 33
§4.1 AVS 解码器的软件框架.............................................................................. 33
§4.2 码流接收模块的设计...................................................................................35
§4.2.1 TI 的网络开发套件(ndk) ................................................................... 35
§4.2.2 网络协议栈的配置和初始化.............................................................36
§4.2.3 基于 Socket 套接字接收码流............................................................37
§4.3 解码模块的设计...........................................................................................38
§4.3.1 AVS 码流的结构................................................................................ 39
§4.3.2 宏块的解析.........................................................................................40
§4.3.3 宏块的解码.........................................................................................42
§4.4 视频显示模块的设计...................................................................................42
第五章 AVS 解码器的移植和优化 .......................................45
§5.1 移植代码到 DM642 ....................................................................................... 45
§5.2 C 语言代码的优化 ..........................................................................................46
§5.2.1 选择合适的数据类型............................................................................46
§5.2.2 分析 C语言代码性能 ...........................................................................47
§5.2.3 消除代码的存储器相关性....................................................................47
§5.2.4 使用内联函数........................................................................................48
§5.2.5 软件流水................................................................................................48
§5.3 基于 Cache 的优化.........................................................................................49
§5.3.1 L1P 的优化 ............................................................................................50
§5.3.2 L1D 的优化........................................................................................... 52
§5.4 AVS 解码器核心模块的优化......................................................................... 54
§5.4.1 码流读取的优化...................................................................................54
§5.4.2 哥伦布解码的优化...............................................................................55
§5.4.3 反量化模块的优化...............................................................................56
§5.4.4 帧内预测模块的优化...........................................................................57
§5.5 代码优化实验结果.......................................................................................................61
第六章 总结与展望 ................................................... 63
参考文献 ............................................................ 65
在读期间公开发表的论文和承担科研项目及取得成果 ...................... 69
一、发表论文............................................................................................................................69
二、科研项目............................................................................................................................69
............................................................... 71
第一章 绪论
1
第一章 绪论
近年来,随着 Internet 在全球范围内的普及和移动通信的迅猛发展,数字视频
技术获得了日益广泛的应用,出现了多种新兴多媒体业务,如视频会议、可视电
话、视频点播、远程监控、高清电视和网络视频传输等。基于 Internet 和移动网络
的视频压缩技术和传输技术成为 21 世纪我国信息化过程中的热门研究课题。
视频压缩技术是多媒体技术发展的基础。视频的信息量很大,而网络带宽则
相对有限。例如具有相对较低分辨率 QCIFYUV 格式为 4:2:0 的视频图像,在帧
率为 30 fps 下进行数据压缩时,视频的码率仍需要 9.1 Mbps。未经压缩的彩色电
视信号的传输速率更是达到了 216 Mbps。这么大的数据流量是无法适应当前网络
的,为了使视频信息适合在网络中传输,需要对它进行压缩。常见的视频压缩技
术都是有损压缩,它们的共同目标是如何在尽可能低的码率(或存储容量)下获得尽
可能好的图像质量。本文使用的是 AVS 视频压缩标准。
视频传输技术是多媒体技术发展的关键。以视频监控系统为例,由于视频采
集端和监控端通常相距较远,它们通过 Internet(TCP/IP 网络)完成通信。视频采
集端捕获图像,经过压缩编码后发送到网络中,监控端从网络中收到码流,将其
解码并显示。在视频监控应用中,系统的实时性要求通常较高。视频流在网络中
传输,有两种传输协议可选。TCP 是面向连接的协议,开销较大,不利于实时数
据的传输,UDP 是面向无连接的协议,它收到数据后不做完整性的检测直接交
付给应用层。在本文中,使用 UDP 协议来传输视频码流。
§1.1 视频编解码技术的发展现状
目前主要有两个国际组织在负责制定视频编码标准:一个是国际电信联合会
(ITU-T)下的 VCEG 视频编码专家组,另一个是国际标准化组织 ISO 和国际电工委
员会 IEC 下的 MPEG 运动图像专家组。它们分别针对不同的应用制定了一系列视
频编码标准。
ISO/IEC 的运动图像专家组 MPEG 致力于为运动图像及其音频的压缩处理和
播放开发标准。它们开发了一系列标准:首先是 MPEG-1它能以 CD 品质来压缩
音视频;接着是 MPEG-2它能处理电视品质的视频和音频的播放和存储;后来又
开发了 MPEG-4它是关于视听编码的新标准,在实际中得到了广泛的应用;再后
视频解码技术DSP 实现研究
2
来开发了 MPEG-7 MPEG-21MPEG-7 标准致力于对复杂的信息进行组织、
库以达到快速、有效的检索,MPEG-21 标准由 MPEG-7 发展而来,主要规定了数
字节目的网上实时交换协议。
ITU-T VCEG 视频编码专家组开发了一系列与电信网络和计算机网络上的
视频通信相关的标准:H.261 标准可用于基于 ISDN 的视讯通话和视频会议;
H.262
标准是 VPEG MPEG 组成的联合编码专家组共同开发的,主要用于 DVD
SVCDH.263 是基于 H.261 开发的,它的效率要比 H.261 出很多;H.263
ITU-T 的下一代编码器是 H.264它在性能上要超过 H.263 很多,所以现在通常
认为 H.263 已经是一个过时的标准。随着 H.264 的成熟,VCEG 已经在着手制定
H.265,它在算法上与 H.264 有很大的区别。
AVS 标准是针对我国音视频产业的需要,按照国际开放型规则制定的中国自
主标准。2003 11 月,中国数字音视频编解码技术工作(AVS)正式公布了其最
终稿。AVS 标准具有四大特点:(1)性能高,编码效率与 H.264 相当;(2)复杂度低,
算法复杂度要比 H.264 低;(3)现成本低,软硬件实现成本都比 H.264 低;(4)
利授予模式简单,费用明显低于同类标准。此外,AVS 是一套包含视频、音频、
媒体版权管理在内的完整标准系统,为数字音视频产业提供了更全面的解决方案。
§1.2 视频压缩编码的国际标准
(1) H.261 标准
H.261 是最早出现的实用视频编码建议,是主要针对会议电视、可视电话、窄
带综合业务数字网(ISDN)等实时应用而提出的一套编码标准。支持 CIF QCIF
种分辨率的输入视频图像。以宏块为编码单位,分为帧内编码和帧间编码,主要
采用了运动估计/补偿、DCT 变换、量化和霍夫曼编码等技术。由于该标准主要针
对实时业务,要求编码延时尽可能小,所以在编 P帧时只采用一个参考帧。
H.261 标准其实只规定了如何对码流进行解码,这使得编码器的开发者就可以
根据具体的应用来设计编码算法,只要生成的码流符合标准的格式即可。
H.261
准的这种方法对后续标准的制定产生了深远的影响,H.263 H.264 等编码标准都
只定义了码流的格式及其解码的方法。
(2) H.263 标准
H.263 ITU-T 1996 年为低码率应用制定的视频编码标准,支持码率小于
64 kbits/s 的应用,最初设计为基于 H.324 系统进行传输。
H.263 的编码算法与 H.261
基本一样,但在技术上做了改进,以提高编码性能和纠错能力,在相同的码率下
H.263 能比 H.261 提供更高的图像质量。数据流层次结构的某些部分在 H.263 中是
摘要:

摘要AVS是我国具备自主知识产权的第二代音视频编码标准,标准的第二部分,AVS-P2主要针对视频编解码。在编码效率上AVS-P2与H.264/AVC相当,但是算法复杂度只有H.264的70%。本文基于AVS-P2来研究视频解码技术。DSP是专用的数据处理芯片,特别适合用于视频解码这种高运算复杂度应用。基于DSP开发的视频解码程序的效率要比基于通用处理器开发的高,程序的可升级和可维护性要比基于ASIC芯片开发的强。本文选择的开发平台是TI公司推出的面向多媒体处理的C6000系列DSP芯片,TMS320DM642。本文完成的工作是将一个基于PC开发的AVS-P2视频解码器程序移植到DM642上实现...

展开>> 收起<<
视频解码技术的DSP实现研究.pdf

共69页,预览7页

还剩页未读, 继续阅读

作者:赵德峰 分类:高等教育资料 价格:15积分 属性:69 页 大小:775.79KB 格式:PDF 时间:2024-11-19

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 69
客服
关注