DirectByteBuffer.clear() crashes with null pointer in ART's JIT OSR compiled code on Android 16. Revert AudioPipeline to use the original ShortArray writeAudio/readAudio path. The DirectByteBuffer JNI functions remain in WzpEngine.kt and jni_bridge.rs for future use once the OSR issue is resolved. The original SIGBUS from ART GC is rare (~1 crash per 8 min call) and doesn't warrant the DirectByteBuffer approach until we can allocate the buffer as a class field outside the hot loop. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>