admin
2020-07-14 7af22bf20c862c8ab2270cfeef8f3530f174ac9f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package com.wpc.library.videocomponents;
 
import android.support.v4.media.TransportMediator;
import android.support.v4.media.TransportPerformer;
import android.widget.VideoView;
 
public class SimpleTransportPerformer extends TransportPerformer {
 
    private VideoView mVideoView;
    
    public SimpleTransportPerformer(VideoView videoView) {
        super();
        this.mVideoView = videoView;
    }
 
    @Override
    public void onStart() {
        mVideoView.start();
    }
 
    @Override
    public void onStop() {
        mVideoView.pause();
    }
 
    @Override
    public void onPause() {
        mVideoView.pause();
    }
 
    @Override
    public long onGetDuration() {
        return mVideoView.getDuration();
    }
 
    @Override
    public long onGetCurrentPosition() {
        return mVideoView.getCurrentPosition();
    }
 
    @Override
    public void onSeekTo(long pos) {
        mVideoView.seekTo((int) pos);
    }
 
    @Override
    public boolean onIsPlaying() {
        return mVideoView.isPlaying();
    }
 
    @Override
    public int onGetBufferPercentage() {
        return mVideoView.getBufferPercentage();
    }
 
    @Override
    public int onGetTransportControlFlags() {
        int flags = TransportMediator.FLAG_KEY_MEDIA_PLAY
                | TransportMediator.FLAG_KEY_MEDIA_PLAY_PAUSE
                | TransportMediator.FLAG_KEY_MEDIA_STOP;
        if (mVideoView.canPause()) {
            flags |= TransportMediator.FLAG_KEY_MEDIA_PAUSE;
        }
        if (mVideoView.canSeekBackward()) {
            flags |= TransportMediator.FLAG_KEY_MEDIA_REWIND;
        }
        if (mVideoView.canSeekForward()) {
            flags |= TransportMediator.FLAG_KEY_MEDIA_FAST_FORWARD;
        }
        return flags;
    }
}