/** * Creates media player factory. * * @return New media player factory */ protected MediaPlayerFactory createMediaPlayerFactory() { return new MediaPlayerFactory(); }
@Override public List<WebcamDevice> getDevices() { LOG.debug("Searching devices"); if (OsUtils.getOS() == OsUtils.WIN) { System.err.println("WARNING: VLCj does not support webcam devices discovery on Windows platform"); } List<WebcamDevice> devices = new ArrayList<WebcamDevice>(); if (mediaListItems != null) { for (MediaListItem item : mediaListItems) { devices.add(mediaListItemToDevice(item)); } } else { MediaPlayerFactory mediaPlayerFactory = createMediaPlayerFactory(); MediaDiscoverer videoMediaDiscoverer = mediaPlayerFactory.newVideoMediaDiscoverer(); MediaList videoDeviceList = videoMediaDiscoverer.getMediaList(); List<MediaListItem> videoDevices = videoDeviceList.items(); for (MediaListItem item : videoDevices) { LOG.debug("Found item {}", item); devices.add(mediaListItemToDevice(item)); } videoDeviceList.release(); videoMediaDiscoverer.release(); mediaPlayerFactory.release(); } return devices; }
factory = new MediaPlayerFactory(VLC_ARGS); player = factory.newDirectMediaPlayer(this, this);
MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(); CanvasVideoSurface videoSurface = mediaPlayerFactory.newVideoSurface(canvas); EmbeddedMediaPlayer mediaPlayer = mediaPlayerFactory.newEmbeddedMediaPlayer(); mediaPlayer.setVideoSurface(videoSurface); MediaListPlayer mediaListPlayer = mediaPlayerFactory.newMediaListPlayer(); JPanel cp = new JPanel(); cp.setBackground(Color.black); cp.setLayout(new BorderLayout()); cp.add(canvas, BorderLayout.CENTER); JFrame f = new JFrame("vlcj embedded media list player test"); f.setIconImage(new ImageIcon(TestMediaListEmbeddedPlayer.class.getResource("/icons/vlcj-logo.png")).getImage()); f.setContentPane(cp); f.setSize(800, 600); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); MediaList mediaList = mediaPlayerFactory.newMediaList(); String[] options = {}; mediaList.addMedia("C:\\Documents and Settings\\DEVELOPER\\Desktop\\videoplayback1.mp4", options); mediaPlayer.setChapter(3);
public EqualizerPanel() { this.mediaPlayerComponent = application().mediaPlayerComponent(); this.equalizer = mediaPlayerComponent.getMediaPlayerFactory().newEqualizer(); List<Float> list = mediaPlayerComponent.getMediaPlayerFactory().getEqualizerBandFrequencies(); List<String> presets = mediaPlayerComponent.getMediaPlayerFactory().getEqualizerPresetNames(); JPanel bandsPane = new JPanel(); bandsPane.setLayout(new GridLayout(1, 1 + list.size(), 2, 0)); bandsPane.add(preampControl); JPanel contentPane = new JPanel(); contentPane.setLayout(new BorderLayout()); contentPane.add(bandsPane, BorderLayout.CENTER); contentPane.add(controlsPane, BorderLayout.NORTH); setLayout(new MigLayout("fill", "[]20[]0[]0[]0[]0[]0[]0[]0[]0[]0[]", "")); setLayout(new BorderLayout()); add(contentPane, BorderLayout.CENTER); enableCheckBox.addActionListener(this);
vlcArgs.add("--no-snapshot-preview"); MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(vlcArgs.toArray(new String[vlcArgs.size()])); mediaPlayerFactory.setUserAgent("vlcj test player"); embeddedMediaPlayer.setVideoSurface(mediaPlayerFactory.newVideoSurface(videoSurface)); embeddedMediaPlayer.setPlaySubItems(true); JFrame mainFrame = new JFrame(); mainFrame.setLayout(new BorderLayout()); mainFrame.setBackground(Color.black); mainFrame.add(videoSurface, BorderLayout.CENTER); mainFrame.add(controlsPanel, BorderLayout.SOUTH); mainFrame.setVisible(true); embeddedMediaPlayer.playMedia("tmp.mp4");
MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(args); EmbeddedMediaPlayer mediaPlayer = mediaPlayerFactory.newEmbeddedMediaPlayer(); CanvasVideoSurface videoSurface = mediaPlayerFactory.newVideoSurface(canvas); mediaPlayer.setVideoSurface(videoSurface); JFrame f = new JFrame("vlcj duplicate output test"); f.add(canvas); f.setSize(800, 600); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); mediaPlayer.playMedia(media, options, ":no-sout-rtp-sap",
public VlcjPlayer() { EmbeddedMediaPlayerComponent mediaPlayerComponent = application().mediaPlayerComponent(); mainFrame = new MainFrame(); mainFrame.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { mediaPlayerComponent.getMediaPlayer().stop(); mediaPlayerComponent.release(); if (nativeStreams != null) { nativeStreams.release(); } application().post(ShutdownEvent.INSTANCE); } @Override public void windowClosed(WindowEvent e) { } }); mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final EmbeddedMediaPlayer embeddedMediaPlayer = mediaPlayerComponent.getMediaPlayer(); embeddedMediaPlayer.setFullScreenStrategy(new VlcjPlayerFullScreenStrategy(mainFrame)); nativeLog = mediaPlayerComponent.getMediaPlayerFactory().newLog(); messagesFrame = new NativeLogFrame(nativeLog); effectsFrame = new EffectsFrame(); debugFrame = new DebugFrame(); }
String[] libvlcArgs = {...add options here...}; MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(libvlcArgs); FullScreenStrategy fullScreenStrategy = new DefaultFullScreenStrategy(mainFrame); EmbeddedMediaPlayer mediaPlayer = mediaPlayerFactory.newMediaPlayer(fullScreenStrategy); String[] standardMediaOptions = {"video-filter=logo", "logo-file=vlcj-logo.png", "logo-opacity=25"}; mediaPlayer.setStandardMediaOptions(standardMediaOptions); mediaPlayer.addMediaPlayerEventListener(new MediaPlayerEventAdapter() {...add implementation here...}); Canvas videoSurface = new Canvas(); mediaPlayer.setVideoSurface(videoSurface); String mediaPath = "/path/to/some/movie.mpg"; String[] mediaOptions = {}; mediaPlayer.playMedia(mediaPath, mediaOptions); // Do some interesting things in the application ... mediaPlayer.release(); mediaPlayerFactory.release();
public static void Play(File AudioFile){ if (!LibVLCLoader.Loaded) LibVLCLoader.loadLibVLC(); MediaPlayerFactory MPF = new MediaPlayerFactory( "--video-title=vlcj video output", "--no-snapshot-preview", "--quiet", "--quiet-synchro", "--sub-filter=logo:marq", "--intf=dummy" ); EmbeddedMediaPlayer EMP = MPF.newEmbeddedMediaPlayer(); if (EMP.prepareMedia(AudioFile.getAbsolutePath())){ EMP.addMediaPlayerEventListener(new MediaPlayerEventAdapter(){ @Override public void subItemFinished(MediaPlayer p, int i){ EMP.release(); MPF.release(); } }); Platform.runLater(() -> EMP.play()); } else{ EMP.release(); MPF.release(); } }
"--no-snapshot-preview", // no blending in dummy vout }; MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(VLC_ARGS); HeadlessMediaPlayer mediaPlayer = mediaPlayerFactory.newHeadlessMediaPlayer(); mediaPlayerFactory.release();
Canvas canvas = new Canvas(); MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(); CanvasVideoSurface videoSurface = mediaPlayerFactory.newVideoSurface(canvas); EmbeddedMediaPlayer mediaPlayer = mediaPlayerFactory.newEmbeddedMediaPlayer(); mediaPlayer.setVideoSurface(videoSurface); mediaPlayer.playMedia(String with the name of the file);
String path = "/usr/lib"; //path for the vlc libs in linux NativeLibrary.addSearchPath ( "libvlc", path ); System.setProperty ( "jna.library.path", path ); MediaPlayerFactory factory = new MediaPlayerFactory (); mediaPlayer = factory.newEmbeddedMediaPlayer (); mediaPlayer.setRepeat ( false ); mediaPlayer.setEnableKeyInputHandling ( false ); mediaPlayer.setEnableMouseInputHandling ( false ); CanvasVideoSurface videoSurface = factory.newVideoSurface ( canvas ); mediaPlayer.setVideoSurface ( videoSurface ); mediaPlayer.playMedia ( "/media/path/" );
public static void main(String[] args) throws Exception { // your VLC installation path NativeLibrary.addSearchPath("libvlc", "C:\\Program Files\\VideoLAN\\VLC"); String media = "your file url"; // example = file:///C:/test.mp4 // you are gonna use below value on the client String[] options = {":sout=#rtp{sdp=rtsp://localhost:8554/stream"}; System.out.println("Streaming '" + media + "' to '" + options + "'"); MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(); HeadlessMediaPlayer mediaPlayer = mediaPlayerFactory.newHeadlessMediaPlayer(); mediaPlayer.playMedia(media, options, ":no-sout-rtp-sap", ":no-sout-standard-sap", ":sout-all", ":sout-keep"); // Don't exit Thread.currentThread().join(); }
@Override public synchronized void dispose() { if (!disposed.compareAndSet(false, true)) { return; } LOG.debug("Release resources (player={}, factory={})", player, factory); player.release(); factory.release(); }
@Override public final void itemStateChanged(ItemEvent e) { String presetName = (String) presetComboBox.getSelectedItem(); if (e.getStateChange() == ItemEvent.SELECTED) { if (presetName != null) { Equalizer presetEqualizer = mediaPlayerComponent.getMediaPlayerFactory().newEqualizer(presetName); if (presetEqualizer != null) { applyingPreset = true; preampControl.getSlider().setValue((int) (presetEqualizer.getPreamp() * 100f)); float[] amps = presetEqualizer.getAmps(); for (int i = 0; i < amps.length; i++) { bandControls[i].getSlider().setValue((int) (amps[i] * 100f)); } applyingPreset = false; } } } } }
mediaPlayerFactory.release(); mediaPlayerFactory = new MediaPlayerFactory(); mediaPlayer = mediaPlayerFactory.newHeadlessMediaPlayer();
mFactory = new MediaPlayerFactory(); mPlayer = mFactory.newHeadlessMediaPlayer(); String mrl = "rtsp://@" + addressStr + ":" + mPhoneRTSPPort; String options = ":sout=#transcode{vcodec=h264,venc=x264{cfr=16},scale=1,acodec=mp4a,ab=160,channels=2,samplerate=44100}" + ":file{dst=C:/Users/the man/yahoo.mp4}"; mPlayer.playMedia(mrl, options);
String[] args = { "--video-filter", "rotate", "rotate-angle", "10" }; mediaPlayerFactory = new MediaPlayerFactory(args);
factory[i] = new MediaPlayerFactory(); mediaPlayer[i] = factory[i].newEmbeddedMediaPlayer(); mediaPlayer[i].setVideoSurface(factory[i].newVideoSurface(videoCanvas[i])); mediaPlayer[i].setPlaySubItems(true);