View Issue Details

IDProjectCategoryView StatusLast Update
0000845OpenMPTlibopenmptpublic2018-04-15 16:54
Reportermanx Assigned Tomanx  
PrioritylowSeverityfeatureReproducibilityN/A
Status closedResolutionwon't fix 
Product VersionOpenMPT 1.?? (long term goals) 
Summary0000845: libopenmpt Android native codec support
Description

Android NDK provides APIs to access platform-provided codecs from native code va either OpenSL ES or Android MediaCodec.
We may be able to use those for MP3 and Vorbis decoding.

Additional Information

https://stackoverflow.com/questions/22084784/does-android-ndk-support-native-methodomxal-of-video-encoding
https://vec.io/posts/android-hardware-decoding-with-mediacodec
https://groups.google.com/forum/#!topic/android-ndk/t5UTLafmotE
http://grokbase.com/t/gg/android-ndk/1232ddjdhq/pcm-format-when-decoding-to-buffer-with-opensl-es
https://groups.google.com/forum/#!topic/android-ndk/E7S5TY5f4Ok
https://stackoverflow.com/questions/24715374/ndk-support-to-decode-mp3-to-wav-in-buffers-in-android
https://stackoverflow.com/questions/22303837/android-mediaextractor-and-mp3-stream
https://android.googlesource.com/platform/frameworks/av/+/0c3be87/media/ndk/NdkMediaCodec.cpp

TagsNo tags attached.
Has the bug occurred in previous versions?
Tested code revision (in case you know it)

Activities

manx

manx

2018-04-15 16:54

administrator   ~0003505

Using system codecs comes with its own set of problems, like making sure handling of encoder/decoder delay stays consistent.

On other system (Windows), we thus have already removed support for system codecs using MediaFoundation by now in libopenmpt because of this reason.
Staying with the most feature-complete default libraries (libvorbisfile and libmpg123) and providing a single maintained fallback library (stb_vorbis and minimp3) is the way we will continue to go. Maintaining system-specific codecs is too much maintenance overhead.

Issue History

Date Modified Username Field Change
2016-08-05 09:23 manx New Issue
2016-10-03 06:59 manx Additional Information Updated
2018-04-15 16:54 manx Assigned To => manx
2018-04-15 16:54 manx Status new => closed
2018-04-15 16:54 manx Resolution open => won't fix
2018-04-15 16:54 manx Note Added: 0003505