2017-06-19 124 views
1

我想设置我的vlcj创建的播放器输出声音到虚拟音频电缆,这有可能吗? vlcj播放器似乎没有继承本地播放器的选项,所以我真的不知道如何改变输出。由于使用vlcj设置声音输出设备

编辑:这基本上是多远我已经得到了,但没有任何实际发生的:

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

控制台输出可能会有用 – caprica

回答

0

想必你的“虚拟音频电缆”是一个特定的音频输出设备。

因此,从MediaPlayerFactory获取AudioOutput的列表。

枚举输出列表以找到您想要的名称。

当您找到所需的音频输出时,您可以检查与该输出相关联的AudioDevice列表。

当您找到所需的音频设备时,请将其设置为MediaPlayer。那里有setAudioOutput()setAudioOutputDevice()方法。

github上关联的vlcj-player项目展示了一种构建音频设备菜单的方法,并允许您选择一个。

+0

嗯,谢谢,但我没有真的得到它的任何地方:(请参阅编辑opener发布 – peterxz