Реестр JMF не может добавить элемент (Vista) - PullRequest
1 голос
/ 11 ноября 2009

Я использую JMF для захвата видеопотока (веб-камеры) в моем проекте Java.

Используемая мной камера распознается JMF (JFMStudio), и мне удается получить видеопоток.

Однако в редакторе реестра JMF - есть список доступных устройств захвата, когда я нажимаю «Добавить» на одном из элементов (включая тот, который мне нужен), я получаю ошибку «Не удалось добавить элемент». Поэтому эта камера не установлена ​​в реестре (бог знает где), и позже она не распознается моим проектом:

RGBFormat fmt = new RGBFormat (); // может быть YUV - не имеет значения Vector v = CaptureDeviceManager.getDeviceList (fmt);

v пусто (хотя я знаю, что источник видео распознается Java, так как мне удается получить видео в JMF Studio).

Теперь это происходит только в Vista (где-то еще), а не в XP.

У меня есть подозрение, что каким-то образом Vista защищает Java от записи файла реестра, но, конечно, я могу ошибаться.

Еще один комментарий: это vfw: Microsoft WDM Image Capture (Win32): 0 устройство.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 13 июня 2010

Направлено на кого-либо еще в будущем, кто сталкивается с той же проблемой

У меня была та же проблема, и я понял, что это потому, что мой Java Media Framework был установлен в "C: \ Program Files" по умолчанию. Когда я запустил «jmfinit.exe» в \ bin, я заметил, что не могу обновить файл «jmf.properties»

Ошибка повторяется ниже


Найдено устройство Microsoft WDM Image Capture (Win32) Запрашивающее устройство. Пожалуйста, подождите... Исключение при фиксации = java.io.FileNotFoundException: C: \ Program Files \ JMF2.1.1e \ bin .. \ lib \ jmf.properties (доступ запрещен)


Я изменил настройки безопасности для папки JMF2.1.1e, и все работает отлично. Я уверен, что установка его где-то еще тоже работает

0 голосов
/ 11 ноября 2009

Ну, я использовал JMF в Vista для захвата изображения с веб-камеры, и это сработало. Однако я не использовал JMF Studio, поэтому не могу помочь.

В этом посте я опубликовал пример кода, вы можете посмотреть, не будет ли он работать для вас.

...