java - 在多个窗口中使用克隆的 VLCJ

标签 java swing vlc libvlc vlcj

我想在两个不同的 JFrame 中拥有同一视频的两个副本! 目前,我已经实现了 2 个视频正在显示,但只有一个视频“集成”到 JFrame 中。据我所读,它还没有完全开发出来,无法与所有副本集成。我错了吗?还有其他方法可以实现我想要的吗?

这是我在 2 个 JFrame 中播放内容的代码,为了简单起见,还有一个 JFileChooser。

public class MyMultiDisplay
{
    List <String> argsList;
    MediaPlayerFactory mediaPlayerFactory;
    EmbeddedMediaPlayer player;
    JFrame frame1;
    JFrame frame2;

    public static void main(String[] args)
    {
        new NativeDiscovery().discover();

        SwingUtilities.invokeLater(new Runnable()
        {
            public void run()
            {
                new MyStart();
            }
        });
    }

    public MyMultiDisplay()
    {
        frame1 = new JFrame("My First Media Player");
        frame1.setBounds(100, 100, 600, 400);
        frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame2 = new JFrame("My Second Media Player");
        frame2.setBounds(700, 500, 600, 400);
        frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        argsList = new ArrayList <String>();
        argsList.add("--video-splitter=clone");
        argsList.add("--clone-count=2");
        mediaPlayerFactory = new MediaPlayerFactory(argsList);
        player = mediaPlayerFactory.newEmbeddedMediaPlayer();
        Canvas canvas = new Canvas();
        player.setVideoSurface(mediaPlayerFactory.newVideoSurface(canvas));
        frame1.add(canvas);
        frame1.setVisible(true);
        frame2.setVisible(true);
        JFileChooser chooser = new JFileChooser();
        int returnVal = chooser.showOpenDialog(null);
        if (returnVal == JFileChooser.APPROVE_OPTION)
        {
            player.playMedia(chooser.getSelectedFile().getAbsolutePath());
        }
    }
}

最佳答案

这是不可能的。

LibVLC API 以及 vlcj 不支持传递多个 native 窗口 ID 来进行嵌入。

关于java - 在多个窗口中使用克隆的 VLCJ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38693195/

相关文章:

java - 如何从firebase实时数据库获取数据并将其设置为Singleton类

Java - 向 JFrame 添加组件

java - 从数组到 JPanel 的绘制点

java - 如何同时收听多个按键输入

ios - MobileVLCKit 缩略图问题

gstreamer - 将 RTSP 负载与 gst-rtsp-server 分开

java - 从日历对象检索年月日期时出错

java - 当另一个 Activity 调用 onBackPressed 时 Android 更新 Activity

java - 内部类的问题。表达式错误开始非法

android - VLC RTSP 直播到 Android