Play/Forward video in 2x 3x 4x speed - iPhone SDK

后端 未结 2 1914
臣服心动
臣服心动 2020-12-10 22:10

I want to play/forward video in MPMoviePlayerController with different speeds. Can any one suggest me how i do this.

Right now i am doing fast forward (On single spe

相关标签:
2条回答
  • 2020-12-10 22:15

    Here is a code to Forward and BackWard Movie as 2x 3x 4x speed for MPMoviePlayerViewController

    In .h File

    @property(nonatomic) float currentPlaybackRate;
    

    In .m File

    - (void)viewDidLoad
    {
        currentPlaybackRate=1.0; //video Play in Normal speed
    }
    

    Now on FastForward and FastBackward Button Action

    [fastForward addTarget:self action:@selector(fastForward) forControlEvents:UIControlEventTouchUpInside];
    
    [fastBackWard addTarget:self action:@selector(fastBackward) forControlEvents:UIControlEventTouchUpInside];
    

    Action Code

    -(void)fastForward
    {
        [mp.moviePlayer pause];
        playPauseButton.selected=TRUE;
        if (currentPlaybackRate < 0.0) {
            currentPlaybackRate = 1.0;
        }
    
        if (currentPlaybackRate < 4.0) {
            currentPlaybackRate=currentPlaybackRate+1.0;
            NSLog(@"Forward::%f",currentPlaybackRate);
            mp.moviePlayer.currentPlaybackRate=currentPlaybackRate;
        }
    }
    -(void)fastBackward
    {
        [mp.moviePlayer pause];
        playPauseButton.selected=TRUE;
    
        if (currentPlaybackRate > 0.0) {
            currentPlaybackRate = 0.0;
        }
    
    
        if (currentPlaybackRate > -4.0) {
            currentPlaybackRate=currentPlaybackRate-1.0;
            NSLog(@"BackWard::%f",currentPlaybackRate);
            mp.moviePlayer.currentPlaybackRate=currentPlaybackRate;
        }
    }
    
    0 讨论(0)
  • 2020-12-10 22:39
    MPMoviePlayerController Conforms to MPMediaPlayback protocol 
    you can see the property currentPlaybackRate as :-
    @property(nonatomic) float currentPlaybackRate 
    A value of 0 represents that the video is stopped , a value of 1 indicates normal speed and further positive values indicate increased speed while negative ones indicate reverse .
    

    Also check your endseeking delegate method of MPMediaPlayback as it is the only method that reverts the playback to normal

    0 讨论(0)
提交回复
热议问题