@Override public void actionPerformed(ActionEvent e) { mediaPlayer.videoSurface().set(previewVideoSurface); mediaPlayer.videoSurface().attachVideoSurface(); } });
/** * Create a new media player. * <p> * Full-screen will not be supported. * * @param libvlc native interface * @param instance libvlc instance */ public EmbeddedMediaPlayer(LibVlc libvlc, libvlc_instance_t instance) { super(libvlc, instance); this.libvlc = libvlc; this.libvlcInstance = instance; this.fullScreenApi = new FullScreenApi (this); this.inputApi = new InputApi (this); this.overlayApi = new OverlayApi (this); this.videoSurfaceApi = new VideoSurfaceApi(this); }
/** * Get the video surface component. * <p> * This method will only be used if the video surface is a {@link ComponentVideoSurface} so we can forgo some * checks. * * @return */ private Component getComponent() { return ((ComponentVideoSurface) mediaPlayer.videoSurface().getVideoSurface()).component(); }
public CaptureTest() { canvas = new Canvas(); canvas.setBackground(Color.black); contentPane = new JPanel(); contentPane.setBackground(Color.black); contentPane.setLayout(new BorderLayout()); contentPane.add(canvas, BorderLayout.CENTER); frame = new JFrame("Capture"); frame.setIconImage(new ImageIcon(getClass().getResource("/icons/vlcj-logo.png")).getImage()); frame.setContentPane(contentPane); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLocation(50, 50); frame.setSize(800, 600); factory = new MediaPlayerFactory(); mediaPlayer = factory.mediaPlayers().newEmbeddedMediaPlayer(); videoSurface = factory.videoSurfaces().newVideoSurface(canvas); mediaPlayer.videoSurface().set(videoSurface); }
/** * If there is an associated media player then make sure the video surface is attached. */ void attachVideoSurface() { if (mediaPlayer instanceof EmbeddedMediaPlayer) { ((EmbeddedMediaPlayer) mediaPlayer).videoSurface().attachVideoSurface(); } }
@Override protected void onBeforeRelease() { fullScreenApi .release(); inputApi .release(); overlayApi .release(); videoSurfaceApi.release(); }
public ScreenTestPlayer() { canvas = new Canvas(); canvas.setBackground(Color.black); canvas.setSize(550, 300); contentPane = new JPanel(); contentPane.setBackground(Color.black); contentPane.setLayout(new BorderLayout()); contentPane.add(canvas, BorderLayout.CENTER); frame = new JFrame("vlcj desktop capture"); frame.setIconImage(new ImageIcon(getClass().getResource("/icons/vlcj-logo.png")).getImage()); frame.setContentPane(contentPane); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); factory = new MediaPlayerFactory(); mediaPlayer = factory.mediaPlayers().newEmbeddedMediaPlayer(); videoSurface = factory.videoSurfaces().newVideoSurface(canvas); mediaPlayer.videoSurface().set(videoSurface); }
protected final void onBeforePlay() { videoSurface().attachVideoSurface(); }
mediaPlayer.videoSurface().set(videoSurface);
@Override public void actionPerformed(ActionEvent e) { mediaPlayer.videoSurface().set(mainVideoSurface); mediaPlayer.videoSurface().attachVideoSurface(); } });
if (mediaPlayer.videoSurface().getVideoSurface() instanceof ComponentVideoSurface) {
final EmbeddedMediaPlayer mediaPlayer = mediaPlayerFactory.mediaPlayers().newEmbeddedMediaPlayer(); mediaPlayer.videoSurface().set(mediaPlayerFactory.videoSurfaces().newVideoSurface(c));
mediaPlayer.videoSurface().set(videoSurface);
public static void main(String[] args) throws Exception { if(args.length != 1) { System.out.println("Specify a single MRL to stream"); System.exit(1); } String media = args[0]; String options = formatRtpStream("230.0.0.1", 5555); System.out.println("Streaming '" + media + "' to '" + options + "'"); MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(args); EmbeddedMediaPlayer mediaPlayer = mediaPlayerFactory.mediaPlayers().newEmbeddedMediaPlayer(); Canvas canvas = new Canvas(); canvas.setBackground(Color.black); VideoSurface videoSurface = mediaPlayerFactory.videoSurfaces().newVideoSurface(canvas); mediaPlayer.videoSurface().set(videoSurface); JFrame f = new JFrame("vlcj duplicate output test"); f.setIconImage(new ImageIcon(StreamRtpDuplicate.class.getResource("/icons/vlcj-logo.png")).getImage()); f.add(canvas); f.setSize(800, 600); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); mediaPlayer.media().play(media, options, ":no-sout-rtp-sap", ":no-sout-standard-sap", ":sout-all", ":sout-keep" ); // Don't exit Thread.currentThread().join(); }
mediaPlayer.videoSurface().set(videoSurface);
final EmbeddedMediaPlayer mediaPlayer = mediaPlayerFactory.mediaPlayers().newEmbeddedMediaPlayer(); mediaPlayer.fullScreen().strategy(new ExclusiveModeFullScreenStrategy(f)); mediaPlayer.videoSurface().set(mediaPlayerFactory.videoSurfaces().newVideoSurface(c));
mediaPlayer.videoSurface().set(videoSurface);
mediaPlayer.videoSurface().set(factory.videoSurfaces().newVideoSurface(vs));
mediaPlayer.videoSurface().set(videoSurface);