JMF(Java Media Framework)使用摄像头

JMF(Java Media Framework)是Java平台使用摄像头、麦克风等媒体设备的应用程序框架,但到了2.1.1e就不再更新,在Windows 7 X64上还能正常运行,只是安装的界面让你感觉回到了Windows98的时代。 不过年代久远的东西,虽然还能用,但可能会遇到一些奇怪的问题,折腾了两个月,发现了两个比较大的问题: 第一个是在Windows 7 x64上提示摄像头初始化失败的问题。这个问题很奇怪,电脑刚开机的时候可以顺利找到一次摄像头并正常操作,但是第二次就会提示摄像头初始化失败。有人提出的解决方法是安装一个叫ManyCamera的程序,这个程序可以把一个摄像头供多个程序同时使用,其实就等于中间加了一层转换,效果会有点差别,免费版还会加上水印,要求比较高的人可能会不爽,但是目前找不到其他办法。 第二个是在程序中找不到摄像头,不光找不到摄像头,其他媒体设备通通找不到,使用以下语句: vector = CaptureDeviceManager.getDeviceList ( null ) 按照文档说明是返回所有媒体设备,但每次vector都是null。 在Eclipse中运行又能正常,导出成jar之后运行就会找不到摄像头。 原因在于找不到jmf.properities文件,该文件包含所有检测到的媒体设备的信息,最简单的解决方法就是把JMF安装目录下lib子目录中的jmf.properties文件复制到最后运行的jar所在的目录,不过如果摄像头改过的话,重新检测后要把新的文件复制到jar目录,因为检测到的媒体设备信息都会存放在JMF安装目录里面的jmf.properties文件里。 StackOverflow里面有个人对这个问题解释得比较清楚: http://stackoverflow.com/questions/8768142/java-capturedevicemanagergetdevicelist-is-empty 虽然问题解决了,但是还是不明白为何在Eclipse中可以正常运行,导出jar后运行却找不到摄像头,即使把JMF所有jar和lib目录都加入系统的CLASSPATH环境变量里还是不行。 另外,JMF安装程序会自动把它的jar和lib目录加入系统的%CLASSPATH%环境变量,但是如果你卸载了再重新安装到其他目录,并不会改变%CLASSPATH%的值,需要手动修改。不过这个环境变量似乎没啥用处。 最好不要把JMF安装到默认的Program Files目录,可能会运行不了,安装到短目录会比较保险,它似乎还是只认Dos时代的8.3目录结构,但偏偏又默认安装到Program Files里面。

JMF(Java Media Framework)使用摄像头

时间: 2024-07-30 01:00:57

JMF(Java Media Framework)使用摄像头的相关文章

Atitit. 软件---多媒体区---- jmf 2.1.1 Java Media Framework 支持的格式

Atitit. 软件---多媒体区---- jmf 2.1.1 Java Media Framework 支持的格式 JMF,全名为Java Media Framework,它可以在java applet和application中使用音频,视频或者其他基于时间的多媒体.JMF所支持的多媒体格式如下:AIFF(.aiff),AVI(.avi),GSM(.gsm),HotMedia(.mvr),MID(.mid),MPEG-1(.mpg)(即常见的VCD文件),MPEG-2(.mp2)(即常见的DV

JMF -java media framwork的安装问题

电脑配置是:win7旗舰版64位,JDK和eclipse都是64位的:下载的JMF是jmf-2_1_1e-windows-i586,这个东西网上好多人说只支持32位JDK,如你所料.下载下来也是安装不了:就提示说overwrite protection窗口,说我C盘下:C:\Users\pengrong\AppData\Local\Temp的文件是否覆盖,不管选yes还是no都不安装,我一直都是选择yes to All,然后都是然并卵,最后往上都是说要把JDK换成32位的,这不是要人死 吗.所以

Android Media Framework 总纲

1. Media Framework 层次 (1) 应用层 Music, VideoPlayer (2) JAVA层 MediaPlayer : frameworks/base/media/java/android/media/MediaPlayer.java (3) JNI JNI_MediaPlayer -- libmedia_jni.so frameworks/base/media/jni/android_media_player.cpp (4)Server Proxyer libmedi

Java Collections Framework 汇总

1. Java Collections Framework Java集合框架概览 2. Java Collections Framework 之 RandomAccess接口 3. 关于ArrayList.clear()与=null以及new ArrayList<E>()

Java Collection Framework : List

摘要: List 是 Java Collection Framework的重要成员,详细包括List接口及其全部的实现类.由于List接口继承了Collection接口,所以List拥有Collection的全部操作. 同一时候.又由于List是列表类型,所以List本身还提供了一些适合自身的方法.ArrayList 是一个动态数组.实现了数组动态扩容,随机訪问效率高:LinkedList是一个双向链表,随机插入和删除效率高,可用作队列的实现. 一. 要点 List 基础特性与框架 ArrayL

【DataStructure】The description of Java Collections Framework

The Java Connections FrameWork is a group of class or method and interfacs in the java.util package. Its main purpose is to provide a unified framework for implementing common data structure. A collections is a object that contains other objects,whic

JAVA B/S通过摄像头采集图片信息解决方案。

在浏览器上调用摄像头.有ACTIVX,FLASH,HTML5,JAVA的.其中ACTIVEX只支持IE不去考虑,HTML5低版本浏览器不支持同样放弃,剩下只有FLASH了.JAVA要重新开发,没时间.网上找了很久,终于找到一个JQUERY的插件可以实现调动视频.上代码: 1.官网下载相关文件 http://www.xarg.org/project/jquery-webcam-plugin/ 2.前端脚步: <script> $(function() { var swfpah="${p

Java Collection Framework : Collection 接口

一.要点 Collection 接口 Collection 接口的默认实现:AbstractCollection Optional operations(可选方法) 二.Collection 接口 1.JDK 对 Collection 接口的描述 Collection 接口是 Collection 层次结构中的根接口.Collection 表示一组对象,这些对象也称为 collection 的元素.一些 collection(List,Queue) 允许有重复的元素,而另一些(Set)则不允许.

[Selenium+Java] Selenium Framework: Keyword Driven &amp; Hybrid

Original from: https://www.guru99.com/creating-keyword-hybrid-frameworks-with-selenium.html What is Selenium Framework? Selenium Framework is a code structure that helps to make code maintenance easy. Without frameworks, we will place the “code” as w