- 浏览: 340691 次
- 性别:
- 来自: 温州
-
文章分类
最新评论
-
helloworldlove:
Axis_UNZIP_PATH\Axis-version\we ...
3步把您的java程序转换为webservice -
hcqenjoy:
这个工具能再提供下吗 已经没办法下载了 谢谢
汉化 Flex Builder 3 帮助文档 -
NASa_CJ:
String source = HttpClientExamp ...
利用HttpClient获取网页内容 -
zlsj80:
下载地址无效了,楼主修正一下吧
汉化 Flex Builder 3 帮助文档 -
fykyx521:
下载地址都不能用了,是不过时了
汉化 Flex Builder 3 帮助文档
最新一代的 iPod 媒体播放器在移动视频编程领域开辟了一个新机会 —— 但是如何入门呢?本文介绍将 QuickTime for Java库,以编程方式为 iPod 媒体播放器创建视频内容时需要这个库。
Apple iPod 是当今市场上的几个媒体播放器之一,它能播放多种媒体,其中包括音频、视频和图片。在美国和其他地方,iPod 引领着便携媒体播放器市场,从诞生至今,已经售出 3千万套 iPod ,这占据了整个媒体播放器市场 78% 以上的份额。虽然 iPod 的成功显然是受 MP3 流行的推动,而且手机用户拍摄和交易数字图片到现在也有了一段时间,但移动视频的市场仍然在形成中。早期进入移动视频市场的潜在收益是显而易见的,但对许 多开发人员来说,他们要解决的问题是最好地应用这项新技术的方式和地方。 在这篇文章中,我首先将推荐一些移动视频的实际(可能也是非常流行的)应用,然后演示两个程序,让您开始使用 QuickTime for Java API 为 iPod 创建视频内容。这两个程序可以让您很容易地给现有的视频文件添加标题,并将传统的视频文件转换成与 iPod 兼容的格式。在文章末尾,将留给您一些示例代码,可以用它们学习使用 QuickTime for Java API 进行视频操作的更多内容。
为什么要用移动视频?
便携媒体播放器在特定人群(即年龄在 18 到 38 岁之间,具有一定的可支配收入的消费者)中特别流行。因为移动视频对于便携媒体播放器来是相对较新的东西,所以对大多数开发者来说,遇到的第一个问题就 是: 为什么要创建移动视频内容?除了移动媒体最明显的娱乐要求之外,还有许多实际的使用情况:移动媒体既可以促进销售,也可以给便携媒体播放器和内容带来一类 新用户。请想想以下这些情况:
房地产经纪人可以创建一段视频,将视频做成房产可用属性和用录制好的配音说明的一些功能的虚拟漫步。然后,潜在的住房买主可能会用便携媒体播放器查看中意的属性。在没有时间寻找所有符合自己需求的房产的住宅搜索客户中,这种极为节约时间的方式会变得非常流行。
汽车厂商和经销商可以使用移动视频发布所销售的最新车型的视频目录。潜在客户就会更熟悉中意的车型的特性和好处,而不必亲自去经销商那里。
学院和大学的官员可以用移动视频格式向学生提供提供演讲,辅助学生学习。
生产商可以为汽车、书架、玩具(等等)提供移动视频格式的安装说明。
显然,这只是创建移动视频内容的商业驱动力的几个示例。这些示例中的共同之处就是向新市场介绍便携媒体的潜力。现在,我们来看看允许用编程方式创建和编辑视频文件的 Java API。
QuickTime for Java API
对于 Java 开发人员来说,支持数字媒体的创建、修改和回放的能力最强、功能最丰富的 API 就是 QuickTime for Java API。QuickTime for Java 最初是为 Macintosh 平台创建的,但过去这几年时间里,Windows 和 Mac 用户也可以随意使用它。当然,如果曾经用 Java 语言做过一些编程,那么您可能会问:为什么不可以只使用 Java 媒体框架 (JMF) API。
最初创建 JMF 是为了给 Java V1.0.2 的开发人员提供处理各种媒体的能力。但是,它的应用并不广,它支持一些过时的媒体格式和编码方式,例如 MPEG-2、AU、HotMedia 和 Flash 2。另一方面,QuickTime for Java 支持 QuickTime 可以播放的所有媒体格式和编码方式。使用 QuickTime for Java API 可以访问更新的媒体格式,其中包括 MPEG-4、MP3 音频、H.264 和 Flash 5。实际上,下面就是 QuickTime 支持的视频编码方式的完整列表:
动画
Apple BMP
Apple Pixlet
Apple Video
Cinepak
Component video
DV and DVC Pro NTSC
DV PAL
DVC Pro PAL
Graphics
H.261
H.263
H.264
JPEG 2000
Microsoft? OLE
Microsoft Video 1
Motion JPEG A
Motion JPEG B
MPEG-4 (Part 2)
Photo JPEG
Planar RGB
PNG
Sorenson Video 2
Sorenson Video 3
TGA
TIFF
向视频添加标题
如果是初次接触 QuickTime for Java API 或者是初次处理数字媒体,那么向视频片断添加标题是一个好的起点。清单 1 显示的 CaptionAdder.java 是一个简单的程序,它接受视频文件,然后向视频添加一个文本字符串作为标题。
清单 1. CaptionAdder.java
关于代码
几乎每个 QuickTime for Java 应用程序都一样,所有的实际动作都发生在 QTSession.open() 和 QTSession.close() 语句之间。在调用 QTSession.open() 时,QuickTime 引擎可以初始化其自身。如果没有先调用 QTSession.open(),就想调用其他 QuickTime for Java 类,那么您会获得抛出到命令行中的非常难看的堆栈跟踪。
QuickTime for Java API 中使用的核心对象之一是 quicktime.std.movies.Movie 对象。如果初次使用 QuickTime for Java,那么需要认识到,在 quicktime.std.movies.Movie 对象和硬盘上可能存在的 file_name.mov 之间有一点细微的区别。重要的是,可以创建 quicktime.std.movies.Movie 对象,并且无需要在硬盘上创建 file_name.mov 文件该对象就可以存在。
quicktime.std.movies.Movie 对象可由多个轨道 组成,这些轨道是独立的媒体源(例如音频、视频、静态图片或文本)。在 CaptionAdder.java() 中,在创建了 quicktime.std.movies.Track 对象后,我在 textMedia.beginEdits() 语句和 textMedia.endEdits() 语句之间添加了文本标题。在这个示例中,我用 quicktime.std.movies.TimeInfo 对象设置标题在视频中显示的时间长度,以及什么时候开始显示标题。我想让文本标题在视频的前半段显示,所以我把 TimeInfo 设为从 0 开始,并通过 movie 的持续时间将它设置为运行到一半时结束。
使用 CaptionAdder.java
那么该如何使用 CaptionAdder.java 呢?首先,调用 CaptionAdder.java 非常简单直接。在向类路径中添加了 QuickTime for Java 库之后,需要做的就是提供想要编辑的文件的名称。例如,假设想向 图 2 所示的房地产清单视频添加标题。
要向这个文件添加标题,只需如 清单 2 中所示那样运行 CaptionAdder.java 程序即可。
清单 2. 使用 CaptionAdder.java
java CaptionAdder listing22345.mov
结果显示在 图 3 中。
转换成 iPod 格式
在有了使用 QuickTime for Java API 创建和操作视频内容的基础之后,下一个主要障碍就是把内容转换成与 iPod 兼容的格式。不论使用摄像机、从活动视频源录制,还是创建动画序列,视频内容都不会立即与 iPod 视频播放器兼容。iPod 对于它播放的媒体的类型有点挑剔。表 1 显示了 iPod 环境支持的视频格式和设置。
表 1. iPod 兼容内容的视频设置
让问题更复杂的是,对于视频中的音轨,它只支持高级音频编码 (AAC),所以如果想在 iPod 上播放视频,不仅仅要转换传统视频内容。幸运的是,可以求助于 MovieConverter.java,它是转换传统视频内容到 iPod 兼容格式的一个方便工具。MovieConverter.java 如 清单 3 中所示。
清单 3. MovieConverter.java
使用 MovieConverter.java
使用 MovieConverter.java 非常简单。在 图 4 中,可以看到一个关于如何使用 Internet 的虚拟学术培训视频的截屏(从 Google 的主页开始)。实际的影片文件是 AVI 格式,并且还包括授课录音的音轨。
用 MovieConverter.java 程序将这个视频文件转换成 iPod 兼容的格式很容易。在启动 MovieConverter.java 之后,首先选择要转换的文件。然后指定新创建的文件的名称,如 图 5 中所示。
在指定了新视频文件的名称之后,应用程序显示一个影片设置总结屏幕,如 图 6 中所示。在这个屏幕上,有修改编码方式、压缩算法的选项,甚至可以对媒体应用视频过滤器。
在 图 7 中,可以看到 MovieConverter 的视频设置窗口,在这个窗口中,可以选择视频编码方式,而提供了转换后的视频预览。
设置好之后,MovieConverter 生成可以在 iPod 视频播放器上播放的新视频文件。还要注意的是,MovieConverter.java 是个功能丰富且强大的应用程序。不但可以用它生成能够在 iPod 媒体播放器上播放的视频内容,还能用它把传统视频转换成 QuickTime 支持的其他视频格式。
结束语
在数年之后,iPod 很有可能会领导便携媒体播放器市场。目前这代 iPod 媒体播放器中添加了视频内容,这开辟了许多令人兴奋的营销和商业机会。在这篇文章中,我提供了移动视频内容的一些实际和商业上的应用,介绍了 QuickTime for Java API,并演示了如何用编程方式操纵移动视频文件,并将它转换成与视频 iPod 兼容的格式。
Apple iPod 是当今市场上的几个媒体播放器之一,它能播放多种媒体,其中包括音频、视频和图片。在美国和其他地方,iPod 引领着便携媒体播放器市场,从诞生至今,已经售出 3千万套 iPod ,这占据了整个媒体播放器市场 78% 以上的份额。虽然 iPod 的成功显然是受 MP3 流行的推动,而且手机用户拍摄和交易数字图片到现在也有了一段时间,但移动视频的市场仍然在形成中。早期进入移动视频市场的潜在收益是显而易见的,但对许 多开发人员来说,他们要解决的问题是最好地应用这项新技术的方式和地方。 在这篇文章中,我首先将推荐一些移动视频的实际(可能也是非常流行的)应用,然后演示两个程序,让您开始使用 QuickTime for Java API 为 iPod 创建视频内容。这两个程序可以让您很容易地给现有的视频文件添加标题,并将传统的视频文件转换成与 iPod 兼容的格式。在文章末尾,将留给您一些示例代码,可以用它们学习使用 QuickTime for Java API 进行视频操作的更多内容。
为什么要用移动视频?
![]() 图 1. iPod 视频播放器 |
便携媒体播放器在特定人群(即年龄在 18 到 38 岁之间,具有一定的可支配收入的消费者)中特别流行。因为移动视频对于便携媒体播放器来是相对较新的东西,所以对大多数开发者来说,遇到的第一个问题就 是: 为什么要创建移动视频内容?除了移动媒体最明显的娱乐要求之外,还有许多实际的使用情况:移动媒体既可以促进销售,也可以给便携媒体播放器和内容带来一类 新用户。请想想以下这些情况:
房地产经纪人可以创建一段视频,将视频做成房产可用属性和用录制好的配音说明的一些功能的虚拟漫步。然后,潜在的住房买主可能会用便携媒体播放器查看中意的属性。在没有时间寻找所有符合自己需求的房产的住宅搜索客户中,这种极为节约时间的方式会变得非常流行。
汽车厂商和经销商可以使用移动视频发布所销售的最新车型的视频目录。潜在客户就会更熟悉中意的车型的特性和好处,而不必亲自去经销商那里。
学院和大学的官员可以用移动视频格式向学生提供提供演讲,辅助学生学习。
生产商可以为汽车、书架、玩具(等等)提供移动视频格式的安装说明。
显然,这只是创建移动视频内容的商业驱动力的几个示例。这些示例中的共同之处就是向新市场介绍便携媒体的潜力。现在,我们来看看允许用编程方式创建和编辑视频文件的 Java API。
QuickTime for Java API
对于 Java 开发人员来说,支持数字媒体的创建、修改和回放的能力最强、功能最丰富的 API 就是 QuickTime for Java API。QuickTime for Java 最初是为 Macintosh 平台创建的,但过去这几年时间里,Windows 和 Mac 用户也可以随意使用它。当然,如果曾经用 Java 语言做过一些编程,那么您可能会问:为什么不可以只使用 Java 媒体框架 (JMF) API。
最初创建 JMF 是为了给 Java V1.0.2 的开发人员提供处理各种媒体的能力。但是,它的应用并不广,它支持一些过时的媒体格式和编码方式,例如 MPEG-2、AU、HotMedia 和 Flash 2。另一方面,QuickTime for Java 支持 QuickTime 可以播放的所有媒体格式和编码方式。使用 QuickTime for Java API 可以访问更新的媒体格式,其中包括 MPEG-4、MP3 音频、H.264 和 Flash 5。实际上,下面就是 QuickTime 支持的视频编码方式的完整列表:
动画
Apple BMP
Apple Pixlet
Apple Video
Cinepak
Component video
DV and DVC Pro NTSC
DV PAL
DVC Pro PAL
Graphics
H.261
H.263
H.264
JPEG 2000
Microsoft? OLE
Microsoft Video 1
Motion JPEG A
Motion JPEG B
MPEG-4 (Part 2)
Photo JPEG
Planar RGB
PNG
Sorenson Video 2
Sorenson Video 3
TGA
TIFF
向视频添加标题
如果是初次接触 QuickTime for Java API 或者是初次处理数字媒体,那么向视频片断添加标题是一个好的起点。清单 1 显示的 CaptionAdder.java 是一个简单的程序,它接受视频文件,然后向视频添加一个文本字符串作为标题。
清单 1. CaptionAdder.java
import quicktime.*; import quicktime.io.*; import quicktime.std.image.*; import quicktime.std.movies.media.*; import quicktime.std.movies.*; import quicktime.std.*; import quicktime.qd.*; import quicktime.util.QTPointer; import java.io.*; public class CaptionAdder { public static void main (String args[]) { if (args.length != 1){ System.out.println("Usage: java CaptionAdder [input_filename]"); } else { try { QTSession.open(); System.out.println ("QuickTime version: " + QTSession.getMajorVersion() + "." + QTSession.getMinorVersion()); QTFile qtfile = new QTFile(new File(args[0])); DataRef urlMovie = new DataRef ("file://" + qtfile.getPath()); Movie movie = Movie.fromDataRef (urlMovie,StdQTConstants.newMovieActive); float textTrackHeight = 32; QDRect movieBounds = movie.getNaturalBoundsRect(); float movieWidth = movieBounds.getWidthF(); float movieHeight = movieBounds.getHeightF(); Track textTrack = movie.addTrack(movieWidth, textTrackHeight, 0); Matrix textTrackMatrix = textTrack.getMatrix(); textTrackMatrix.translate (0, movieHeight - textTrackHeight); textTrack.setMatrix (textTrackMatrix); textTrack.setEnabled (true); int movieTimeScale = movie.getTimeScale(); TextMedia textMedia = new TextMedia (textTrack, movieTimeScale); QDRect textBounds = new QDRect (movieWidth, movieHeight); textMedia.beginEdits(); TimeInfo sampleTime = new TimeInfo (0, movie.getDuration()/2); String text = new String ("1234 Main St. - Listing price: $164,000"); TextMediaHandler textMediaHandler = textMedia.getTextHandler(); QTPointer textPointer = new QTPointer ( text.length() + 1, true ); textPointer.copyFromArray ( 0, text.getBytes(), 0, text.length() ); textMediaHandler.addTextSample ( textPointer, QDFont.getFNum("Times"), 16, 0, QDColor.white, QDColor.black, QDConstants.teCenter, textBounds, StdQTConstants.dfClipToTextBox | StdQTConstants.dfKeyedText, 0,0,0, null, sampleTime.duration ); textMedia.endEdits(); textTrack.insertMedia (sampleTime.time, 0, sampleTime.duration, 1 ); OpenMovieFile outStream = OpenMovieFile.asWrite (qtfile); movie.updateResource (outStream, StdQTConstants.movieInDataForkResID, qtfile.getName()); } catch (Exception e) { e.printStackTrace(); QTSession.close(); System.exit(0); } QTSession.close(); // end else } System.out.println ("complete."); //end method } } |
几乎每个 QuickTime for Java 应用程序都一样,所有的实际动作都发生在 QTSession.open() 和 QTSession.close() 语句之间。在调用 QTSession.open() 时,QuickTime 引擎可以初始化其自身。如果没有先调用 QTSession.open(),就想调用其他 QuickTime for Java 类,那么您会获得抛出到命令行中的非常难看的堆栈跟踪。
QuickTime for Java API 中使用的核心对象之一是 quicktime.std.movies.Movie 对象。如果初次使用 QuickTime for Java,那么需要认识到,在 quicktime.std.movies.Movie 对象和硬盘上可能存在的 file_name.mov 之间有一点细微的区别。重要的是,可以创建 quicktime.std.movies.Movie 对象,并且无需要在硬盘上创建 file_name.mov 文件该对象就可以存在。
quicktime.std.movies.Movie 对象可由多个轨道 组成,这些轨道是独立的媒体源(例如音频、视频、静态图片或文本)。在 CaptionAdder.java() 中,在创建了 quicktime.std.movies.Track 对象后,我在 textMedia.beginEdits() 语句和 textMedia.endEdits() 语句之间添加了文本标题。在这个示例中,我用 quicktime.std.movies.TimeInfo 对象设置标题在视频中显示的时间长度,以及什么时候开始显示标题。我想让文本标题在视频的前半段显示,所以我把 TimeInfo 设为从 0 开始,并通过 movie 的持续时间将它设置为运行到一半时结束。
使用 CaptionAdder.java
那么该如何使用 CaptionAdder.java 呢?首先,调用 CaptionAdder.java 非常简单直接。在向类路径中添加了 QuickTime for Java 库之后,需要做的就是提供想要编辑的文件的名称。例如,假设想向 图 2 所示的房地产清单视频添加标题。
![]() 图 2. 没有标题的房地产视频示例截图 |
要向这个文件添加标题,只需如 清单 2 中所示那样运行 CaptionAdder.java 程序即可。
清单 2. 使用 CaptionAdder.java
java CaptionAdder listing22345.mov
结果显示在 图 3 中。
![]() 图 3. 添加了标题的房地产视频示例 |
转换成 iPod 格式
在有了使用 QuickTime for Java API 创建和操作视频内容的基础之后,下一个主要障碍就是把内容转换成与 iPod 兼容的格式。不论使用摄像机、从活动视频源录制,还是创建动画序列,视频内容都不会立即与 iPod 视频播放器兼容。iPod 对于它播放的媒体的类型有点挑剔。表 1 显示了 iPod 环境支持的视频格式和设置。
表 1. iPod 兼容内容的视频设置
视频格式 | 数据率 | 尺寸 | 帧率 |
H.264 视频 | 最高 768 Kbps | 320 x 240 像素 | 30 fps |
MPEG-4 视频 | 最高 2.5 Mbps | 480 x 480 像素 | 30 fps |
让问题更复杂的是,对于视频中的音轨,它只支持高级音频编码 (AAC),所以如果想在 iPod 上播放视频,不仅仅要转换传统视频内容。幸运的是,可以求助于 MovieConverter.java,它是转换传统视频内容到 iPod 兼容格式的一个方便工具。MovieConverter.java 如 清单 3 中所示。
清单 3. MovieConverter.java
import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.IOException; import quicktime.*; import quicktime.io.*; import quicktime.qd.*; import quicktime.std.*; import quicktime.std.clocks.*; import quicktime.std.StdQTConstants; import quicktime.std.image.*; import quicktime.std.movies.*; import quicktime.std.movies.media.*; import quicktime.std.qtcomponents.*; import quicktime.util.*; import quicktime.app.view.*; public class MovieConverter extends JFrame implements Errors, ActionListener{ QTComponent component = null; JPanel jpanel = null; Button selectButton = null; public static void main (String args[]) { try{ new MovieConverter(); } catch(Exception e){ System.out.println(e); } } public MovieConverter(){ super("Movie Converter"); try { QTSession.open(); } catch (Exception e) { e.printStackTrace(); QTSession.close(); } jpanel = new JPanel(); this.setContentPane(jpanel); selectButton = new Button ("Select a File to Convert"); selectButton.addActionListener(this); jpanel.add (selectButton); addWindowListener(new WindowAdapter () { public void windowClosing (WindowEvent e) { QTSession.close(); dispose(); } public void windowClosed (WindowEvent e) { System.exit(0); } }); this.pack(); this.setVisible(true); } public void actionPerformed (ActionEvent event) { exportMovie(); } void displayMovie (Movie m) throws QTException { component = QTFactory.makeQTComponent (new MovieController (m)); jpanel.add ((Component)component); jpanel.remove(selectButton); pack(); } void exportMovie () { try{ FileDialog fileDialog = new FileDialog (this, "Choose Movie to Export...", FileDialog.LOAD); fileDialog.show(); if (fileDialog.getFile() == null) return; QTFile movieFile = new QTFile (fileDialog.getDirectory() + fileDialog.getFile()); Movie movie = Movie.fromFile (OpenMovieFile.asRead(movieFile)); if (component != null) { component.setMovieController(new MovieController(movie)); } else { displayMovie (movie); } new Thread (new Exporter(movie)).start(); } catch (QTException err) { err.printStackTrace(); } } } |
使用 MovieConverter.java 非常简单。在 图 4 中,可以看到一个关于如何使用 Internet 的虚拟学术培训视频的截屏(从 Google 的主页开始)。实际的影片文件是 AVI 格式,并且还包括授课录音的音轨。
![]() 图 4. 示例学术培训视频的截屏 |
用 MovieConverter.java 程序将这个视频文件转换成 iPod 兼容的格式很容易。在启动 MovieConverter.java 之后,首先选择要转换的文件。然后指定新创建的文件的名称,如 图 5 中所示。
![]() 图 5. MovieConverter.java 请求新文件的名称 |
在指定了新视频文件的名称之后,应用程序显示一个影片设置总结屏幕,如 图 6 中所示。在这个屏幕上,有修改编码方式、压缩算法的选项,甚至可以对媒体应用视频过滤器。
![]() 图 6. 影片设置总结 |
在 图 7 中,可以看到 MovieConverter 的视频设置窗口,在这个窗口中,可以选择视频编码方式,而提供了转换后的视频预览。
![]() 图 7. 视频设置窗口 |
设置好之后,MovieConverter 生成可以在 iPod 视频播放器上播放的新视频文件。还要注意的是,MovieConverter.java 是个功能丰富且强大的应用程序。不但可以用它生成能够在 iPod 媒体播放器上播放的视频内容,还能用它把传统视频转换成 QuickTime 支持的其他视频格式。
结束语
在数年之后,iPod 很有可能会领导便携媒体播放器市场。目前这代 iPod 媒体播放器中添加了视频内容,这开辟了许多令人兴奋的营销和商业机会。在这篇文章中,我提供了移动视频内容的一些实际和商业上的应用,介绍了 QuickTime for Java API,并演示了如何用编程方式操纵移动视频文件,并将它转换成与视频 iPod 兼容的格式。
发表评论
-
Java 5.0 多线程编程实践
2006-01-23 13:20 786<noscript type="text/ja ... -
web开发框架——JSF开发实战
2006-01-23 20:01 1446JSF开发实战的第一篇(jsf开发实战一)演示了如何建立一个最 ... -
Tomcat 的数据库连接池设置与应用
2006-01-23 20:28 7821.将数据库驱动程序的JAR文件放在Tomcat的 commo ... -
Eclipse Plugins Manager Beta 0.1 (Link's Only) 发布
2006-03-18 17:11 814<noscript type="text/ja ... -
常青图书管理系统 BETA V0.1
2006-03-19 15:03 856<noscript type="text/ja ... -
Java程序的性能优化
2006-03-19 15:15 819<noscript type="text/ja ... -
Java中四种XML解析技术之不完全测试
2006-03-20 12:16 712<noscript type="text/ja ... -
解决Tomcat中文乱码问题
2006-03-26 22:58 883一、中文问题的来源 计算机最初的操作系统支持的编码是单 ... -
Swing技巧. 设置全局字体(sun jdk)
2006-04-02 14:04 1362S ... -
Dom4j 使用简介
2006-04-05 20:19 687DOM4J是dom4j.org出品的一个开源XML解析包 ... -
Java手机技术 之 J2ME及其基本慨念
2006-04-06 12:42 738如果您曾经http://www.javasoft.com ;网 ... -
Java手机技术 之 J2ME新手入门要点
2006-04-06 12:50 1014一、J2ME中需要的Java基础知识现在有大部分人,都是从零开 ... -
JAVA设计模式系列之Singleton模式
2006-04-06 13:18 848单态定义: Singleton模式主要作用是保证在Java应 ... -
高手指点你实战体会Java的多线程编程
2006-04-06 13:39 850在 Java 程序中使用多线程要比在 C 或 C++ 中容 ... -
Java基础--JSP应用语法详解大全
2006-04-06 13:49 9221)HTML注释: 可以用注释内容,也可以用表达式. 2) ... -
javamail使用完全手册
2006-04-08 20:44 8951,哪里是开始:初始环境,安装好你的j2sdk和你的web服务 ... -
JavaMail通过sina的smtp验证
2006-04-08 20:47 1142import javax.mail.*;import java ... -
用javamail发送邮件
2006-04-08 20:49 1008用javamail发送邮件 aistill(原作) ... -
修改后可以发送附件、抄送、密送的javabean
2006-04-08 20:51 958/**A ... -
javamail实现smtp身份认证
2006-04-08 20:57 972现在大多 ...
相关推荐
QuickTime for Java API.pdf 本文主要介绍了如何使用 QuickTime for Java API 创建视频内容,并将其应用于 iPod 媒体播放器。首先,文章介绍了移动视频市场的前景和潜力,然后推荐了一些移动视频的实际应用,例如房...
在Java环境中,通过QuickTime for Java(QTVR)API,开发者可以充分利用这些功能,创建跨平台的多媒体应用程序。本书将带领读者了解以下几个核心知识点: 1. **QuickTime基础**:首先,书中会介绍QuickTime的基本...
在Java QuickTime开发包中,`Oreilly.QuickTime.for.Java.A.Developers.Notebook.Jan.2005.eBook-LiB.chm` 文件很可能是一本关于QuickTime for Java的开发者指南或手册,可能包含了详细的API介绍、示例代码以及最佳...
1. **QuickTime API**: QuickTime for Java提供了全面的API接口,这些接口允许开发者在Java程序中创建、播放、编辑和控制多媒体内容。API包含了对音视频流的处理、时间线操作、元数据访问等功能。 2. **多媒体处理*...
4. **Java Streaming API for XML (StAX):** - 虽然不是直接的媒体API,但StAX在处理XML流数据时非常有用,可以与媒体元数据的处理相配合。 5. **编程模型:** - JMF采用事件驱动的模型,媒体播放、停止、暂停等...
In addition, includes a patched MP4Parser Java library for wrapping AAC files in an MP4 container to produce M4A audio files playable by Google Chrome and Apple QuickTime. This project is set up as a ...
它提供了一套API,使得开发者能够在Java Applet或应用程序中轻松地播放多种格式的媒体文件,如AU、AVI、MIDI、MPEG、QuickTime和WAV等。 JMF的设计目标是为了简化多媒体数据的处理流程,让开发者能够更加专注于应用...
"JMF2.1.1 For Windows"是这个框架的一个特定版本,专为Windows操作系统设计,适用于32位(i586)架构。 JMF的核心功能包括: 1. **多媒体播放**:JMF支持多种媒体格式,如MPEG、AVI、WAV、QuickTime等,通过插件...
在Processing中,如果要使用QuickTime相关的功能,可能需要安装QuickTime for Windows,以提供必要的底层支持。 总的来说,这个压缩包提供了一个用于Java环境下视频捕捉的解决方案,结合Processing和可能的...
在 Mac 上,LTI CIVIL 通过 Quicktime API 能够无缝地接入摄像头并捕获图像。 **压缩包文件内容解析** 压缩包内包含以下几个关键文件: 1. **webcam.bat** 和 **webcam-linux-amd64.sh**:这是启动 LTI CIVIL 示例...