]> git.sesse.net Git - vlc/blob - bindings/java/core/src/main/java/org/videolan/jvlc/example/VLCExample.java
41ec321d9feeee782ffbfe83aaf1b4ef21be08af
[vlc] / bindings / java / core / src / main / java / org / videolan / jvlc / example / VLCExample.java
1 package org.videolan.jvlc.example;
2
3 import org.videolan.jvlc.Audio;
4 import org.videolan.jvlc.JVLC;
5 import org.videolan.jvlc.MediaDescriptor;
6 import org.videolan.jvlc.MediaPlayer;
7 import org.videolan.jvlc.Video;
8 import org.videolan.jvlc.event.MediaPlayerListener;
9
10
11 public class VLCExample
12 {
13
14     public static void main(String[] args) throws InterruptedException
15     {
16         System.out.println("== Starting VLCExample ==");
17         if (args.length == 0)
18         {
19             System.out.print("Creating a JVLC instance without args");
20         }
21         else
22         {
23             System.out.println("Creating a JVLC instance with args: ");
24             for (int i = 0; i < args.length; i++)
25             {
26                 System.out.println(i + ") " + args[i]);
27             }
28         }
29         JVLC jvlc = new JVLC(args);
30         System.out.println("... done.");
31
32         MediaDescriptor mediaDescriptor = new MediaDescriptor(jvlc, "/home/carone/apps/a.avi");
33         MediaPlayer mediaInstance = mediaDescriptor.getMediaInstance();
34
35         mediaInstance.addListener(new MediaPlayerListener()
36         {
37
38             public void endReached(MediaPlayer mediaInstance)
39             {
40                 System.out.println("Media instance end reached. MRL: " + mediaInstance.getMediaDescriptor().getMrl());
41             }
42
43             public void paused(MediaPlayer mediaInstance)
44             {
45                 System.out.println("Media instance paused. MRL: " + mediaInstance.getMediaDescriptor().getMrl());
46             }
47
48             public void played(MediaPlayer mediaInstance)
49             {
50                 System.out.println("Media instance played. MRL: " + mediaInstance.getMediaDescriptor().getMrl());
51             }
52
53             public void positionChanged(MediaPlayer mediaInstance)
54             {
55                 // TODO Auto-generated method stub
56             }
57
58             public void timeChanged(MediaPlayer mediaInstance, long newTime)
59             {
60                 System.out.println("new time: " + newTime);
61             }
62         });
63         mediaInstance.play();
64
65         while (!mediaInstance.hasVideoOutput())
66         {
67             Thread.sleep(100);
68         }
69
70         Video video = new Video(jvlc);
71         System.out.print(video.getWidth(mediaInstance));
72         System.out.print("x");
73         System.out.println(video.getHeight(mediaInstance));
74         System.out.print("Fullscreen... ");
75         video.setFullscreen(mediaInstance, true);
76         Thread.sleep(3000);
77         System.out.println("real size.");
78         video.setFullscreen(mediaInstance, false);
79         System.out.print("Taking snapshot... ");
80         video.getSnapshot(mediaInstance, System.getProperty("user.dir") + "/snap.png", 0, 0);
81         System.out.println("taken. (see " + System.getProperty("user.dir") + "/snap.png )");
82         Thread.sleep(2000);
83         System.out.println("Resizing to 300x300");
84         video.setSize(300, 300);
85
86         System.out.print("Muting...");
87         Audio audio = new Audio(jvlc);
88         audio.setMute(true);
89         Thread.sleep(3000);
90         System.out.println("unmuting.");
91         audio.setMute(false);
92         Thread.sleep(3000);
93         System.out.println("Volume is: " + audio.getVolume());
94         System.out.print("Setting volume to 150... ");
95         audio.setVolume(150);
96         System.out.println("done");
97         System.out.println("== AUDIO INFO ==");
98         System.out.println("Audio track number: " + audio.getTrack(mediaInstance));
99         System.out.println("Audio channel info: " + audio.getChannel());
100         Thread.sleep(3000);
101         System.out.println("MEDIA INSTANCE INFORMATION");
102         System.out.println("--------------------------");
103         System.out.println("Total length (ms) :\t" + mediaInstance.getLength());
104         System.out.println("Input time (ms) :\t" + mediaInstance.getTime());
105         System.out.println("Input position [0-1]:\t" + mediaInstance.getPosition());
106         System.out.println("Input FPS :\t" + mediaInstance.getFPS());
107
108         System.out.println("Everything fine ;)");
109         return;
110     }
111 }