2017-06-19 5 views
1

Ich würde gerne meinen vlcj erstellten Player Sound auf virtuelle Audio-Kabel ausgeben, ist es möglich? Der vlcj-Player scheint die Optionen des nativen Players nicht zu übernehmen, daher weiß ich nicht genau, wie ich die Ausgabe ändern könnte. DankSet Sound-Ausgabegerät mit vlcj

edit: Das ist im Grunde, wie weit ich habe bekommen, aber nichts passiert eigentlich:

mediaPlayerComponent = new EmbeddedMediaPlayerComponent(); 
    mediaPlayerComponent.getMediaPlayer().setPlaySubItems(true); 

    List<AudioOutput> outputs = mediaPlayerComponent.getMediaPlayerFactory().getAudioOutputs(); 

    for (AudioOutput i : outputs) { 
     System.out.println(i); 
     List<AudioDevice> devices = i.getDevices(); 
     if (!devices.isEmpty()) { 
      for (AudioDevice itdev : devices) { 
       System.out.println(itdev.getDeviceId()); 
      } 
     } 
    } 
    mediaPlayerComponent.getMediaPlayer().setAudioOutputDevice(outputs.get(5).getDevices().get(3).toString(), outputs.get(5).getDevices().get(3).toString()); 
+0

der Konsolenausgang wäre vielleicht nützlich – caprica

Antwort

0

Vermutlich Ihr „virtuelles Audiokabel“ ist eine spezielle Audioausgabegerät.

Also, holen Sie sich die Liste der AudioOutput von der MediaPlayerFactory.

Listen Sie die Liste der Ausgaben auf, um den gewünschten Namen zu finden.

Wenn Sie die gewünschte Audioausgabe gefunden haben, können Sie die mit diesem Ausgang verknüpfte Liste von AudioDevice überprüfen. Wenn Sie das gewünschte Audiogerät finden, stellen Sie es auf MediaPlayer ein. Es gibt setAudioOutput() und setAudioOutputDevice() Methoden dort.

Das zugehörige vlcj-player-Projekt bei github zeigt eine Möglichkeit, ein Menü mit Audiogeräten zu erstellen, und ermöglicht es Ihnen, eines auszuwählen.

+0

Hm, danke, aber ich bin nicht wirklich überall damit :(Siehe bearbeiteten Opener Post – peterxz