Java多媒体技术-.pdf





《Java多媒体技术-.pdf》由会员分享,可在线阅读,更多相关《Java多媒体技术-.pdf(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 1 章Java多媒体技术概述媒体(Medium)是指用以存储、传输信息的媒介或载体,语言、文字、图形、数据、书刊、报纸、画册、电报、电话、电影、广播、电视等都是媒体。多媒体是指多种媒体的综合开发利用,可以指多种存储媒体,例如磁带、磁盘、光盘等,也可以指多种传输媒体,例如无线电波、电缆、光缆、网络等,又可以指多种感觉媒体,例如文字、图形、图像、声音、应用程序等,它是多种形式的信息载体。媒体最重要的特性是其自身具备了多样性、交互性、集成性和实时性,同时它还为使用者提供了无限想象的创作空间。在信息社会中,应用各种不同形式的媒体,可使得人与人之间的交流、沟通更加方便、简洁、明了,多种媒体的综合利用
2、可使其交互性达到最佳效果。多媒体技术是指应用计算机技术综合处理和创作各种不同形式的媒体信息,例如文本(text)、声音(audio)、图形(graphic)、动画(animation)、静态图像(static image)和动态视频图像(motion video)等信息,并以图、文、声等并茂的表现方式提供直观、生动的立体信息,便于人类相互间的交流。目前,多媒体技术正在实现现代传媒的一场革命。1.1 Java多媒体处理类和接口Java 2标准的主要内置类库如图1.1 所示,用于处理多媒体的类库有Java Media 和 Java Foundation Classes(JFC,Java基础类)。类
3、库中提供了极其方便而又丰富的接口(多媒体支持类库 API),其中包括AWT(Abstract Window Toolkit)、Swing、Java 2D API、Java 3D API、JAI(Java Advanced Imaging)、Java Sound、JT(Java Telephony)、JS API(Java Speech)、JMF(Java Media Framework)和 JSDT API(Java Shared Data Toolkit)等 API,它们对多媒体技术的支持能力是相当强大的,这些 API 体现了 Java处理多媒体的能力,通过它们可以方便地实施对文本、图形、图
4、像、声音等各种媒体数据的处理与展示。1.1.1 AWT AWT(Abstract Window Toolkit)API 是 Java 抽象窗口工具包,它实现了一组GUI(Graphics User Interface,图形用户界面)组件。AWT 属于 Java 2平台图形功能的范围,AWT 包定义了窗口系统所显示的各种对象,它也是Java 基础类(JFC)的一部分。AWTJava多媒体技术2提供了一整套图形和用户界面技术,它是创建基于窗口的图形用户界面的便利工具,利用AWT 类库,通过“窗口”、“按钮”、“菜单”等可视的灵活方式提供人机交互的手段,使人机交互更为直观和生动,同时AWT 还制定了
5、响应和处理人机交互事件的机制。Java Applets Collections Framework JAIN Java 2 Java 2SE JVM/JRE JavaBeans Java Java Utilities Java Thread Java Media BDK JAF JAI API Java 3D API Java Sound APIJT API JS API JMF API Drag&Drop Swing AccessibilityAWT JFC JCEJSSEJAASSecurity RMI/IOP Java IDL JDBC SQL SQLJConnection API Le
6、gacy/ERP EJB Interoperability JMS JMX JTA/JTS JNDI SOAP,CORBA,COMJAXB BJAXHJAXM JAXPJAXR(UDDI)JAX-RPC(SOPC)JAXTJAXWJSP JSP TaglibsJIDIetsJava Phone APIWML(JAXW)JAX Pack JDOM/SAX Servlets Personal Java API(MIDP/CDC)Java TV API Embedded Java API(CLDC)Java Card API(OCF)Java 2EE Java 2ME KVM/CVM 多媒体 API
7、 Java 2D API JSDT API 图 1.1 Java 2标准的主要API 第 1 章Java 多媒体技术概述31.1.2 Swing Swing API 是属于 Java 2基础类(JFC)的一部分,它实现了一组新的GUI(Graphics User Interface,图形用户界面)组件,Swing 扩展了 AWT 组件集,是以100%纯 Java 语言实现的。Swing API 组成了 JFC 的用户界面功能的核心部分,它不仅仅是AWT 组件的替代品,而且在这些组件的基础上有了很大进步,同时外加了一些AWT 没有的新组件,例如树视图、列表框等。Swing 可以自动产生与任何OS
8、(操作系统)平台(例如Windows、Solaris、Macintosh)相吻合的外观感觉效果。1.1.3 Java 2D API Java 2D API 是 Java用于开发二维图形的API,它体现了Java对处理二维图形的支持。在 Java 的 AWT 和 Swing 类库中,提供了一些简单的二维图形处理功能,而Java 2D API则提供了强大灵活的并且独立于图形设备和分辨率的二维图形处理功能。Java 2D API 可以支持多种图形、字体、图像的处理,并且提供了统一的图形转换机制。1.1.4 Java 3D API Java 3D API 是 Java用于开发三维图形的API,它体现了
9、Java对处理三维图形的支持,Java 3D API 从高层次为Java程序开发者提供了对三维实体的创建、操纵和着色等功能,它简化了开发Java三维图形软件的工作,另外,Java 3D API 的低级 API 依赖于目前已经有的三维图形处理系统,例如Direct3D、OpenGL、QuickDraw3D和 XGL 等。Java 3D API的体系结构可以使其开发的应用程序“到处运行”,又使其可以充分利用现有系统的三维特性和处理方法。1.1.5 JAI API JAI(Java Advanced Imaging API)是 Java用于处理图像的API,JAI 实际上是一组Java类库,它实现了
10、一组核心图像处理能力的方法和一组核心的图像处理运算符,其中包括许多点、区域和频域的运算符。JAI 提供比 Java 2D API 和 Java基础类库更强的图像处理功能,并且同时与Java 2D API 和 Java基础类库兼容,JAI 可以将复杂的、高性能的图像处理技术融合到 Java 小程序和 Java 应用程序中,从而扩展了Java平台。Java多媒体技术41.1.6 Java Sound API Java Sound API 是 Java 用于处理音频(声音)的API,它实际上是一个非常高质量的32 声道音频播放器和MIDI 控制的声音合成器。Java Sound API 支持多种音频
11、文件格式,例如 AIFF、AU 和 WAV 格式,以及多种基于MIDI 音乐的文件格式。Java Sound API 提供的音频播放器可以播放8 比特或 16 比特、单声道或立体声、采样率在8kHz48kHz 范围内的各种音频数据。1.1.7 JT API JT(Java Telephony)API 是 Java用于处理电话语音和操作的API,JT API 一般应用于嵌入式设备中,在 J2SE 平台中,它可以将电话功能融合到计算机技术中。JT API 实际上是一组模块化应用程序编程接口,它使Java程序开发者能够创建与平台无关的、具有电话性能的 Java应用程序和小程序,例如Internet
12、电话、交互式语音应答器等。1.1.8 JS API JS(Java Speech)API 是 Java用于处理语音识别和语音合成的API,实际上在API 中定义了一种软件接口,它使得语音程序的开发者能够将更加精密而自然的用户语音识别和语音合成的应用接口加入到Java应用程序和小程序中,以达到语音处理程序在多种平台上运行的目的。1.1.9 JMF API JMF(Java Media Framework)API 是 Java主要用于处理视频、音频媒体流的API,实际上它是一组Java 类库,它可以实现视频和音频的采集、传输、接收和播放等功能。JMF提供的媒体播放器,可以播放例如MPEG-1、MP
13、EG-2、QuickTime、AVI、WAV、AU、MIDI等多媒体数据。在 Java应用程序或小程序中应用JMF 技术可在不同平台上处理媒体流数据。另外,JMF 还为其他多媒体API 提供一些基础功能,例如音频处理技术等。1.1.10 JSDT API JSDT(Java Shared Data Toolkit)API 是 Java 用于处理多媒体传输的API,它为交互的、协作式的多媒体的应用提供了多点的数据传输服务,它支持全双工的多点通信功能,同时第 1 章Java 多媒体技术概述5也支持多点广播功能。另外,JSDT 提供基于令牌的分布式同步机制,可使得在不同地点的用户访问同一资源而不发生
14、碰撞。1.2 计算机常用的多媒体文件类型在计算机应用领域中,根据媒体的不同性质,通常将媒体分为文字、声音、图形、图像、动画、视频、应用程序等文件类型,其表现形式通过计算机数据文件格式加以区分,例如,常见的媒体文件格式有纯文本格式(*.txt)、Word 文档格式(*.doc)、图形 BMP 格式(*.bmp)、图像 JPEG 格式(*.jpg)、动画 GIF 格式(*.gif)、声音媒体WAV 格式(*.wav)和 MIDI 格式(*.mid)、视频 AVI 格式(*.avi)和 MPEG 格式(*.mpg)以及应用程序文件格式(*.exe)等。表1.1 为常用的多媒体文件格式以及目前通过Ja
15、va API 可处理的多媒体文件类型。表 1.1 常用的多媒体文件格式多媒体类型文件扩展名说明Java API 文本txt 纯文本文件html 超文本文件chm 编译过的 HTML 文件htx 扩展 HTML 模板jsp 动态网页文件asp 动态网页文件php PHP 脚本 HTML 网页文件wri 写字板文件rtf Rich Text Format 格式文件doc Word 文件dot Microsoft Word文档模板文件xls Microsoft Excel 电子表格文件ppt Microsoft Powerpoint 演示文稿文件pdf Adobe Acrobat 可导出文档格式文件
16、hlp 帮助文件inf 信息文件cfg 配置文件ini 初始化文件log 日志文件wps WPS 文件asc ASCII 文本文件ans ANSI 文本文件chr 字符集、字体文件sig 符号文件Java多媒体技术6续表多媒体类型文件扩展名说明Java API 图形、图像bmp Windows 位图文件gif 图形交换格式文件、CompuServe位图文件pic PC 画图位图文件jpg、jpeg JPEG压缩的位图文件cmp JPEG位图文件jtf JPEG位图文件tif、tiff 标记图像格式文件tga Targa 位图格式文件mac MacPaint 图像文件cgm 计算机图形元文件ca
17、m Casio 照相机格式fax FAX 传真类型图像格式ico Windows 图标文件cpx Corel Presentation Exchange 压缩图形文件icl 图标库文件cur Windows 光标文件fif Fractal 图像文件qif QuickTime 相关图像文件grf Grapher 图形文件pct Macintosh PICT 绘画文件2d VersaCAD 的二维绘画文件3d VersaCAD 的三维绘画文件动画gif 图形交换格式文件、CompuServe位图文件mov QuickTime 动画文件swf Flash 动画文件flc AutoDesk 动画文件p
18、li Autodesk FLIC 动画文件ani Windows 系统中的动画光标cmv Corel Move 动画文件m3d Corel Motion 3D 动画文件gl 动画格式scn True Space 2场景文件音频au Sun/NeXT/DEC/UNIX声音文件wav 标准 Windows 波形声形文件、声音文件mid、midi 乐器数字接口的音乐文件、MIDI 音乐文件mp2 MPEG Layer 二音频文件mp3 MPEG Layer 三音频文件pcm 声音文件格式第 1 章Java 多媒体技术概述7续表多媒体类型文件扩展名说明Java API 音频rmi MIDI 音乐格式文
19、件wma Windows Media 声音压缩文件格式ra(ram)、rpm RealAudio 网络实时播放音频文件sd Sound Designer 声音文件aif、aiff 音频互交换文件aifc 压缩 AIF 文件ogg OGG 压缩声音文件格式kar 卡拉 OK MIDI文件(文本+MIDI)cda CD 音频轨道文件格式alaw 欧洲电话音频格式gdm 铃声、口哨声和声音板模块格式sf IRCAM 声音文件格式sfd SoundStage声音文件数据sfi Sound Stage声音文件信息视频avi Audio Video Interleave 电影格式、视频文件mov Quic
20、kTime 动画、QuickTime for Windows电影文件mpg、mpeg MPEG 视频文件dv 数字视频文件dat VCD 视频文件、MPEG 格式的文件rm RealVideo 视频文件ram Real Audio 和 Real Video 的流媒体文件viv VivoActive Player流视频文件lrc Intel 可视电话文件fla Macromedia Flash 电影文件byu 电影文件格式其他exe 可执行程序文件com 命令文件dll 动态链接库drv 驱动程序jar Java档案文件zap Windows 软件安装配置文件arj Robert Jung AR
21、J 压缩包文件zip ZIP 压缩档案文件rar RAR 压缩档案文件lzh LH ARC 压缩档案文件sea 自解压档案文件pal 压缩文件bin 二进制文件Java多媒体技术8续表多媒体类型文件扩展名说明Java API 其他cab Microsoft 压缩档案文件clp Windows 剪贴板文件bat 批处理文件bak 备份文件计算机常用的多媒体文件分为以下几大主要类型:1文本文件类型数字和文字统称为文本文件类型,属于符号化媒体。2图形、图像文件类型以点阵或矢量形式出现的、具有各种分辨率的显示在多媒体计算机屏幕上的图形和图像的文件类型,属于图形类媒体。3动画文件类型将一组连续的、具有相
22、关性运动的图形和图像以固定的频率在计算机屏幕上循环显示出来的文件类型,属于动画类媒体。4音频文件类型经过采集、压缩、合成等数字化处理的在多媒体计算机中通过特殊设备(声卡等)可以连续播放的声音、语音的文件类型,属于音频类媒体。5视频文件类型经过采集、压缩、合成等数字化处理的在多媒体计算机中可以连续播放的图像和声音的文件类型,属于视频类媒体。6其他文件类型一些应用于多媒体计算机中的与媒体相关的文件类型,例如可执行文件等。1.3 搭建 Java多媒体开发环境在使用 Java多媒体 API 开发多媒体应用程序时,除了AWT、Swing 和 Java 2D API 封装到 J2SDK 中,其他的Java
23、多媒体 API 都是独立封装单独提供的。有些Java 多媒体 API除提供运行环境外,还提供了 Java 多媒体应用程序的开发环境,在开发 Java 多媒体应用程第 1 章Java 多媒体技术概述9序之前则需要安装、建立和测试Java多媒体应用程序的开发和运行环境。由于 Java 语言的与平台无关性,本书所有Java 多媒体应用程序实例都是在Windows操作系统下开发的,因此,开发工具和Java虚拟机都应用于Windows 操作系统环境中,对于其他操作系统,例如UNIX、Linux 等操作系统,在安装了Java多媒体运行环境后,Java多媒体应用实例则可以直接运行而不需要重新编译。Sun 公
24、司提供了Java多媒体应用程序的基础开发和运行环境,其他公司也提供了一些开发环境,尤其是一些优秀的集成开发环境可以方便、快捷地编写Java语言程序,例如,Borland 公司的 JBuilder、Microsoft公司的 Visual J+、IBM 公司的 VisualAge for Java、Symmatec 公司的 Visual Cafe、Sun 公司的 Java WorkShop 等。选择一个好的开发环境是有必要的,选择一个好的开发工具的依据可以归纳为:开发环境界面是否友好;编译效率是否高;是否提供编程向导;是否有可视化编程以及可视化的调试器;能否在浏览器中调试Java Applet 小
25、程序,能否为使用者完成一些重复的劳动等。1.3.1 J2SDK 的安装与设置无论选择何种开发工具开发Java多媒体应用程序,J2SDK 则是必须使用的。J2SDK 是Java 2 Software Development Kit 的简称,其前身是JDK(Java Development Kit)。J2SDK 和JDK 都是 Sun Microsystems 公司推出的一套Java 语言程序开发工具兼作运行Java语言程序的平台(Java虚拟机 JVM),因此,开发Java 语言程序,J2SDK 是必备的。在 Java 2标准中,J2SDK 包含以下四个部分:(1)J2EE(Java 2 Pla
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 多媒体技术

限制150内