]> git.sesse.net Git - vlc/blobdiff - bindings/java/core/src/main/java/org/videolan/jvlc/MediaDescriptor.java
release method added
[vlc] / bindings / java / core / src / main / java / org / videolan / jvlc / MediaDescriptor.java
index a248d580160bfe27658bc12821c15f341cd6500e..727f157bcaac16b14faa38258ae23f33d85e0050 100644 (file)
@@ -36,6 +36,7 @@ public class MediaDescriptor
     private LibVlcMediaDescriptor instance;
     private LibVlc libvlc;
     private LibVlcEventManager eventManager;
+    private boolean released;
     
     /**
      * @param jvlc The jvlc instance to create the media descriptor for.
@@ -45,8 +46,8 @@ public class MediaDescriptor
     {
         libvlc_exception_t exception = new libvlc_exception_t();
         libvlc = jvlc.getLibvlc();
-        instance = libvlc.libvlc_media_descriptor_new(jvlc.getInstance(), media, exception);
-        eventManager = libvlc.libvlc_media_descriptor_event_manager(instance, exception);
+        instance = libvlc.libvlc_media_new(jvlc.getInstance(), media, exception);
+        eventManager = libvlc.libvlc_media_event_manager(instance, exception);
     }
 
     MediaDescriptor(JVLC jvlc, LibVlcMediaDescriptor instance)
@@ -54,18 +55,18 @@ public class MediaDescriptor
         libvlc_exception_t exception = new libvlc_exception_t();
         libvlc = jvlc.getLibvlc();
         this.instance = instance;
-        eventManager = libvlc.libvlc_media_descriptor_event_manager(instance, exception);
+        eventManager = libvlc.libvlc_media_event_manager(instance, exception);
     }
 
     public void addOption(String option)
     {
         libvlc_exception_t exception = new libvlc_exception_t();
-        libvlc.libvlc_media_descriptor_add_option(instance, option, exception );
+        libvlc.libvlc_media_add_option(instance, option, exception );
     }
     
     public String getMrl()
     {
-        return libvlc.libvlc_media_descriptor_get_mrl(instance);
+        return libvlc.libvlc_media_get_mrl(instance);
     }
     
     public MediaInstance getMediaInstance()
@@ -79,11 +80,12 @@ public class MediaDescriptor
     @Override
     protected void finalize() throws Throwable
     {
-        libvlc.libvlc_media_descriptor_release(instance);
+        release();
         super.finalize();
     }
 
     
+    
     /**
      * Returns the instance.
      * @return the instance
@@ -101,4 +103,19 @@ public class MediaDescriptor
     {
         return libvlc;
     }
+
+    /**
+     * 
+     */
+    public void release()
+    {
+        if (released)
+        {
+            return;
+        }
+        released = true;
+        libvlc.libvlc_media_release(instance);
+    }
+    
+    
 }