Android audio - what's the current state in Lime?

As the title suggests, should I be expecting audio to work in Android at the moment? It works in Neko and Windows but segfaults on Android when I try to play a sound. The code I’m using is this:

var buffer : AudioBuffer = Assets.getAudioBuffer( "default/test.ogg" );
var source : AudioSource = new AudioSource( buffer );
source.play();

and the error I currently get is this:

12-24 13:12:01.063: V/SDL(4309): Device: titan_umtsds
12-24 13:12:01.063: V/SDL(4309): Model: XT1068
12-24 13:12:01.063: V/SDL(4309): onCreate(): null
12-24 13:12:01.077: I/OpenAL_SLES(4309): alc_opensles_init
12-24 13:12:01.093: V/trace(4309): On create - grabbing vibrator
12-24 13:12:01.095: V/SDL(4309): onResume()
12-24 13:12:01.102: D/OpenGLRenderer(4309): Render dirty regions requested: true
12-24 13:12:01.112: D/Atlas(4309): Validating map...
12-24 13:12:01.131: I/Adreno-EGL(4309): <qeglDrvAPI_eglInitialize:410>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_LA.BF.1.1_RB1.05.00.00.002.030_msm8226_LA.BF.1.1_RB1__release_AU ()
12-24 13:12:01.131: I/Adreno-EGL(4309): OpenGL ES Shader Compiler Version: E031.25.03.00
12-24 13:12:01.131: I/Adreno-EGL(4309): Build Date: 12/04/14 Thu
12-24 13:12:01.131: I/Adreno-EGL(4309): Local Branch: 
12-24 13:12:01.131: I/Adreno-EGL(4309): Remote Branch: quic/LA.BF.1.1_rb1.14
12-24 13:12:01.131: I/Adreno-EGL(4309): Local Patches: NONE
12-24 13:12:01.131: I/Adreno-EGL(4309): Reconstruct Branch: AU_LINUX_ANDROID_LA.BF.1.1_RB1.05.00.00.002.030 +  NOTHING
12-24 13:12:01.132: I/OpenGLRenderer(4309): Initialized EGL, version 1.4
12-24 13:12:01.152: D/OpenGLRenderer(4309): Enabling debug mode 0
12-24 13:12:01.180: V/SDL(4309): surfaceCreated()
12-24 13:12:01.180: V/SDL(4309): surfaceChanged()
12-24 13:12:01.180: V/SDL(4309): pixel format RGB_565
12-24 13:12:01.181: V/SDL(4309): Window size: 720x1184
12-24 13:12:01.184: I/SDL(4309): SDL_Android_Init()
12-24 13:12:01.184: I/SDL(4309): SDL_Android_Init() finished!
12-24 13:12:01.187: W/linker(4309): libApplicationMain.so has text relocations. This is wasting memory and prevents security hardening. Please fix.
12-24 13:12:01.242: I/haxe plugin(4309): Got Load Proc a58931d4
12-24 13:12:01.242: I/haxe plugin(4309): Got Load Proc a58931d4
12-24 13:12:01.251: I/haxe plugin(4309): Got Load Proc a58931d4
12-24 13:12:01.253: I/OpenAL_SLES(4309): opensles_open_playback pDevice=0xb900eb10, deviceName=(null)
12-24 13:12:01.253: I/OpenAL_SLES(4309): alc_opensles_probe DEVICE_PROBE
12-24 13:12:01.253: I/OpenAL_SLES(4309): opensles_reset_playback pDevice=0xb900eb10
12-24 13:12:01.253: I/OpenAL_SLES(4309): bits=16, channels=2, samples=1024, size=4096, freq=44100
12-24 13:12:01.253: I/OpenAL_SLES(4309): create audio player
12-24 13:12:01.258: W/AudioTrack(4309): AUDIO_OUTPUT_FLAG_FAST denied by client
12-24 13:12:01.260: W/libc(4309): pthread_create sched_setscheduler call failed: Operation not permitted
12-24 13:12:01.264: I/OpenAL_SLES(4309): playback_function started
12-24 13:12:01.269: I/OpenAL(4309): _SC_NPROCESSORS_ONLN=4
12-24 13:12:01.297: V/SDL(4309): onWindowFocusChanged(): true
12-24 13:12:01.344: A/libc(4309): Fatal signal 11 (SIGSEGV), code 1, fault addr 0x29c0 in tid 4336 (SDLThread)

Indirect answer: it works in HaxeFlixel, which is built on top of Lime/OpenFL, so it works on Android.

Do you know if HaxeFlixel uses standard or Legacy mode?

I don’t, sorry. If you’re so inclined, you can read their source code over on GitHub and see for yourself.

Hmmm it looks like they use legacy mode. Has anybody had success with audio on Android using the latest Lime in standard mode?

I’ve just tried the SimpleAudio sample in lime samples and that also fails to run on Android. I’ll do a bit more digging when I get chance but @singmajesty or another one of the dev team could you let me know if this is supposed to be working on Android or if this is still in development?