@Override
            public void onBuffering(MediaCodecDecoder decoder) {
                // Enter buffering mode (playback pause) if cached amount is below water mark
                // Do not enter buffering mode is player is already paused (buffering mode will be
                // entered when playback is started and buffer is too empty).
                if(mPlaybackThread != null && !mPlaybackThread.isPaused()
                        && !mBuffering
                        && mDecoders.getCachedDuration() < BUFFER_LOW_WATER_MARK_US
                        && !mDecoders.hasCacheReachedEndOfStream()) {
                    mBuffering = true;
                    mEventHandler.sendMessage(mEventHandler.obtainMessage(MEDIA_INFO,
                            MEDIA_INFO_BUFFERING_START, 0));
                }
            }
@see android.media.MediaPlayer#setDataSource(android.content.Context, android.net.Uri)
@deprecated only for compatibility with Android API
MediaPlayer/src/main/java/net/protyposis/android/mediaplayer/MediaPlayer.java