docker: add a Dockerfile example
[nit.git] / lib / android / audio.nit
index 649a95d..e985891 100644 (file)
@@ -115,9 +115,10 @@ private extern class NativeMediaPlayer in "Java" `{ android.media.MediaPlayer `}
                }
        `}
 
-       fun create(context: NativeActivity, id: Int): NativeMediaPlayer in "Java" `{
+       new create(context: NativeActivity, id: Int): NativeMediaPlayer
+       in "Java" `{
                try {
-                       return self.create(context, (int)id);
+                       return MediaPlayer.create(context, (int)id);
                }catch(Exception e) {
                        return null;
                }
@@ -208,10 +209,11 @@ end
 # Used to play sound, best suited for sounds effects in apps or games
 class SoundPool
 
-       # Error gestion
+       # Latest error on this sound pool
        var error: nullable Error = null
 
        private var nsoundpool: NativeSoundPool is noinit
+
        # The maximum number of simultaneous streams for this SoundPool
        var max_streams = 10 is writable
 
@@ -366,8 +368,7 @@ class MediaPlayer
 
        # Init the mediaplayer with a sound resource id
        init from_id(context: NativeActivity, id: Int) do
-               self.nmedia_player = new NativeMediaPlayer
-               self.nmedia_player = nmedia_player.create(context, id)
+               self.nmedia_player = new NativeMediaPlayer.create(context, id)
                if self.nmedia_player.is_java_null then
                        self.error = new Error("Failed to create the MediaPlayer")
                        self.sound = new Music.priv_init(id, self, self.error)
@@ -387,7 +388,8 @@ class MediaPlayer
                        reset
                        destroy
                end
-               self.nmedia_player = self.nmedia_player.create(context, id)
+
+               self.nmedia_player = new NativeMediaPlayer.create(context, id)
                if self.nmedia_player.is_java_null then
                        self.error = new Error("Failed to load a sound")
                        self.sound = new Music.priv_init(id, self, new Error("Sound loading failed"))