google/ringdroid

Android N - audio does not play correctly

bfranks opened this issue · 4 comments

When playing any audio file or recording on Android-N developer preview 4 (Nexus 6P) the audio plays but the sound is just static noise.

Issue is the same on commercial release, September security patch Nougat (Nexus 6p). Mp3 plays as static and ogg files are severely distorted.

I investigated this issue, and came up with this issue: https://code.google.com/p/android/issues/detail?id=223824

A workaround is to change the following method, like so (commented-out is the old code):

public ShortBuffer getSamples() {
        if (mDecodedSamples != null) {
            return mDecodedSamples;
//            return mDecodedSamples.asReadOnlyBuffer();
        } else {
            return null;
        }
    }

Thanks @niekvse that fixes the issue for me. I'm not sure if there is a more elegant fix which should be made into a pull request at least until there is a more definitive answer for proper behaviour from upstream.

if music have 320 kb , Can't show wave