音视频编解码器AT的linux设备驱动程序设计讲解Word格式.docx
- 文档编号:21218812
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:7
- 大小:76.34KB
音视频编解码器AT的linux设备驱动程序设计讲解Word格式.docx
《音视频编解码器AT的linux设备驱动程序设计讲解Word格式.docx》由会员分享,可在线阅读,更多相关《音视频编解码器AT的linux设备驱动程序设计讲解Word格式.docx(7页珍藏版)》请在冰豆网上搜索。
MPEG-4;
网络视频服务器;
设备驱动程序
引言
在数字多媒体压缩领域,ITU,ISO等组织制定了许多成功的编码标准,如以JPEG和JPEG2000为代表的静止图像压缩标准,以MPEG-1和MPEG-2为代表的中高码率多媒体数据编码标准,以H.261,H.263,H.263+,H.263++等为代表的低码率、甚低码率运动图像压缩标准,以及覆盖范围更宽面向对象应用的MPEG-4。
这些标准之间在码率、图像质量、实现复杂度、差错控制能力及可编辑性上有着很大差别,满足了各种数字图像应用的不同需要。
与传统的基于像素的视频压缩标准不同,MPEG-4采用基于对象的视频编码方法,它不仅可以实现对视频图像数据的高效压缩,还可以提供基于内容的交互功能。
此外,为了使压缩后的码流具有对于信道传输的鲁棒性,MPEG-4还提供了用于误码检测和恢复的一系列工具,这样采用MPEG-4标准压缩的视频数据可应用于带宽受限、易发生误码的网络环境中。
韩国Pentamicro公司的2通道MPEG-4 A/V编解码器AT2042,以其多种音视频压缩标准、专用运动侦测算法、代码转换和速率转换功能、实时数字水印等技术优势,广泛应用于各种高可靠性和高性价比的嵌入式网络视频监控系统中。
(4)视频采用ITU-R 656 / ITU-R 601接口标准,音频采用PCM,I2S商用接口标准;
(5)内置ARM946E核,在系统上电/复位时,AT2042的固件程序可由外部主机载入AT2042外挂的SDRAM;
(6)外部主CPU通过AT2042的两个寄存器和四个FIFO与AT2042通信,编解码数据的输入输出可用中断方式。
2.基于AT2042的网络视频服务器的
硬件设计
网络视频服务器是一种内置Web服务器的嵌入式数字远程监控系统,集视频采集、实时压缩和网络传输功能为一体,广泛应用于分布式的安全监控、视频会议和可视电话等领域。
网络视频服务器有自己的IP地址和网络接口,可直接接入网络,用户用普通的Web浏览器作为客户端可以实时观看视频服务器发送的图像。
图2是基于AT2042的网络视频服务器的硬件原理图。
1.AT2042的功能结构及主要特点
AT2042是一个内置微控制器ARM946E的2通道A/V CODEC芯片,主要完成对视频和语音数据的编码和解码,支持多种音视频编解码标准,可直接与IBM、Motorola、ARM、Xscale和Axis等多种CPU接口,无需其它附加电路。
AT2042的内部结构如图1所示。
图1 AT2042的内部结构
AT2042内部主要有以下四个部分:
(1)接口部分,主要包括音视频数据I/O接口、控制接口和内存接口;
(2)视频编解码部分,包括MotionEstimation/Prediction、DCT/QIQ/IDCT和VLC/VLD;
(3)音频编解码部分Audio Codec;
(4)内置微控制器ARM946E。
AT2042有以下主要特点:
(1)支持MPEG-1、MPEG-2、MPEG-4、H.263和Motion-JPEG等多种视频压缩标准,以及ADPCM、MPEG-1 Layer-Ⅱ和Layer-Ⅲ等音频压缩标准;
(2)支持多种图像分辨率和帧速率,支持CBR和VBR两种码率控制方式;
(3)运动侦测功能,侦测区域和灵敏度可选;
图2 基于AT2042的网络视频服务器的
硬件原理图
图中,视频编解码电路是模拟视频信号和AT2042之间的接口电路,负责视频数据的模/数和数/模转换以及数字视频信号格式转换,输入的模拟视频信号先经过视频编解码电路进行前端处理,产生符合AT2042视频接口标准的8比特ITU-R BT.656数字视频信号。
输入的模拟音频信号经过模拟音频ADC电路产生符合AT2042音频接口标准的I2S数字音频信号。
之后,在外部主CPU的控制下,该数字音视频数据经过压缩/解压芯片AT2042进行硬件压缩编码,产生的压缩编码数据流通过芯片内部集成的MuxFIFO接口输出。
网络视频服务器的解压缩编码是压缩编码的逆过程,需要解压的数据流经过AT2042内部集成的Demux FIFO接口输入,解压缩编码的基本原理类似于压缩编码,不再赘述。
3.Linux系统下AT2042设备
驱动程序设计
系统调用是操作系统内核和应用程序之间的接口,设备驱动程序则是操作系统内核和机器硬件之间的接口。
设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序看来,硬件设备只是一个设备文件,应用程序可以像操作普通文件一样对硬件设备进行操作。
设备驱动程序主要完成以下的功能:
(1)对设备初始化和释放;
(2)把数据从内核传送到设备和从设备读取数据;
(3)读取应用程序传送给设备文件的数据和回送应用程序请求的数据;
(4)检测和处理设备出现的错误。
基于AT2042的网络视频服务器系统的主控操作系统为Linux实时操作系统,将AT2042定义为Linux系统中一个标准字符设备,对AT2042的驱动是编写Linux系统下的芯片级设备驱动程序。
设备驱动程序可以包含在Linux内核中,但为了升级和修改方便,我们将其作为一个独立的模块,待系统启动后再动态加载到内核中。
AT2042设备驱动程序工作于内核模式,完成对AT2042的初始化、编解码数据的读写以及编解码功能参数的设置。
它提供了AT2042和上层应用程序之间的接口,向下通过芯片接口实现对AT2042芯片的直接控制,向上则为应用程序提供驱动程序接口。
AT2042设备驱动程序包含的功能函数主要有模块入口函数、设备操作函数集合和中断服务程序。
3.1模块入口函数
模块入口函数即模块加载/卸载的入口点,它向内核注册和取消注册AT2042设备的驱动程序,提供两个函数:
模块加载函数init_module()和模块卸载函数cleanup_module()。
加载函数init_module()向内核注册了AT2042设备驱动程序模块所能提供的所有功能,它调用内核函数register_chrdev()获得AT2042设备的驱动号,将设备登记到相应的设备数组,并返回设备的主驱动号;
卸载函数cleanup_module()仅当模块被卸载时才调用,它通过调用内核函数unregister_chrdev(),取消了在init_module()中所完成的注册。
3.2设备操作函数集合
用户进程通过设备文件同硬件打交道,对设备文件的操作就是系统调用,把系统调用和设备驱动程序关联起来的是一个非常关键的数据结构file_operations,定义如下:
struct file_operations {
int (*seek) (struct inode * ,struct file *,off_t ,int);
int (*read) (struct inode * ,struct file *,char ,int);
int (*write) (struct inode * ,struct file *,off_t ,int);
int (*readdir) (struct inode * ,struct file*, struct dirent * ,int);
int (*select) (struct inode * ,struct file *,int ,select_table *);
int (*ioctl) (struct inode * ,struct file *,unsined int ,unsigned long);
int (*mmap) (struct inode * ,struct file *,struct vm_area_struct *);
(下转第44页)
-33-
向上收费的可能性就会大大增加。
另外中国市场,是海外频道一直想进入的,只是苦于落地上受到相关限制,如果有这么好的一个工具和既定的用户群,可以实现目的,他们也必然非常乐意。
而这也是可以作为收费频道的来源。
2、赢利模式的探索之道
作者认为在短期内P2P流媒体的发展还是属于投入期,绝不能拿短期效益来衡量其投入产出比。
在短期内的重点是发展用户,把市场做起来,而不是片面强调盈利。
用户数就是他的最大回报和增值基础。
P2P流媒体的可能赢利点在于广告收入、收费频道和向上收费。
其中,广告收入随时可以做,但其收入不足以构成赢利的主要来源。
而且收入多少是和用户规模成正比。
收费频道和向上收费是P2P流媒体运营的主要收入。
以免费频道来吸引用户,以收费频道来获取利润;
通过规模用户来向上和内容提供商实施分成,这一切的可行之道的前提就在于用户的规模化,但这需要时间来酝酿。
盈利模式的形成绝非一朝一夕的事,还需要积累、探索和不断总结,而在这过程中,政策的监管又将是一大难题。
3、监管的应对之法
监管是必然的,也是产业发展的有序保证。
只是在产业还未完全明晰之前,监管对于企业的影响还是很大的,甚至会导致困局。
从目前来看,监管主要体现在以下二个方面:
运营商的监管、国家政策部门的监管。
1)运营商的监管
运营商的监管主要分手段和本质两方面,从本质角度,相关产业政策的引导是必需的,这是产业发展秩序的必然,而目前业界讨论最多的则是监管的手段问题。
P2P流媒体的诞生其实是最大化的利用了网络的分发特性,而分发和网络的通达性正是互联网络的特性,只是由于国内的网络运用一直是维持着过剩的态势,突然出现的喷涌,使运营商一下子无法适应,在调整期不得不采用了一些封、限等手段,但这些方法并不是根本解决之道,只是现阶段的应变之法。
应该说,P2P流媒体技术融入下一代互联网是必然的,而运营商只是鉴于对网络现状的担忧,所采取的行动更多的是为了保证在现有条件下网络的正常化。
先稳定再发展。
所以,目前运营商所采用的监管手段是暂时的、保护性的。
又爱又恨是运营商对于P2P流媒体的写照。
2)国家政策部门的监管(1)海外影响力:
P2P流媒体的用户群里有不少来源于海外,其广泛应用有助于推动国内节目文化的海外影响力,而2008“科技奥运”的口号则正好为P2P流媒体展示魅力搭建了大好舞台,以P2P流媒体的方式为全球各地更多的用户提供国内的奥运比赛,这对扩大奥运的海外推广是有重大作用的。
从这个角度出发,P2P流媒体赶上了一个好机会,为奥运提供服务的技术优势及海外影响力有可能使他获得一个相对宽松的政策环境。
(2)规模的力量:
以P2P流媒体为代表的网络新媒体的趋势是不可逆转的,但网络的自由不代表彻底的放开,产业的前行需要新的秩序引导,P2P流媒体作为新事物,必然有其两面性,如何引导是关键,这其中网民的力量又会对发展起着推动
作用。
所以现在,需要的是形成这股力量,使
其成为监管者不可忽视的部分,从而使民众为自己在政策上争取有利的地位。
四、结语
但万事开头难,P2P流媒体目前还处于发展前期,还有很多问题需要解决。
产业利益是属于大家的,而群体的力量更甚于个人,P2P流媒体能否继续风生水起更在于业界的共同努力,而作为一个正在运行中的新事物,生存和发展是它不断努力向前的目标。
而无论如何P2P流媒体的广泛应用,使得IPTV在实现技术的突破而走出困境,IPTV离我们正越来越近。
参考文献:
1、齐德昱.IPTV发展展望.《计算机世界》.2005.10
2、网络电视发展现状.《每周电脑》.2005.11.07,第41期
3、P2P流媒体技术应用.《通信世界》.2005.09
作者简介:
1、郭长庚 男,汉族,1962年生,本科学历,副教授,中国计算机学会高级会员,中国电子学会高级会员,任许昌职业技术学院信息工程系主任。
2、连智锋 男,汉族,1966年生,本科学历,讲师,中国计算机学会会员,任许昌职业技术学院信息工程系教研室主任。
-44-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 视频 编解码器 AT linux 设备 驱动程序 设计 讲解