Example usage for android.support.v4.media.session PlaybackStateCompat STATE_CONNECTING

List of usage examples for android.support.v4.media.session PlaybackStateCompat STATE_CONNECTING

Introduction

In this page you can find the example usage for android.support.v4.media.session PlaybackStateCompat STATE_CONNECTING.

Prototype

int STATE_CONNECTING

To view the source code for android.support.v4.media.session PlaybackStateCompat STATE_CONNECTING.

Click Source Link

Document

State indicating the class doing playback is currently connecting to a route.

Usage

From source file:nuclei.media.playback.FallbackPlayback.java

private boolean isStatePlaying() {
    return (isMediaPlayerPlaying() || mState == PlaybackStateCompat.STATE_PLAYING
            || mState == PlaybackStateCompat.STATE_BUFFERING || mState == PlaybackStateCompat.STATE_CONNECTING);
}

From source file:net.simno.klingar.playback.PlaybackManager.java

/**
 * Switch to a different Playback instance, maintaining all playback state, if possible.
 *
 * @param newPlayback switch to this playback
 *//*from w  ww  .j a v  a  2 s .  co  m*/
void switchToPlayback(@NonNull Playback newPlayback, boolean resumePlaying) {
    Timber.d("switchToPlayback %s resume %s", newPlayback.getClass().getSimpleName(), resumePlaying);
    // Suspend the current one
    @State
    int oldState = playback.getState();
    int position = playback.getCurrentStreamPosition();
    Track currentMediaId = playback.getCurrentTrack();
    playback.stop(false);
    newPlayback.setCallback(this);
    newPlayback.setCurrentStreamPosition(position < 0 ? 0 : position);
    newPlayback.setCurrentTrack(currentMediaId);
    newPlayback.start();
    // Finally swap the instance
    playback = newPlayback;
    switch (oldState) {
    case PlaybackStateCompat.STATE_BUFFERING:
    case PlaybackStateCompat.STATE_CONNECTING:
    case PlaybackStateCompat.STATE_PAUSED:
        playback.pause();
        break;
    case PlaybackStateCompat.STATE_PLAYING:
        Track currentQueueItem = queueManager.currentTrack();
        if (resumePlaying && currentQueueItem != null) {
            playback.play(currentQueueItem);
        } else if (!resumePlaying) {
            playback.pause();
        } else {
            playback.stop(true);
        }
        break;
    default:
    }
}

From source file:com.classiqo.nativeandroid_32bitz.playback.PlaybackManager.java

public void switchToPlayback(Playback playback, boolean resumePlaying) {
    if (playback == null) {
        throw new IllegalArgumentException("Playback cannot be null");
    }//  w w  w. j  a v  a  2 s.c  om

    int oldState = mPlayback.getState();
    int pos = mPlayback.getCurrentStreamPosition();
    String currentMediaId = mPlayback.getCurrentMediaId();
    mPlayback.stop(false);
    playback.setCallback(this);
    playback.setCurrentStreamPosition(pos < 0 ? 0 : pos);
    playback.setCurrentMediaId(currentMediaId);
    playback.start();
    mPlayback = playback;

    switch (oldState) {
    case PlaybackStateCompat.STATE_BUFFERING:
    case PlaybackStateCompat.STATE_CONNECTING:
    case PlaybackStateCompat.STATE_PAUSED:
        mPlayback.pause();
        break;
    case PlaybackStateCompat.STATE_PLAYING:
        MediaSessionCompat.QueueItem currentMusic = mQueueManager.getCurrentMusic();

        if (resumePlaying && currentMusic != null) {
            mPlayback.play(currentMusic);
        } else if (!resumePlaying) {
            mPlayback.pause();
        } else {
            mPlayback.stop(true);
        }
        break;
    case PlaybackStateCompat.STATE_NONE:
        break;
    default:
        LogHelper.d(TAG, "Default called, Old state is ", oldState);
    }
}

From source file:com.example.android.supportv4.media.QueueFragment.java

