gpt4 book ai didi

java - 使用 vlcj 时出现模块损坏错误

转载 作者:行者123 更新时间:2023-12-01 11:06:09 25 4
gpt4 key购买 nike

过去两个小时我一直在尝试使用 vlcj,但我不知道如何让它工作。我一直在使用this tutorial 。即使像教程中那样编写代码后,我仍然收到此错误

SLF4J:无法加载类“org.slf4j.impl.StaticLoggerBinder”。

SLF4J:默认为无操作 (NOP) 记录器实现

SLF4J:参见http://www.slf4j.org/codes.html#StaticLoggerBinder了解更多详情。

[000000001a8ed480]核心流错误:损坏的模块:C:\VideoLAN\VLC\plugins\stream_filter\libdash_plugin.dll

[000000001a8d7a30]核心解复用元错误:损坏的模块:C:\VideoLAN\VLC\plugins\meta_engine\libtaglib_plugin.dll

[000000001a8acfb0]核心vout显示错误:无法设置在顶部

这是我正在使用的代码,它与教程有点不同,因为我的程序有不同的要求。

public class AVPlayer extends JPanel{

private EmbeddedMediaPlayerComponent mediaPlayer;
private String vlcPath, mediapath ; //iniitalized in chooseFile()

//constructor
public AVPlayer() {
chooseFiles();
NativeLibrary.addSearchPath(RuntimeUtil.getLibVlcLibraryName(), vlcPath);
mediaPlayer = new EmbeddedMediaPlayerComponent();
add(mediaPlayer);
setSize(400,400);


}

// method to explicitly choose the VLC path and the video file I want to play
private void chooseFiles(){
JFileChooser ourFileSelector = new JFileChooser();
File ourfile;

//choose vlc path
ourFileSelector.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
ourFileSelector.showSaveDialog(null);
ourfile = ourFileSelector.getSelectedFile();
vlcPath = ourfile.getAbsolutePath();

//choose media path
ourFileSelector.setFileSelectionMode(JFileChooser.FILES_ONLY);
ourFileSelector.showSaveDialog(null);
ourfile = ourFileSelector.getSelectedFile();
mediapath = ourfile.getAbsolutePath();
}

//called in main to play the video
public void playVideo(){
mediaPlayer.getMediaPlayer().playMedia(mediapath);
}
}

这是主要内容

 public static void main(String[] args) { 
JFrame frame = new JFrame();
AVPlayer player = new AVPlayer();
frame.add(player);
frame.setVisible(true);
frame.validate();
player.playVideo();
}

最佳答案

这里有三个不同的东西。

第一个只是关于 vlcj 现在使用的 SLF4J 日志记录 API 配置的警告。通过点击您发布的链接即可轻松“修复”此问题。

第二个损坏模块是 VLC 本身报告的 native 错误。这里最多可以说的是VLC无法加载和初始化这些插件(libdash和libtaglib),但至于它失败的确切原因很难说。如果您在 Windows 上使用 64 位 VLC,请尝试使用 32 位 VLC 和 32 位 JVM。

第三个是“无法设置在顶部...” - 这也是 VLC 报告的 native 警告,根据我的经验可以忽略,不会产生不利影响。

vlcj 中实际上没有任何内容与这些问题有关。

关于java - 使用 vlcj 时出现模块损坏错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32927226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com