基于VGA卡的动画台标叠加器制作原理

基于VGA卡的动画台标叠加器制作原理・应用与实践・100084 北京 清华大学电子工程系图象教研组 张 利 陈连飞
【摘 要】 介绍了一种基于计算机V GA卡的动画台标叠加器制作原理,该台标叠加器不但能显示静态台标,而且可以播放由3D Studio制
巨无霸人体艺术
作的动画文件,从而实现为视频信号叠加动画台标的目的。
【关键词】 V GA卡 台标 动画
【Abstract】 T he pr inciple o f a n animat ion ico n o ver lay dev ice based o n V GA card is pr esented.T he device can display no t o nly st ill icon but
also a nimatio n file pr oduced by3D Studio,and t hus animatio n ico n ov erlay
o n video sig nals is r ealized.
【Key words】 V GA car d Ico n A nima tio n
1 概述
  台标是电视台的标志,它对于台与台之间的区别、节目性质的提示以及知识产权的保护都有十分重要的意义。以往电视台标的功能较为单一,如只显示几个文字或静态的画面。如今,随着电子技术的不断发展,台标已走向多样化,从静态画面走向动画就是一种较为明显的变化,例如,中央电视台在综艺大观节目中就采用动画台标的形式使综艺大观四个字围绕着某一图形做三维旋转,给人留下深刻印象。在动画台标叠加器中,有的是利用字幕机实现的,有的是利用计算机VGA卡改装的,也有的是由专用字幕叠加卡完成的。现介绍一种基于计算机VGA卡的动画台标叠加器的制作原理。
2 基本原理
  动画台标叠加器的制作原理是,先用美国Auto desk公司的三维动画软件3D Studio制作出动画台标的内容(动画软件一般是以帧间压缩格式FLIC文件给出的,386以上的计算机就可以制作。),然后就可以按计算机的VGA 卡编程方式播出。虽然编程时按照VGA卡模式,但是必须对VGA卡进行改造,以便能将VGA卡的内容叠加到视频信号上。3 硬件组成
  图1是以VGA卡为中心的动态台标叠加器的硬件原理图。整机由4块电路板组成。它们是VGA卡,信号叠加卡,BIOS及主机板,来自VGA卡的台标三基信号RGB与复合视频信号经信号叠加板混合后输出带有台标信息的视频信号,动画台标的原始数据以及控制V GA卡的程序存放在BIOS 板上。
图1 硬件原理图
3.1 VGA卡
  VGA卡是系统的核心,但是,并不是所有的VGA卡都能实现上述功能,选用的原则是分辨率可达1024×768(也可以是800×600,但为了便于内存块移动,最好是1024×768),有VGA特性接口,对于时钟信号易于更改。目
