Остановка AVPlayer на iOS - PullRequest
       8

Остановка AVPlayer на iOS

6 голосов
/ 16 декабря 2010

Я использую AVPlayer для воспроизведения прямой трансляции из Интернета. AVPlayer может быть приостановлен, но при возобновлении он начинается с момента его приостановки, точно так же, как TiVO. AVPlayer не имеет метода остановки.

Как можно продолжить с вещанием, которое транслируется в данный момент (как будто вы выключили и снова включили автомобильный радиоприемник)?

Ответы [ 4 ]

1 голос
/ 04 августа 2016

Чтобы остановить AVPlayer:

[player replaceCurrentItemWithPlayerItem:nil];

Это высвободит всю память и ресурсы процессора, которые он использует, и связанный с ним ресурс. Просто как тот.

1 голос
/ 19 марта 2011

-(void)seekToTime:(CMTime)time

используйте этот метод, чтобы перейти к началу файла

0 голосов
/ 20 сентября 2015
 [player pause];
[item_ removeObserver:self forKeyPath:@"status" context:nil];
[item_ removeObserver:self forKeyPath:@"playbackBufferEmpty" context:nil];
[item_ removeObserver:self forKeyPath:@"playbackLikelyToKeepUp" context:nil];
[item_ removeObserver:self forKeyPath:@"timedMetadata" context:nil];
 player=nil;
0 голосов
/ 30 апреля 2014

SeekToTime не остановит звук, поэтому, как только вы дойдете до конца, если вызовете только seekToTime, он просто начнет воспроизводиться снова как цикл Вы можете использовать приведенную ниже версию с обратным вызовом, чтобы приостановить видео / аудио, как только поиск будет завершен, поэтому он сбрасывается и останавливается одновременно.

[_player seekToTime:CMTimeMake(0, 1) completionHandler:^(BOOL finished) {
    [_player pause];
}];
...