private void onPlaybackStateChanged(PlaybackStateCompat state) {
    Log.d(TAG, "onPlaybackStateChanged " + state);
    if (state == null) {
        return;//from   w w  w  .j a  va  2s.c o  m
    }
    mQueueAdapter.setActiveQueueItemId(state.getActiveQueueItemId());
    mQueueAdapter.notifyDataSetChanged();
    boolean enablePlay = false;
    StringBuilder statusBuilder = new StringBuilder();
    switch (state.getState()) {
    case PlaybackStateCompat.STATE_PLAYING:
        statusBuilder.append("playing");
        enablePlay = false;
        break;
    case PlaybackStateCompat.STATE_PAUSED:
        statusBuilder.append("paused");
        enablePlay = true;
        break;
    case PlaybackStateCompat.STATE_STOPPED:
        statusBuilder.append("ended");
        enablePlay = true;
        break;
    case PlaybackStateCompat.STATE_ERROR:
        statusBuilder.append("error: ").append(state.getErrorMessage());
        break;
    case PlaybackStateCompat.STATE_BUFFERING:
        statusBuilder.append("buffering");
        break;
    case PlaybackStateCompat.STATE_NONE:
        statusBuilder.append("none");
        enablePlay = false;
        break;
    case PlaybackStateCompat.STATE_CONNECTING:
        statusBuilder.append("connecting");
        break;
    default:
        statusBuilder.append(mPlaybackState);
    }
    statusBuilder.append(" -- At position: ").append(state.getPosition());
    Log.d(TAG, statusBuilder.toString());

    if (enablePlay) {
        mPlayPause.setImageDrawable(
                getActivity().getResources().getDrawable(R.drawable.ic_play_arrow_white_24dp));
    } else {
        mPlayPause.setImageDrawable(getActivity().getResources().getDrawable(R.drawable.ic_pause_white_24dp));
    }

    mSkipPrevious.setEnabled((state.getActions() & PlaybackStateCompat.ACTION_SKIP_TO_PREVIOUS) != 0);
    mSkipNext.setEnabled((state.getActions() & PlaybackStateCompat.ACTION_SKIP_TO_NEXT) != 0);

    Log.d(TAG, "Queue From MediaController *** Title " + mMediaController.getQueueTitle() + "\n: Queue: "
            + mMediaController.getQueue() + "\n Metadata " + mMediaController.getMetadata());
}

From source file:nuclei.media.playback.ExoPlayerPlayback.java

private boolean isStatePlaying() {
    return isMediaPlayerPlaying() || mState == PlaybackStateCompat.STATE_PLAYING
            || mState == PlaybackStateCompat.STATE_BUFFERING || mState == PlaybackStateCompat.STATE_CONNECTING;
}

From source file:com.appdevper.mediaplayer.app.PlaybackManager.java

/**
 * Switch to a different Playback instance, maintaining all playback state, if possible.
 *
 * @param playback switch to this playback
 *//*ww  w. ja  va2  s.  co m*/
public void switchToPlayback(Playback playback, boolean resumePlaying) {
    if (playback == null) {
        throw new IllegalArgumentException("Playback cannot be null");
    }
    // suspend the current one.
    int oldState = mPlayback.getState();
    int pos = mPlayback.getCurrentStreamPosition();
    String currentMediaId = mPlayback.getCurrentMediaId();
    mPlayback.stop(false);
    playback.setCallback(this);
    playback.setCurrentStreamPosition(pos < 0 ? 0 : pos);
    playback.setCurrentMediaId(currentMediaId);
    playback.start();
    // finally swap the instance
    mPlayback = playback;
    switch (oldState) {
    case PlaybackStateCompat.STATE_BUFFERING:
    case PlaybackStateCompat.STATE_CONNECTING:
    case PlaybackStateCompat.STATE_PAUSED:
        mPlayback.pause();
        break;
    case PlaybackStateCompat.STATE_PLAYING:
        MediaSessionCompat.QueueItem currentMusic = mQueueManager.getCurrentMusic();
        if (resumePlaying && currentMusic != null) {
            mPlayback.play(currentMusic);
        } else if (!resumePlaying) {
            mPlayback.pause();
        } else {
            mPlayback.stop(true);
        }
        break;
    case PlaybackStateCompat.STATE_NONE:
        break;
    default:
        LogHelper.d(TAG, "Default called. Old state is ", oldState);
    }
}