前,有两种VGA卡可以采用,一种是基于8900C芯片的T VGA8900C卡,另一种是基于ET4000芯片的VGA卡,下面分别介绍。
3.1.1 TVGA8900C卡
TVGA卡是美国T RIDEN T公司生产的一种显示卡。它完全支持VGA的各种模式,同时它的技术资料比较齐全,所以开发比较方便。
TVGA8900C主要由7个部分组成。它们是操作定序器(Sequencer),CRT(Cathode Ray Tube)控制器(CRT Controller),图形控制器(Graphics Controller),属性控制器(Attribute Contr oller),DAC逻辑支持(DAC Suppo rt Logic),总线接口(Host Bus Interface),显示内存接口(Display Memo ry Interface)。这些部件用来产生视频的R,G,B输出和视频内存及监视器的时序。
1)视频内存的定时由定序器产生,字符的时钟也由定序器产生。定序器提供了一个视频Cache,当处
于显示期间时,CPU通过Cache访问视频内存;当CPU访问视频内存时,视频数据可通过Cache输送到显示屏上去。这样就大大加快了CPU访问的速度。
2)CRT控制器用于产生行场同步时序、视频内存与显示屏之间的接口以及对DRAM(显示内存)的刷新时钟。
3)在显示期间,图形控制器把显示内存中的数据直接送到属性控制器中;在图形模式中,显示内存中数据被转换成数据序列,然后再按4-bit或8-bit的位平面格式送到属性控制器。图形控制器可以对内存数据进行逻辑操作,然后再送到系统总线上去。
4)属性寄存器从显示内存中获得数据,然后再转化成R,G,B信号送到显示器上去。另外,属性寄存器也控制着闪烁、下划线、插入光标。在图形模式中,图形控制器把显示内存数据转化成序列位(Serial bits),所有的输出颜都通过内部的调板和视频DAC转化成R, G,B值送到显示器去。这里,视频DAC选用18/24bit的颜查表(LU T)。
5)DAC逻辑提供了一个支持DAC读写操作的接口。
3.1.2 ET4000卡
ET4000卡与TVGA8900C的工作原理基本相似,这里只介绍它们的不同之处。
住宅室内装饰装修管理办法1)显示内存的换页方法
T VGA卡:先对3C4写索引0x e,再对3C5读写,寄存器3C5.E的低4bit是显示内存的A16~A19。
ET4000卡:换页寄存器3cd端口,bit0~bit3用于VRAM的段选择,为CPU写操作服务;bit4~bit7用于VRAM的段选择,为CPU 读操作服务。
天津中医学院第一附属医院2)显示起始地址寄存器
T VGA卡是横向起始位置的低3位在端口3CO.33的低3位,高7位在端口3d5.f;纵向起始位置的bit1~bit8在3d5.c端口,bit9在3d5.1e的bit5。
ET4000卡横向起始位置的bit0~bit1在3CO.13端口的bit0~bit1,bit2~bit9在3d5. d端口;纵向起始位置bit0~bit7在3d5.c端口,bit8~bit9在3d5.33的bit0~bit1。
3)显示模式设置
设备显示模式为1024×768,对TVGA卡是模式ox62,对ET4000卡是模式ox38。
设置显示模式为800×600,对T VGA卡是模式ox5E,对ET4000卡是模式ox30。
4)设电视模式时CRT寄存器设置
对TVGA卡的设置值为(25个寄存器):
7b,5f,60,9e,6b,92,6f,f0,0,60, 0,0,0,0,0,0,58,5a,3f,40,40,58, 6f,a3,ff。
对ET4000中寄存器的设置如下:
78,60,61,1b,68,95,6f,f0,0,60, 0,0,0,0,0,0,5f,81,57,80,60,5a, 6d,ab,ff。
3.1.3 设置屏幕分辨率为768×576
由于要将V GA卡上的信号叠加到电视上,必须使显示模式同电视制式一致。中国电视是PAL制,显示屏幕分辨率为768×576隔行扫描,625行扫描线。
1)水平扫描时序
图2给出了水平扫描的时序图
图2 V GA卡水平扫描时序图
图中涉及到6个寄存器:
¹水平回扫开始寄存器
º水平回扫结束寄存器
»水平扫描总时间寄存器
¼水平显示结束寄存器
½水平消隐开始寄存器
¾水平消隐结束寄存器
具体设置为:
水平扫描总时间为1024个象素(包括正程与逆程)
º水平同步脉冲宽度56个象素
»水平消隐开始为768个象素
¼水平消隐脉宽256象素
½水平显示宽度为768象素。
2)垂直扫描时序
图3给出了垂直扫描的时序图。
图3 V G A卡垂直扫描的时序图
图中也涉及6个寄存器:
¹垂直回归开始寄存器
º垂直回扫结束寄存器
»垂直消隐开始寄存器
¼垂直消隐结束寄存器
½垂直显示结束寄存器
¾垂直扫描总时间寄存器
具体设置为:
¹垂直扫描总时间625行扫描线
º同步脉宽为2行扫描线
»垂直显示为576行扫描线
¼垂直消隐开始时间为600行扫描线
由上述分析,使屏幕设为768×576,可按如下设置:
¹调用中断,设屏幕显示模式为1024×768×8。
º再设置25个CRT寄存器(关于各个CRT寄存器的含义见参考文献[1])。
3.2 信号叠加卡
  信号叠加卡是一块将VGA显示信号叠加在视频信号上的电路板。它的主要芯片是一块视频信号叠加集成电路。该芯片是美国MO-T OROLA公司生产的M C1378。信号叠加卡向V GA卡提供的信号是时钟信号,这样VGA卡的时序通过M C1378锁相而与视频信号同步。V GA卡向信号叠加卡提供的信号
是颜索引和台标三基R,G,B,颜索引用于抠象,也就是说如果VGA卡以指定的键显示图形,则该颜是透明。
3.3 扩展BIOS及控制卡
  BIOS是IBM微型计算机启动时的基本输入输出系统程序,它存在于计算机主板上。为了便于用户添加新的计算机硬件设备,计算机设有扩展BIOS的功能,用户只要按要求编写程序并烧制于EPROM中,计算机加电后在执行磁盘中的操作系统之前执行扩展BIOS。根据上述原理,可以将台标叠加器的有关程序以扩展BIOS的形式存入机中,这样系统就避免了用磁盘存储,从而增加了可靠性,延长了寿命。此外,为了调整台标的位置以及台标内容,该电路板还增加了台标选择控制功能。
