SpleeterAndroidPort
A port in Kotlin Android for the audio stem separation tool Spleeter by Deezer
Install / Use
/learn @Fr4nKB/SpleeterAndroidPortREADME
SpleeterAndroidPort
I spent multiple days to find a way to have an audio stem separation tool on Android, this repo contains a AudioStemSeparation class to use the converted tflite model of the 4stems spleeter model available in the jinay1991's repo from which this code was inspired (the tflite model can be downloaded here).
Configuration
- Add dependencies
com.arthenica:ffmpeg-kit-audio,org.tensorflow:tensorflow-lite:2.13.0andorg.tensorflow:tensorflow-lite-select-tf-ops:2.13.0 - Place the tflite model in the
assetsfolder of the app - Place the
AudioStemSeparationclass where you need
Usage
val separator = AudioStemSeparation(context, "nameModelWithoutExt", "path/to/file/file.wav")
separator.init()
separator.separate()
separator.unInit()
If the file you are using is large and you get errors with memory consumption try adding android:largeHeap="true" to AndroidManifest under application tag.
The AudioStemSeparation class automatically saves the stems as 0.wav, 1.wav and so on.. representing bass, drums, accompaniment and vocals.
Related Skills
node-connect
349.9kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.9kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.9kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