From source file:com.murati.oszk.audiobook.playback.PlaybackManager.java

/**
 * Switch to a different Playback instance, maintaining all playback state, if possible.
 *
 * @param playback switch to this playback
 *//*  www.  j  a  va2 s  . c  o m*/
public void switchToPlayback(Playback playback, boolean resumePlaying) {
    if (playback == null) {
        throw new IllegalArgumentException("Playback cannot be null");
    }
    // Suspends current state.
    int oldState = mPlayback.getState();
    long pos = mPlayback.getCurrentStreamPosition();
    String currentMediaId = mPlayback.getCurrentMediaId();
    mPlayback.stop(false);
    playback.setCallback(this);
    playback.setCurrentMediaId(currentMediaId);
    playback.seekTo(pos < 0 ? 0 : pos);
    playback.start();
    // Swaps instance.
    mPlayback = playback;
    switch (oldState) {
    case PlaybackStateCompat.STATE_BUFFERING:
    case PlaybackStateCompat.STATE_CONNECTING:
    case PlaybackStateCompat.STATE_PAUSED:
        mPlayback.pause();
        break;
    case PlaybackStateCompat.STATE_PLAYING:
        MediaSessionCompat.QueueItem currentMusic = mQueueManager.getCurrentTrack();
        if (resumePlaying && currentMusic != null) {
            mPlayback.play(currentMusic);
        } else if (!resumePlaying) {
            mPlayback.pause();
        } else {
            mPlayback.stop(true);
        }
        break;
    case PlaybackStateCompat.STATE_NONE:
        break;
    default:
        LogHelper.d(TAG, "Default called. Old state is ", oldState);
    }
}

From source file:nuclei.media.playback.PlaybackManager.java

/**
 * Switch to a different Playback instance, maintaining all playback state, if possible.
 *
 * @param playback switch to this playback
 *//*ww w .  java 2s. co  m*/
public void switchToPlayback(Playback playback, boolean resumePlaying) {
    if (playback == null) {
        throw new IllegalArgumentException("Playback cannot be null");
    }
    playback.setSurface(mPlayback.getSurfaceId(), mPlayback.getSurface());
    // suspend the current one.
    final int oldState = mPlayback.getState();
    long pos = mPlayback.getCurrentStreamPosition();
    if (pos < 0)
        pos = mPlayback.getStartStreamPosition();
    mPlayback.stop(false);
    playback.setCallback(this);
    playback.setCurrentStreamPosition(pos);
    playback.setCurrentMediaMetadata(mPlayback.getCurrentMediaId(), mPlayback.getCurrentMetadata());
    playback.start();
    // finally swap the instance
    mPlayback = playback;
    switch (oldState) {
    case PlaybackStateCompat.STATE_BUFFERING:
    case PlaybackStateCompat.STATE_CONNECTING:
    case PlaybackStateCompat.STATE_PAUSED:
        mPlayback.pause();
        break;
    case PlaybackStateCompat.STATE_PLAYING:
        if (resumePlaying && mMediaMetadata != null) {
            mPlayback.play(mMediaMetadata);
        } else if (!resumePlaying) {
            mPlayback.pause();
        } else {
            mPlayback.stop(true);
        }
        break;
    case PlaybackStateCompat.STATE_NONE:
        break;
    default:

    }
}

From source file:com.scooter1556.sms.lib.android.service.AudioPlayerService.java

