public void setMediaPlayer(LibVLC libVLC) { mMediaPlayer = new MediaPlayer(libVLC); }
@Override public void onClick(View view) { if (mMediaPlayer.isPlaying()) { mMediaPlayer.pause(); vlcButtonPlayPause.setImageDrawable(getResources().getDrawable(R.drawable.ic_action_play_over_video)); } else { mMediaPlayer.play(); vlcButtonPlayPause.setImageDrawable(getResources().getDrawable(R.drawable.ic_action_pause_over_video)); } } });
public void onDestory() { if (mMediaPlayer != null) { if (!mMediaPlayer.isReleased()) { mMediaPlayer.release(); mMediaPlayer = null; } } }
player = new MediaPlayer(vlcInstance); player.setMedia(media); player.setEventListener(this); IVLCVout vlcOut = player.getVLCVout(); player.setVideoTrackEnabled(true); player.play();
private void initData() { playUrl = getIntent().getStringExtra(PLAY_URL); if (TextUtils.isEmpty(playUrl)){ finish(); return; } ArrayList<String> options = new ArrayList<>(); libVLC = new LibVLC(getApplication(), options); mediaPlayer = new MediaPlayer(libVLC); mSurfaceHolder = mPlayView.getHolder(); // mSurfaceHolder.setFixedSize(1080, 1920); mSurfaceHolder.setFixedSize(Constant.VIDEO_WIDTH, Constant.VIDEO_HEIGHT); mSurfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); mediaPlayer.getVLCVout().setVideoSurface(mPlayView.getHolder().getSurface(), mSurfaceHolder); mediaPlayer.getVLCVout().attachViews(); Media media = new Media(libVLC, Uri.parse(playUrl)); mediaPlayer.setMedia(media); mediaPlayer.play(); }
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); libVLC = VLCInstance.get(getContext()); mediaPlayer = new MediaPlayer(libVLC); Media media = new Media(libVLC, Uri.parse(path)); media.setHWDecoderEnabled(false, false); media.parseAsync(Media.Parse.FetchNetwork, 10 * 1000); mediaPlayer.setMedia(media); mediaPlayer.setEventListener(new MediaPlayer.EventListener() { @Override public void onEvent(MediaPlayer.Event event) { switch (event.type) { case MediaPlayer.Event.Opening: Log.i(tag, "Event Opening"); break; case MediaPlayer.Event.Buffering: Log.i(tag, "Event Buffering=" + event.getBuffering()); break; case MediaPlayer.Event.Stopped: Log.i(tag, "Event Stopped"); break; } } }); mediaPlayer.getVLCVout().addCallback(this); }
mMediaPlayer = getMediaPlayer(mContext); } else { mMediaPlayer = new MediaPlayer(VLCInstance.get(mContext)); if (!isAttachSurface && mMediaPlayer.getVLCVout().areViewsAttached()) { mMediaPlayer.getVLCVout().detachViews(); if (!mMediaPlayer.getVLCVout().areViewsAttached() && isAttached && surface != null) { isAttachSurface = true; mMediaPlayer.getVLCVout().setVideoSurface(surface); mMediaPlayer.getVLCVout().attachViews(); mMediaPlayer.getVLCVout().addCallback(this); Logger.i(tag, "setVideoSurface attachViews"); mMediaPlayer.setEventListener(new MediaPlayer.EventListener() { @Override public void onEvent(MediaPlayer.Event event) { Logger.i(tag, "isAttached=" + isAttached + " isInitStart=" + isInitStart); if (isAttached && isInitStart && isAttachSurface) { mMediaPlayer.play();
mMediaPlayer = new MediaPlayer(media); mMediaPlayer.setEventListener(new MediaPlayer.EventListener() { @Override public void onEvent(MediaPlayer.Event event) {
public void setDataSource(String path) throws IOException, IllegalArgumentException, SecurityException, IllegalStateException { mCurrentMedia = new Media(mLibVLC, path); mMediaPlayer.setMedia(mCurrentMedia); }
@Override public void start() { mMediaPlayer.getVLCVout().addCallback(this); mMediaPlayer.getVLCVout().setVideoView(this); if(mSubtitlesView != null) { mMediaPlayer.getVLCVout().setSubtitlesView(mSubtitlesView); } if(mTimedTextPath != null) { mTimedTextProcessor.start(mTimedTextPath); } else if(mTimedTextUri != null) { mTimedTextProcessor.start(mTimedTextUri); } mMediaPlayer.getVLCVout().attachViews(); mMediaPlayer.setEventListener(this); mMediaPlayer.play(); }
/** * Set the enabled state of the video track * * @param enabled */ public void setVideoTrackEnabled(boolean enabled) { if (!enabled) { setVideoTrack(-1); } else if (getVideoTrack() == -1) { final TrackDescription tracks[] = getVideoTracks(); if (tracks != null) { for (TrackDescription track : tracks) { if (track.id != -1) { setVideoTrack(track.id); /* HACK: flush when activating a video track. This will force an * I-Frame to be displayed right away. */ if (isSeekable()) { long time = getTime(); if (time > 0) setTime(time); } break; } } } } }
@Override protected void onResume() { super.onResume(); if (mediaPlayer != null) { mediaPlayer.play(); } }
@Override public void onSurfaceTextureAvailable(SurfaceTexture surface, int width, int height) { mediaPlayer.getVLCVout().setVideoSurface(surface); mediaPlayer.getVLCVout().attachViews(); mediaPlayer.play(); }
public void play(String endPoint) { if (player == null || player.isReleased()) { setMedia(new Media(vlcInstance, Uri.parse(endPoint))); } else if (!player.isPlaying()) { player.play(); } }
@Override public boolean onSurfaceTextureDestroyed(SurfaceTexture surface) { mediaPlayer.getVLCVout().detachViews(); mediaPlayer.stop(); return false; }
public void pause() throws IllegalStateException { mMediaPlayer.pause(); }