Java多媒体框架设计自动播放机实例详解
日期:2007年7月26日 作者: 查看:[大字体 中字体 小字体]-
public long seek (long position) { try { if (position > tellPoint) { thoroughSkip (position - tellPoint); } else { close(); open(); thoroughSkip (position); } return tellPoint; } catch (IOException ioe) { return 0; // bogus... } }使用这个类,Manager可以找到一个可用的Player用于播放.jar文件中的.mov或者.avi文件。我们的示例的TinyPlayer使用ClassLoader.getResource ()方法来在类路径中寻找movie/themovie.mov或者movie/themovie.avi。当类路径只包含.jar文件的时候,我们将对其进行设置。
准备一个合适的.jar文件中的第一步是使用JMF的jmfcustomizer工具来创建一个jar,只使用播放我们的媒体所需要类,去掉用于流、捕捉、译码和其它对于一个简化的播放程序不需要的函数。不幸的是,Sun在各种Java版本的JMF中都不包含jmfcustomizer的帮助文件,但是各种定制屏幕很容易设计出来:
1.媒体源和媒体汇点:选择"媒体文件"和"播放"。
2.协议:只是"文件"。
3.源媒体格式:"QuickTime (.mov)"和"Avi"。
4.解码器:无论你计划在你的媒体中使用什么解码器,但是用于音频的大部分都是"A - law"、"U - law"或"IMA4",用于视频的是"H263"。不要为编码器、封包器和解包器而费心。
5.渲染:在音频中,我们需要"JavaSound"用于Java 1.3及1.3以上的版本,SunAudio用于Sun的pre-1.3 JVM。对于视频,我们只需要AWT。
其结果是本来用于我们的播放器的jar被从1.9 MB压缩到700K。
假定你已经编译了两个com.mac.invalidname.spmovie类,把它们添加到定制的jar中:
jar uf customized.jar com/mac/invalidname/spmovie/*.class
JMF的许可证有效期需要它的readme文件使用任何JMF或者定制子集来分布。我已经在misc目录中提供了,在TinyPlayer的菜单项可以找到它:
jar uf customized.jar misc/
为了使这个.jar文件可双击,我们提供一个manifest文件告诉Java运行时间在.jar文件中的哪个类中有在双击或者使用简单jar命令行变量的时候调用的main()方法。manifest还提供一个只包含jar自己的类路径:
Main-Class: com.mac.invalidname.spmovie.TinyPlayer
Class-Path: .
这个manifest使用下面的命令来添加:
jar ufm customized.jar manifest-stub.txt
这个文件现在有用于播放jar中的一个电影的所有的代码。为了将来之用,请把它保存为spmovie-engine.jar文件,或者类似的文件。
现在引擎已经具备了,我们所需要的只有媒体了。正如你可从JMF支持类型页面看到的那样,所有Java版本的JMF有一个相当有限的所支持解码器的集合。对于视频来说最好的选择可能是H.263,在很广泛的比特率下能够工作的很好,然而它可能在老机器上会执行得很困难,除非你压缩视频或者保持较低的帧速率。虽然音频较少是事先准备好的,但是我想IMA 4:1执行得相当好。适当地编码或者译码你的媒体,并且把它复制为movie/themovie.mov或者movie/themovie.avi。如果你喜欢你也可以把.jar文件改名(我使用spmovie.jar)并且添加媒体:
- 上一页 [1] [2] [3] 下一页
-
- Java多媒体框架设计自动播放机实例详解 相关文章:
- ·高度优雅与魅力 Chanel时装设计
- ·Illustrator传统风格名片设计实例
- ·平安夜美丽蜡烛的装置设计欣赏
- ·圣诞节日花环花束设计欣赏
- ·创意设计:多姿多彩的自然标本玻璃砖
- ·Excel表格页码设置打印输出更直观
- ·3DSMAX造型设计之打造江南丝绸
- ·非主流 中性性感MM装扮设计欣赏
- ·3DSMAX造型设计之书法印刷效果
- ·德国女装verse设计欣赏
- Java多媒体框架设计自动播放机实例详解 相关软件
- ·家庭装修设计完全手册(精简版)
- ·园林别墅设计效果图
- ·家居客厅设计效果图
- ·精美设计选集
- ·快易通Java程序设计
- ·李维的新书《Delphi 7高效数据库程序设计》
- ·中小网络建设一点通
- ·管理者形象设计手册
- ·论城乡建设发展战略(完整版)
- ·C++多范型设计
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
精品推荐
热点TOP10
- ·JAVA教程 第五讲 AWT图形用户界面设计
- ·SP 短信开发-基础知识篇
- ·使用JAVAMAIL发邮件的一个例子(转)
- ·J2ME蓝牙程序开发实战入门
- ·用Java实现音频播放
- ·使用SimpleDateFormat必须注意的问题
- ·Sun:JavaFX Mobile和JavaFX Script
- ·Java EE6提案的两大主题:拓展性和概要
- ·Java会因为RoR的流行而过时吗?
- ·Java资料:Swing中的事件处理详细资料
- ·Java知识:Web应用下实现定时任务简便方法
- ·技巧:Java中用动态代理类实现记忆功能
- ·新手入门:写Java程序的三十个基本规则
- ·入门:Java初学者入门要注意的基础知识
- ·Java SE 6中XML数字签名标准Java接口
- ·JForum 2.1.7 源程序编译草记
- ·Spring中的Template和Callback模式
- ·从集合类的升级联想到Java适配器模式
- ·I18N-国际化消息和日志
- ·通过JDMK 进行遗留系统管理
特别推荐
- ·Java精华积累:初学者都应该搞懂的问题
- ·Java多媒体框架设计自动播放机实例详解
- ·如何有效防止Java程序源码被人偷窥?
- ·Cell插件在J2EE系统中的应用
- ·初学者想学Hibernate,初级基础教程
- ·Java语言实现支持视频点播的WEB服务器
- ·关于Java编程的中文问题的几条分析原则
- ·确保J2ME无线移动商业应用程序的安全性
- ·Java开源技术:Eclipse的使用技巧详解
- ·新手入门:Java中的修饰词使用方法总结
- ·JAVA开发者应该去的20个英文网站
- ·使用JDBC创建数据库访问程序
- ·JDK的命令详解
- ·Java学习从入门到精通(附FAQ)
- ·Tomcat性能调整
- ·JSF:Java中面向Web开发的生旦净末丑
- ·对Java语言入门初学者的一些建议
- ·Java技术的新方向
- ·Jive源代码研究
- ·谨慎使用Date和Time类
