]> git.sesse.net Git - vlc/blob - bindings/java/core/src/main/java/org/videolan/jvlc/example/VLCExample.java
jvlc: errorOccurred callback added
[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 mediaPlayer = mediaDescriptor.getMediaPlayer();
34
35         mediaPlayer.addListener(new MediaPlayerListener()
36         {
37
38             public void endReached(MediaPlayer mediaPlayer)
39             {
40                 System.out.println("Media instance end reached. MRL: " + mediaPlayer.getMediaDescriptor().getMrl());
41             }
42
43             public void paused(MediaPlayer mediaPlayer)
44             {
45                 System.out.println("Media instance paused. MRL: " + mediaPlayer.getMediaDescriptor().getMrl());
46             }
47
48             public void playing(MediaPlayer mediaPlayer)
49             {
50                 System.out.println("Media instance played. MRL: " + mediaPlayer.getMediaDescriptor().getMrl());
51             }
52
53             public void positionChanged(MediaPlayer mediaPlayer)
54             {
55                 // TODO Auto-generated method stub
56             }
57
58             public void timeChanged(MediaPlayer mediaPlayer, long newTime)
59             {
60                 System.out.println("new time: " + newTime);
61             }
62
63             public void stopped(MediaPlayer mediaPlayer)
64             {
65                 System.out.println("Media player stopped. MRL: " + mediaPlayer.getMediaDescriptor().getMrl());
66             }
67
68             public void errorOccurred(MediaPlayer mediaPlayer)
69             {
70                 System.out.println("An error has occurred.");
71             }
72         });
73         mediaPlayer.play();
74
75         while (!mediaPlayer.hasVideoOutput())
76         {
77             Thread.sleep(100);
78         }
79
80         Video video = new Video(jvlc);
81         System.out.print(video.getWidth(mediaPlayer));
82         System.out.print("x");
83         System.out.println(video.getHeight(mediaPlayer));
84         System.out.print("Fullscreen... ");
85         video.setFullscreen(mediaPlayer, true);
86         Thread.sleep(3000);
87         System.out.println("real size.");
88         video.setFullscreen(mediaPlayer, false);
89         System.out.print("Taking snapshot... ");
90         video.getSnapshot(mediaPlayer, System.getProperty("user.dir") + "/snap.png", 0, 0);
91         System.out.println("taken. (see " + System.getProperty("user.dir") + "/snap.png )");
92         Thread.sleep(2000);
93         System.out.println("Resizing to 300x300");
94         video.setSize(300, 300);
95
96         System.out.print("Muting...");
97         Audio audio = new Audio(jvlc);
98         audio.setMute(true);
99         Thread.sleep(3000);
100         System.out.println("unmuting.");
101         audio.setMute(false);
102         Thread.sleep(3000);
103         System.out.println("Volume is: " + audio.getVolume());
104         System.out.print("Setting volume to 150... ");
105         audio.setVolume(150);
106         System.out.println("done");
107         System.out.println("== AUDIO INFO ==");
108         System.out.println("Audio track number: " + audio.getTrack(mediaPlayer));
109         System.out.println("Audio channel info: " + audio.getChannel());
110         Thread.sleep(3000);
111         System.out.println("MEDIA PLAYER INFORMATION");
112         System.out.println("--------------------------");
113         System.out.println("Total length (ms) :\t" + mediaPlayer.getLength());
114         System.out.println("Input time (ms) :\t" + mediaPlayer.getTime());
115         System.out.println("Input position [0-1]:\t" + mediaPlayer.getPosition());
116         System.out.println("Input FPS :\t" + mediaPlayer.getFPS());
117
118         System.out.println("Everything fine ;)");
119         return;
120     }
121 }