public void initialiseTrack(int position) {

    // Get settings
    final SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);

    // Get media element to play
    final MediaElement mediaElement = mediaElementList.get(position);

    if (mediaElement == null) {
        Toast error = Toast.makeText(getApplicationContext(), getString(R.string.error_media_playback),
                Toast.LENGTH_SHORT);//from www  .j  ava  2s  .  c om
        error.show();
        return;
    }

    // Initialise Stream
    restService.initialiseStream(getApplicationContext(), mediaElement.getID(), SUPPORTED_FILES,
            SUPPORTED_CODECS, null, null, Integer.parseInt(settings.getString("pref_audio_quality", "0")),
            MAX_SAMPLE_RATE, null, null, settings.getBoolean("pref_direct_play", false),
            new JsonHttpResponseHandler() {

                @Override
                public void onSuccess(int statusCode, cz.msebera.android.httpclient.Header[] headers,
                        JSONObject response) {
                    // Initialise player
                    player = new SMSAudioPlayer();

                    // Update state
                    mediaState = PlaybackStateCompat.STATE_CONNECTING;
                    updatePlaybackState();

                    // Parse profile
                    Gson parser = new Gson();
                    TranscodeProfile profile = parser.fromJson(response.toString(), TranscodeProfile.class);

                    // Setup Player
                    player.setID(mediaElement.getID());
                    player.setDuration(mediaElement.getDuration());
                    player.setTranscodeProfile(profile);
                    player.setQuality(Integer.parseInt(settings.getString("pref_audio_quality", "0")));

                    // Streaming status
                    if (profile.getType() == TranscodeProfile.StreamType.FILE) {
                        player.setStreaming(false);
                    } else {
                        player.setStreaming(true);
                    }

                    try {
                        preparePlayer();
                        isPaused = false;

                        // Update metadata
                        mediaSession.setMetadata(MediaUtils.getMediaMetadata(mediaElement, null));

                        // Attempt to get album art
                        Glide.with(getApplicationContext())
                                .load(RESTService.getInstance().getConnection().getUrl() + "/image/"
                                        + mediaElement.getID() + "/cover/300")
                                .asBitmap().into(new SimpleTarget<Bitmap>() {
                                    @Override
                                    public void onResourceReady(Bitmap image,
                                            GlideAnimation<? super Bitmap> glideAnimation) {
                                        // Update metadata with artwork
                                        mediaSession
                                                .setMetadata(MediaUtils.getMediaMetadata(mediaElement, image));
                                    }
                                });

                        // Update listeners
                        for (AudioPlayerListener listener : listeners) {
                            listener.PlaybackStateChanged();
                            listener.PlaylistPositionChanged();
                        }

                    } catch (Exception e) {
                        cleanupPlayer();
                    }
                }

                @Override
                public void onFailure(int statusCode, cz.msebera.android.httpclient.Header[] headers,
                        Throwable throwable, JSONObject response) {
                    error();
                }

                private void error() {
                    Toast error = Toast.makeText(getApplicationContext(),
                            getString(R.string.error_media_playback), Toast.LENGTH_SHORT);
                    error.show();

                    currentListPosition = 0;

                    // Update state
                    mediaState = PlaybackStateCompat.STATE_ERROR;
                    updatePlaybackState();

                    // Update listeners
                    for (AudioPlayerListener listener : listeners) {
                        listener.PlaybackStateChanged();
                        listener.PlaylistPositionChanged();
                    }
                }
            });
}

From source file:androidx.media.MediaUtils2.java

static int toPlayerState(int playbackStateCompatState) {
    switch (playbackStateCompatState) {
    case PlaybackStateCompat.STATE_ERROR:
        return MediaPlayerBase.PLAYER_STATE_ERROR;
    case PlaybackStateCompat.STATE_NONE:
        return MediaPlayerBase.PLAYER_STATE_IDLE;
    case PlaybackStateCompat.STATE_PAUSED:
    case PlaybackStateCompat.STATE_STOPPED:
    case PlaybackStateCompat.STATE_BUFFERING: // means paused for buffering.
        return MediaPlayerBase.PLAYER_STATE_PAUSED;
    case PlaybackStateCompat.STATE_FAST_FORWARDING:
    case PlaybackStateCompat.STATE_PLAYING:
    case PlaybackStateCompat.STATE_REWINDING:
    case PlaybackStateCompat.STATE_SKIPPING_TO_NEXT:
    case PlaybackStateCompat.STATE_SKIPPING_TO_PREVIOUS:
    case PlaybackStateCompat.STATE_SKIPPING_TO_QUEUE_ITEM:
    case PlaybackStateCompat.STATE_CONNECTING: // Note: there's no perfect match for this.
        return MediaPlayerBase.PLAYER_STATE_PLAYING;
    }//w ww.  j av a  2s  .  c o  m
    return MediaPlayerBase.PLAYER_STATE_ERROR;
}