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