作者lovdkkkk (dk)
看板java
标题Re: [问题] JMF getDeviceList(null)
时间Thu Mar 29 00:19:41 2012
JMF 有些奇怪的行为 (OS 也是)
这些不见得与你的问题相关, 只是加减提一下
一个怪行为是它会记忆, 当你装了一个装置也被它注册了,
它就认定那个装置了, 改天你装了另一个装置,
甚至只是同一个装置换一个 usb 插槽,
就可能会不 work
这时通常是 把 registry 里的删掉重新 detect,
有必要的话也要把安装过的装置清掉重装, 不知道为什麽,
某些系统会把接在不同 usb 插槽的同一个装置各装一次,
变成装了好几个
另外就是对资源是独占的, 一个装置没有办法给两个程式用,
可以设法 clone resource, 但是麻烦
对这些问题最简单的解是安装一个叫 splitcam 的小东西,
叫 JMF 认它就对了, 装置爱怎麽换都行,
也可以很方便的共享
另外针对你的问题, 建议查查 JMF + 你的 OS,
JMF 也是向 OS 拿资料而已, 会拿不到多半是环境的问题,
例如像这个
https://forums.oracle.com/forums/thread.jspa?threadID=2132405
※ 引述《tossakite (昱)》之铭言:
: 现在正要着手用Netbeans写视讯聊天
: 於是安装了JMF 2.1.1e
: 然後在Library里的Classpath加入了JMF底下的lib
: 结果跑以下的程式码的时候
: Vector devices = CaptureDeviceManager.getDeviceList(null);
: System.out.println(devices.size());
: 不管怎样都是印出0
: 也就是它找不到任何电脑上的音频与视频装置
: 但我执行JMFRegistry 点了Detect Capture Devices後
: 明明就有显示出下面三个装置
: DerectSoundCapture
: JavaSound audio capture
: vfw:Microsoft WDM Image Capture (Win32):0
: Google了一下发现很多人也有这个问题
: 然後就尝试了多种版本的解决方法
: 包括
: 1. 把jmf.property档复制到我目前写的project里的nbproject内
: 2. NetBeans的Tools内的Java Platform、Library里的Sources、Classpath
: 都加入JMF/lib内的所有jar档
: 3. 把jre跟jdk里面的lib/ext里的jmf.jar、sound.jar删除
: (结果程式跑不动 说无法import javax.media.*;等等
: 於是我就把JMF里的jmf.jar、sound.jar复制过去取代它们
: 然後就可以import了 但devices.size()还是等於0)
: 全都徒劳无功!!!
: 请问有人知道到底是为什麽吗QQ
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.45.248
※ 编辑: lovdkkkk 来自: 61.224.45.248 (03/29 00:28)
1F:→ undeadj:它8~9年没更新了.....是个悲剧 03/29 12:21
2F:推 tossakite:谢谢你的说明~ ...後来自己默默把问题解决了= =" 03/29 12:51