The bug I\'m seeing is on the calls to reset() and release() never returning thus leaving my application in an indefinitely stopping state. It doesn\'t matter if I call stop() b
If you are developing for API level 16 or above, I strongly suggest you toss the crappy MediaPlayer and use Exoplayer from Google.
I did and never looked back. Since I also support API level 15, I have an abstraction to use the standard MediaPlayer when in that API and Exoplayer when in 16 (or 17 can't remember now).
It's not perfect, but it's a lot better and I've seen much much better buffering.