vlcj :: Невозможно загрузить библиотеку 'libvlc' в 64-битной ОС - PullRequest
3 голосов
/ 22 декабря 2011

Я использую 64-битную ОС Windows 7 и у меня 32-битный VLC версии 1.1.8.

Я добавил эти библиотеки jna.jar platform.jar vlcj-1.1.5.1.jar

Я не могу транслировать с помощью jVlc

public class HelloVLC {

/**
 * @param args
 * @throws IOException 
 */
public static void main(String[] args) throws IOException {
    // TODO Auto-generated method stub

    System.out.println( WindowsRuntimeUtil.getVlcInstallDir());
      NativeLibrary.addSearchPath("libvlc", "C:\\Program Files (x86)\\VideoLAN\\VLC");
      String media = "dshow://";
     String[] options = {" :dshow-vdev=Integrated Webcam :dshow-adev=  :dshow-caching=200", ":sout = #transcode{vcodec=theo,vb=800,scale=0.25,acodec=vorb,ab=128,channels=2,samplerate=44100}:display :no-sout-rtp-sap :no-sout-standard-sap :ttl=1 :sout-keep"};
        System.out.println("Streaming '" + media + "' to '" + options + "'");

        MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory();
        final HeadlessMediaPlayer mediaPlayer = mediaPlayerFactory.newMediaPlayer();
        mediaPlayer.playMedia(media, options);
}

}

Я получаю ошибку Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'libvlc': The specified module could not be found.

Пожалуйста, помогите. Есть ли способ заставить этот код работать в 64-битной ОС ????

Ответы [ 3 ]

6 голосов
/ 05 июня 2012

если вы используете windows 7, найдите файл libvlc.dll и libvlccore.dll в вашей установке vlc и добавьте их путь к коду, который вы написали в
Также добавьте NativeLibrary.addSearchPath ()..

это сработало у меня в моем случае windows 7.

 NativeLibrary.addSearchPath(
                RuntimeUtil.getLibVlcLibraryName(), ""c:/Program Files/VideoLAN/VLC/");
        Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);
        LibXUtil.initialise();
6 голосов
/ 23 декабря 2011

вы пытались запустить его с 32-битной JVM?

0 голосов
/ 27 октября 2016

VLCj поставляется с автоматическими методами обнаружения, независимыми от ОС, которые добавляют подходящий путь к пути поиска JNA:

 NativeDiscovery nd = new NativeDiscovery();
 if (!nd.discover()) {
     System.out.println("VLC not found");
     System.exit(-1);
 }   
 String vlcLibName = RuntimeUtil.getLibVlcName();
 String vlcLibCoreName = RuntimeUtil.getLibVlcCoreName();
 Native.loadLibrary(vlcLibName, LibVlc.class);

... и т. Д. Для хорошего руководства по загрузке нативных VLCсм. http://capricasoftware.co.uk/#/projects/vlcj/tutorial/first-steps (см. также предыдущие шаги в этом руководстве)!

...