public Cue addCue(int timeMs, Object data) {
        Cue cue = new Cue(timeMs, data);

        mCueTimeline.addCue(cue);

        return cue;
    }
Adds a cue point to the media playback timeline. When the cue point is passed, a cue event
with this data will be issued to a registered cue listener with
{@link #setOnCueListener(OnCueListener)}. The cue point can carry arbitrary data as an
attachment.

@param timeMs the time in milliseconds on the playback timeline at which this cue will be fired
@param data   optional data that will be exposed through the cue event
@return A cue object that can be used to remove the cue from the playback timeline through
{@link #removeCue(Cue)}. This is the same cue object that will be provided to the
{@link OnCueListener} so this can be used as a lookup key for associated data.
MediaPlayer/src/main/java/net/protyposis/android/mediaplayer/MediaPlayer.java