2012-05-16 3 views
5

내 응용 프로그램에서 seekToTime을 사용하고 제대로 작동했습니다. 하지만 그것에 대해 더 많은 정보를 갖고 싶습니다. 즉, 1 분짜리 스트리밍 비디오 파일이있는 경우 두 번째 15 분에서 두 번째 45 분 (처음 15 초, 마지막 15 초는 재생되지 않음)부터 재생하고 싶습니다.AVPlayer seektoTime iPhone

어떻게하면됩니까?

seekToTime을 사용하여 15 초에 동영상을 재생할 수 있지만 45 초에 동영상을 재생하는 방법과 동영상이 지정된 시간 동안 재생 한 방법에 주목할 수 있음을 알고 있습니다.

CMTime timer = CMTimeMake(15, 1); 
[player seekToTime:timer]; 

위의 코드는 스트리밍 파일의 15 번째 초까지 걸리지 만 45 초에 중지하고 알림을받는 방법은 무엇입니까?

나는 많은 것을 수색했지만 어떤 정보도 얻을 수 없었다.

감사

편집 :

@codeghost가 제안한 것처럼, 단순히 forwardPlaybackEndTime를 사용합니다.

당신은 간단하게 사용할 수 있습니다

yourAVPlayerItem.forwardPlaybackEndTime = CMTimeMake(10, 1); 
여기

(10)는 재생됩니다 AVPlayerItem까지의 시간입니다.

+0

forwardPlaybackEndTime이 효과가 있습니까? – onmyway133

+0

네, 일부 논리를 구현했다, 내 요구 사항 당 작업을 시작 –

+0

내 질문에 좀 걸릴 수 http://stackoverflow.com/questions/25717819/forwardplaybackendtime-does-not-work? 플레이어는 여전히 끝까지 재생합니다 – onmyway133

답변

7

AVPlayerItem에 forwardPlaybackEndTime 속성을 설정하십시오.

+0

코드 호크, 감사합니다. 내 코드에서 어떻게 사용할 수 있습니까? 예를 들어 참조 링크가 있습니까?/자습서는 forwardPlaybackEndTime과 관련이 있습니다. –

+2

Xcode에서 재생 시스템 GUID를 확인하십시오. do가 설정됩니다. "playerItem.forwardPlaybackEndTime = CMTimeMake (45, 1);". AVPlayerItem으로 AVQueuePlayer를 생성하고 현재대로 플레이하십시오. – codeghost

+0

감사합니다 형제 :) 내 하루를 저장했습니다 –

0

내가 AVPlayer이 뭔가 빌드 - 거기에 있는지 알고,하지만 난 할 것이다 것은 기능을 구축하고 그것을 호출하지 않습니다

[self performSelector:@selector(stopPlaying) withObject:nil afterDelay:45]; 


-(void)stopPlaying{ 
    [player pause]; 
} 

이 45초 후 재생을 중지합니다, 물론 원하는 초 수를 45 초로 지정할 수 있습니다.

+0

당신이 바로 주위에 플레이어를 중지하는 방법이지만, codeghost 제안 forwardPlaybackEndTime, 내가 그것을 찾고 있어요 코드에서 사용하지만 지금까지는 코드 스 니펫이나 예제가 없습니다. Apple의 설명서는 AVFoundation과 관련하여 열악합니다. 이해하기 너무 어렵다. –

0

[AVPlayer addPeriodicTimeObserverForInterval:queue:usingBlock:]을 사용할 수 있습니다.

주기적으로 AVPlayer.currentTime을 가져오고 정확한 시간에 일시 중지 또는 중지를 호출하십시오.

관련 문제