3.4 计算机主板
VGA卡是为计算机的信息显示而设置的,固然可以自己制作一块带有微处理器的电路板来驱动VGA卡,但是在目前计算机主板性能
化工辞典价格比不断提高的情况下,直接利用计算机主板更为有利。用于播放动画台标的CPU档次386即可,而一块带有386CPU的主板才200元左右,成本比自己制作一块还便宜。此外,采用计算机主板开发产品的周期会大大缩短。
4 软件编程
软件编程主要读取动画文件FLIC,并按FLIC要求的速度在VGA卡上显示。为此有必要介绍一下FLIC文件的结构。
4.1 FLIC动画文件的结构
  FLIC是3DS的动画存储文件。它是一静态画面序列的描述,连续显示便可在屏幕上产生动画的效果。FLIC文件分三层:文件层、帧层、块层。文件层定义了FLIC的基本特征,帧层定义了块的数目,块层定义了块的大小,类型及数据。
  1)文件头结构
文件头共128字节,它们是:
00h DWORD fileSize,文件长度
04h U IN T FileFor mat,文件类型,对FLC为AF12h
04h U IN T FileFor mat,文件类型,对FLI为AF11h
06h U IN T FrameNumber,帧数
08h U IN T Width,画面宽度(象素个数)
0Ah U IN T Heig ht,画面高度(象素个数)
0ch U IN T Depth,图象深度(每象素占位数,恒为8)
0Eh U IN T Flag,FLIC文件标志,为0003
10h LONG Speed,帧间停留时间,对FLC文件单位ms 10h LONG Speed,对FLI单位是1/70s
14h U IN T Reserve1,保留为0
16h LONG Cr eate T im e,创建日期及时间
1Ah LONG Greator,创建程序加入的私有号
1Eh LONG Update Tim e,最近更改日期及时间
22h LONG Updater,更改程序加入的私有号
26h U IN T AspectX,
28h U IN T AspectY,AspectX:AspectY为画面横纵比
2Ah BYTE Reserved2[26h],保留为0
50h LONG OffsetFramel,第一帧画面偏移
54h LONG OffsetFrame2,第二帧画面偏移
58h BYTE Reserved3[28h],保留为0
  一般而言,真正的第一帧是从Offset Frame2开始,而OffsetFr am el指向文件头。
  2)帧头结构
0h DWORD FrameSize,帧大小,包括本帧头
04h WORD FrameID,帧标识,恒为F1FAh
06h WORD ChunkNumber,本帧中块数
08h BYTE Reserved[8],保留为0
  3)块头结构
0h DWORD ChunkSize块大小,包括本块头
04h WORD chunkTy pe块类型
06h块的数据
  其中ChunkT ype有许多种,每种应用程序可自由扩展,3D中常用的有6种。
4)常用的6种块类型
¹类型0004h
调板信息,数据结构如图4所示。
世界上最低的盆地图4 类型0004h数据结构
调数取值0~255,当调数=0时,实际指调256。一般而言:子块数n=0(即256)
º类型000bh
类似于类型04h,一般对FLC为04h,对FLI是0Bh。另外,04h中R,G,B的灰度级为256级(28),而0Bh中R,G,B的灰度级为64级(26)。
»类型000Fh
用于压缩整画面数据,常见于画面第一帧,图象以行排列(见图5)。
图5 类型000Fh数据结构
  每个小块定义如下
T Data
  第一字节T:T<0,则data长度为ûTû个字节,表示data是屏幕上的一段象素的复制;
如果T≥0,则data为1个字节,表示接下来T个象素值都为data。
¼类型0007h
只适用于FLC文件,含有本帧图象与上帧图象改变部分,结构如图6所示(它是以字为基础)。
图6 类型0007h数据结构
可选字定义如下
高2bit为11时,剩余部分为跳行数;
高2bit为10时,低字节为当前行最后一个(该行有奇数个字节时);
高2bit为00时,则为小块数,接下去为小块内容。小块结构:
第一字节为跳列数,第二字节为小块类型T ype。
T ype>0:表示从块中搬到图象中的字的个数,其后是数据;
T ype<0:它的绝对值表示将块的下一个字节复制到图象中的次数。
½类型000Ch
类似于0007h,这以字节为基础,常用于FLI文件。结构如图7所示。
图7 类型000Ch数据结构
首行号指要改变的第一行,每行分若干小块。小块结构:
华宇乐悠游
第一字节为跳列数,第二字节为Ty pe。
T0,T

本文发布于:2024-09-23 00:34:04,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/649871.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:显示   叠加   台标
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议