VLCJ-可视化器无输出

问题描述 投票:1回答:1

我正在尝试让VLCJ为从HTTP流中播放的mp3文件做一个可视化工具。当我流式传输一个视频时,就会显示视频。但是当音频播放时,什么也没发生。

这是我在客户端的代码

EmbeddedMediaPlayerComponent empc = new EmbeddedMediaPlayerComponent();
String[] op = {"audio-visual=visual", "effect-list=spectrum", "effect-width=800", "effect-height=80"};
empc.mediaPlayer().media().play("http://127.0.0.1:" + port, op); 

有很多代码,但是没有与VLCJ直接相关的代码。如果您认为有必要,我可以发布服务器代码,但是我认为不需要,因为媒体可以完美地到达客户端。因此,音频和视频工作正常,但可视化器根本不显示。任何帮助,将不胜感激。

java video vlcj http-streaming visualizer
1个回答
0
投票

首先,检查是否在操作系统发行版上安装了可视化插件。

我正在使用Linux Mint,并且在安装VLC时默认未安装这些插件。

执行此操作:

sudo apt install vlc-plugin-visualization

第二,似乎您必须在MediaPlayerFactory上设置可视化选项,而不是在媒体播放器上调用play()时传递它们。

例如:

String[] options = new String[] {"--audio-visual=visual", "--effect-list=scope,vuMeter,spectrometer,spectrum"};
factory = new MediaPlayerFactory(options);
mediaPlayer = factory.mediaPlayers().newEmbeddedMediaPlayer();

此示例在从中创建媒体播放器之前配置工厂,您可以使用任何媒体播放器工厂创建方法。

可视化效果随窗口大小缩放,我无法获得width和height参数来执行任何操作。

这对音频没问题。

[如果您播放视频,则视频将进入应用程序中嵌入的视频表面,并且VLC将打开一个新的单独窗口以显示可视化效果(可能您不希望这样做)。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.