2016-05-12 20 views
1

Ich baue einen benutzerdefinierten Audio-Player mit MediaCodec/MediaExtractor/AudioTrack usw., die mehrere Audio-Dateien mischt und wiedergibt. Daher benötige ich einen Resampling-Algorithmus, wenn eine der Dateien eine andere Samplerate hat.Natives Audio-Resampling auf Android

Ich kann sehen, dass es eine native AudioResample Klasse zur Verfügung: https://android.googlesource.com/platform/frameworks/av/+/jb-mr1.1-release/services/audioflinger/AudioResampler.h - Aber bisher habe ich keine Beispiele finden, wie es verwendet werden kann.

Meine Frage: Ist es möglich, den nativen Resampler auf Android zu verwenden? (in Java oder mit JNI) Wenn ja, kennt jemand ein Beispiel da draußen? Oder irgendwelche Dokumente, wie man diese benutzerdefinierte AudioResampler-Klasse verwenden kann?

Danke für Hinweise!

Antwort

2

Dies ist kein öffentliches API, Sie können sich also nicht offiziell darauf verlassen, es zu benutzen (und sogar inoffiziell wäre es sehr schwer). Sie müssen eine Bibliothek finden (idealerweise in C, für NDK), um sie in Ihrer App zu bündeln.

+0

Danke! Es wäre natürlich großartig, den nativen Code zu verwenden, der schon da ist. Aber wenn es so schwer ist, muss ich eine externe Bibliothek verwenden ... – grh