]> git.sesse.net Git - vlc/commitdiff
jvlc: errorOccurred callback added
authorFilippo Carone <littlejohn@videolan.org>
Sun, 27 Jul 2008 20:23:14 +0000 (22:23 +0200)
committerFilippo Carone <littlejohn@videolan.org>
Sun, 27 Jul 2008 20:24:19 +0000 (22:24 +0200)
bindings/java/core/src/main/java/org/videolan/jvlc/event/MediaPlayerCallback.java
bindings/java/core/src/main/java/org/videolan/jvlc/event/MediaPlayerListener.java
bindings/java/core/src/main/java/org/videolan/jvlc/example/VLCExample.java
bindings/java/samples/client/src/main/java/VlcClient.java

index 54d67f92e6cd4686fcb2563383484830afdff8e1..849950ca46f522f3daabd3b7aa47efe87660d721 100644 (file)
@@ -41,7 +41,7 @@ public class MediaPlayerCallback implements LibVlcCallback
 {
 
     private MediaPlayerListener listener;
-    private MediaPlayer mediaInstance;
+    private MediaPlayer mediaPlayer;
 
     /**
      * Logger.
@@ -50,7 +50,7 @@ public class MediaPlayerCallback implements LibVlcCallback
 
     public MediaPlayerCallback(MediaPlayer mediaInstance, MediaPlayerListener listener)
     {
-        this.mediaInstance = mediaInstance;
+        this.mediaPlayer = mediaInstance;
         this.listener = listener;
     }
     /**
@@ -60,30 +60,35 @@ public class MediaPlayerCallback implements LibVlcCallback
     {
         if (libvlc_event.type == LibVlcEventType.libvlc_MediaPlayerPlaying.ordinal())
         {
-            listener.playing(mediaInstance);
+            listener.playing(mediaPlayer);
         }
         else if (libvlc_event.type == LibVlcEventType.libvlc_MediaPlayerPaused.ordinal())
         {
-            listener.paused(mediaInstance);
+            listener.paused(mediaPlayer);
         }
         else if (libvlc_event.type == LibVlcEventType.libvlc_MediaPlayerEndReached.ordinal())
         {
-            listener.endReached(mediaInstance);
+            listener.endReached(mediaPlayer);
         }
         else if (libvlc_event.type == LibVlcEventType.libvlc_MediaPlayerPositionChanged.ordinal())
         {
-            listener.positionChanged(mediaInstance);
+            listener.positionChanged(mediaPlayer);
         }
         else if (libvlc_event.type == LibVlcEventType.libvlc_MediaPlayerStopped.ordinal())
         {
-            listener.stopped(mediaInstance);
+            listener.stopped(mediaPlayer);
         }
         else if (libvlc_event.type == LibVlcEventType.libvlc_MediaPlayerTimeChanged.ordinal())
         {
             libvlc_event.event_type_specific.setType(LibVlc.media_player_time_changed.class);
             LibVlc.media_player_time_changed timeChanged = (media_player_time_changed) libvlc_event.event_type_specific
                 .readField("media_player_time_changed");
-            listener.timeChanged(mediaInstance, timeChanged.new_time);
+            listener.timeChanged(mediaPlayer, timeChanged.new_time);
+        }
+        else if (libvlc_event.type == LibVlcEventType.libvlc_MediaPlayerEncounteredError.ordinal())
+        {
+            log.warn("Media player encountered error.");
+            listener.errorOccurred(mediaPlayer);
         }
         else
         {
index 88775227815a3a8921938af18098a2709ad64e11..de95b0004002675ad289a001fe094786d077f88f 100644 (file)
@@ -43,4 +43,6 @@ public interface MediaPlayerListener
     
     void positionChanged(MediaPlayer mediaPlayer);
     
+    void errorOccurred(MediaPlayer mediaPlayer);
+    
 }
index 0d516206ba50908d30a7f1be804df2ce31964893..1c6f7d213a6baff9d0d046959cc9e1ba171a55c4 100644 (file)
@@ -64,6 +64,11 @@ public class VLCExample
             {
                 System.out.println("Media player stopped. MRL: " + mediaPlayer.getMediaDescriptor().getMrl());
             }
+
+            public void errorOccurred(MediaPlayer mediaPlayer)
+            {
+                System.out.println("An error has occurred.");
+            }
         });
         mediaPlayer.play();
 
index a1b6692db10b49b10c1ece82b56693956b8230b7..c44fea81a1d63f84e65acf90be6c1a224fff8a4c 100644 (file)
@@ -5,7 +5,7 @@
  * 
  * Created on 28-feb-2006
  *
- * $Id: AudioIntf.java 8 2006-02-28 12:03:47Z little $
+ * $Id: $
  *
  * This program is free software; you can redistribute it
  * and/or modify it under the terms of the GNU General Public License