This is a low-level class, use MediaPlater
instead
android :: NativeMediaPlayer :: create
android :: NativeMediaPlayer :: duration
android :: NativeMediaPlayer :: looping
android :: NativeMediaPlayer :: looping=
android :: NativeMediaPlayer :: new
android :: NativeMediaPlayer :: pause
android :: NativeMediaPlayer :: playing
android :: NativeMediaPlayer :: prepare
android :: NativeMediaPlayer :: release
android :: NativeMediaPlayer :: reset
android :: NativeMediaPlayer :: start
android :: NativeMediaPlayer :: stop
android :: NativeMediaPlayer :: volume=
android $ NativeMediaPlayer :: SELF
Type of this instance, automatically specialized in every classcore :: Pointer :: address_is_null
Is the address behind this Object at NULL?jvm :: JavaObject :: as_exception
jvm :: JavaObject :: as_http_response
core :: Object :: class_factory
Implementation used byget_class
to create the specific class.
android :: NativeMediaPlayer :: create
core :: Pointer :: defaultinit
core :: Object :: defaultinit
jvm :: JavaObject :: defaultinit
android :: NativeMediaPlayer :: duration
jvm :: JavaObject :: is_exception
jvm :: JavaObject :: is_http_response
core :: Object :: is_same_instance
Return true ifself
and other
are the same instance (i.e. same identity).
core :: Object :: is_same_serialized
Isself
the same as other
in a serialization context?
core :: Object :: is_same_type
Return true ifself
and other
have the same dynamic type.
android :: NativeMediaPlayer :: looping
android :: NativeMediaPlayer :: looping=
core :: Object :: native_class_name
The class name of the object in CString format.core :: Pointer :: native_equals
android :: NativeMediaPlayer :: new
jvm :: JavaObject :: new_global_ref
Returns a global reference to the Java object behind this referencecore :: Object :: output_class_name
Display class name on stdout (debug only).android :: NativeMediaPlayer :: pause
android :: NativeMediaPlayer :: playing
jvm :: JavaObject :: pop_from_local_frame
Pops the current local reference frame and return a valid reference to selfjvm :: JavaObject :: pop_from_local_frame_with_env
Java implementation ofpop_from_local_frame
core :: Pointer :: premultiply_alpha
Multiply RGB values by their alpha valueandroid :: NativeMediaPlayer :: prepare
android :: NativeMediaPlayer :: release
android :: NativeMediaPlayer :: reset
android :: NativeMediaPlayer :: start
android :: NativeMediaPlayer :: stop
jvm :: JavaObject :: to_java_string
JavaString
representation of self
using Java's toString
android :: NativeMediaPlayer :: volume=
# Media Player from Java, used to play long sounds or musics, not simultaneously
# This is a low-level class, use `MediaPlater` instead
private extern class NativeMediaPlayer in "Java" `{ android.media.MediaPlayer `}
super JavaObject
new in "Java" `{
MediaPlayer mp = new MediaPlayer();
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
return mp;
`}
fun start in "Java" `{ self.start(); `}
fun prepare in "Java" `{
try {
self.prepare();
}catch(Exception e) {
Log.e("Error preparing the Media Player", e.getMessage());
e.printStackTrace();
}
`}
new create(context: NativeActivity, id: Int): NativeMediaPlayer
in "Java" `{
try {
return MediaPlayer.create(context, (int)id);
}catch(Exception e) {
return null;
}
`}
fun pause in "Java" `{ self.pause(); `}
fun stop in "Java" `{ self.stop(); `}
fun playing: Bool in "Java" `{ return self.isPlaying(); `}
fun release in "Java" `{ self.release(); `}
fun duration: Int in "Java" `{ return self.getDuration(); `}
fun looping: Bool in "Java" `{ return self.isLooping(); `}
fun looping=(b: Bool) in "Java" `{ self.setLooping(b); `}
fun volume=(vol: Float) in "Java" `{ self.setVolume((float)vol, (float)vol); `}
fun both_volume(left_volume, right_volume: Float) in "Java" `{ self.setVolume((float)left_volume, (float)right_volume); `}
fun stream_type=(stream_type: Int) in "Java" `{ self.setAudioStreamType((int)stream_type); `}
fun data_source_fd(fd: NativeFileDescriptor, start_offset, length: Int): Int in "Java" `{
try {
self.setDataSource(fd, start_offset, length);
return 1;
}catch(Exception e) {
return 0;
}
`}
fun data_source_path(path: JavaString): Int in "Java" `{
try {
self.setDataSource(path);
return 1;
}catch(Exception e) {
Log.e("Error loading the Media Player", e.getMessage());
return 0;
}
`}
fun reset in "Java" `{ self.reset(); `}
# HACK for bug #845
redef fun new_global_ref import sys, Sys.jni_env `{
Sys sys = NativeMediaPlayer_sys(self);
JNIEnv *env = Sys_jni_env(sys);
return (*env)->NewGlobalRef(env, self);
`}
end
lib/android/audio.nit:98,1--162,3