视频播放,第一帧抽图异步

This commit is contained in:
liujing
2020-11-25 21:31:00 +08:00
parent 25d8962a05
commit 9a30630f81

View File

@@ -25,6 +25,7 @@ import com.shuyu.gsyvideoplayer.utils.GSYVideoType;
import com.shuyu.gsyvideoplayer.video.base.GSYVideoView;
import java.util.ArrayList;
import static com.shuyu.gsyvideoplayer.utils.GSYVideoType.SCREEN_MATCH_FULL;
/**
@@ -72,7 +73,6 @@ public class V2XRoadVideoWindow extends RelativeLayout implements
thumbnailImage = this.findViewById(R.id.thumbnail_image);
simpleCoverVideoPlayer = this.findViewById(R.id.roadVideoView);
GSYVideoType.setShowType(SCREEN_MATCH_FULL);
gsyVideoOptionBuilder.setCacheWithPlay(false);
closeImage = this.findViewById(R.id.roadVideoClose);
closeImage.setOnClickListener(v -> {
close();
@@ -152,106 +152,109 @@ public class V2XRoadVideoWindow extends RelativeLayout implements
}
if (path.contains(".mp4")) {
startPlayWithVideoUrl(path);
Bitmap firstBitmap = BitmapHelper.getVideoThumbnail(path);/*获取第一帧图*/
simpleCoverVideoPlayer.setVideoAllCallBack(new VideoAllCallBack() {
new Thread(new Runnable() {
@Override
public void onAutoComplete(String url, Object... objects) {
complete(firstBitmap, path);
}
public void run() {
Bitmap firstBitmap = BitmapHelper.getVideoThumbnail(path);/*获取第一帧图*/
simpleCoverVideoPlayer.setVideoAllCallBack(new VideoAllCallBack() {
@Override
public void onAutoComplete(String url, Object... objects) {
complete(firstBitmap, path);
}
@Override
public void onClickResume(String url, Object... objects) {
thumbnailImage.setVisibility(View.GONE);
playImageView.setVisibility(View.GONE);
}
@Override
public void onClickResume(String url, Object... objects) {
thumbnailImage.setVisibility(View.GONE);
playImageView.setVisibility(View.GONE);
}
@Override
public void onClickStop(String url, Object... objects) {
Log.d(TAG, "onClickStop");
}
@Override
public void onClickStop(String url, Object... objects) {
Log.d(TAG, "onClickStop");
}
@Override
public void onStartPrepared(String url, Object... objects) {
Log.d(TAG, "onStartPrepared");
}
@Override
public void onStartPrepared(String url, Object... objects) {
Log.d(TAG, "onStartPrepared");
}
@Override
public void onPrepared(String url, Object... objects) {
}
@Override
public void onPrepared(String url, Object... objects) {
}
@Override
public void onClickStartIcon(String url, Object... objects) {
}
@Override
public void onClickStartIcon(String url, Object... objects) {
}
@Override
public void onClickStartError(String url, Object... objects) {
}
@Override
public void onClickStartError(String url, Object... objects) {
}
@Override
public void onClickStopFullscreen(String url, Object... objects) {
}
@Override
public void onClickStopFullscreen(String url, Object... objects) {
}
@Override
public void onClickResumeFullscreen(String url, Object... objects) {
}
@Override
public void onClickResumeFullscreen(String url, Object... objects) {
}
@Override
public void onClickSeekbar(String url, Object... objects) {
}
@Override
public void onClickSeekbar(String url, Object... objects) {
}
@Override
public void onClickSeekbarFullscreen(String url, Object... objects) {
}
@Override
public void onClickSeekbarFullscreen(String url, Object... objects) {
}
@Override
public void onEnterFullscreen(String url, Object... objects) {
}
@Override
public void onEnterFullscreen(String url, Object... objects) {
}
@Override
public void onQuitFullscreen(String url, Object... objects) {
}
@Override
public void onQuitFullscreen(String url, Object... objects) {
}
@Override
public void onQuitSmallWidget(String url, Object... objects) {
}
@Override
public void onQuitSmallWidget(String url, Object... objects) {
}
@Override
public void onEnterSmallWidget(String url, Object... objects) {
}
@Override
public void onEnterSmallWidget(String url, Object... objects) {
}
@Override
public void onTouchScreenSeekVolume(String url, Object... objects) {
}
@Override
public void onTouchScreenSeekVolume(String url, Object... objects) {
}
@Override
public void onTouchScreenSeekPosition(String url, Object... objects) {
}
@Override
public void onTouchScreenSeekPosition(String url, Object... objects) {
}
@Override
public void onTouchScreenSeekLight(String url, Object... objects) {
}
@Override
public void onTouchScreenSeekLight(String url, Object... objects) {
}
@Override
public void onPlayError(String url, Object... objects) {
}
@Override
public void onPlayError(String url, Object... objects) {
}
@Override
public void onClickStartThumb(String url, Object... objects) {
}
@Override
public void onClickStartThumb(String url, Object... objects) {
}
@Override
public void onClickBlank(String url, Object... objects) {
}
@Override
public void onClickBlank(String url, Object... objects) {
}
@Override
public void onClickBlankFullscreen(String url, Object... objects) {
Log.d(TAG, "onClickBlankFullscreen");
@Override
public void onClickBlankFullscreen(String url, Object... objects) {
Log.d(TAG, "onClickBlankFullscreen");
}
});
}
});
}).start();
}
}
}