Thank you for sharing this
I already looked into audio stem splitting and I made a port for Spleeter by Deezer into kotlin, however I’ve scraped the idea since it would blow up the size of the app to 350MB ish, also I don’t want to rely on online APIs.
I also had something in mind like your second idea but this would indeed take a lot of time and UI/UX design which I’m not skilled at, so for the time being I’m not planning on introducing that.