2014-02-18 3 views
3

가 어떻게 AVPlayerLayer 표시 방법 seekToTime에서 정확한 비디오의 프레임을 만들 수 있습니다 프레임 생성합니다.AVPlayer를 seekToTime은 매 초

이제 [AVPlayer seekToTime:CMTimeMakeWithSeconds(CMTimeGetSeconds(A, B))] 인 경우 AVPlayerLayer은 1 초 단위로 변경 될 때만 프레임을 표시합니다 (예 : 1.50-2.50-3.50). 예를 들어 프레임을 4.45 초로 표시하고 싶습니다. 가능한가?

답변

7

당신은 더 높은 정밀도 임의 미디어 액세스를 얻을 수 [AVPlayer seekToTime: toleranceBefore: toleranceAfter:]를 사용할 수 있습니다.
은 가능한 가장 높은 정밀도를 얻을 모두 허용 오차에 대한 인수로 kCMTimeZero을 전달합니다. 이것은 탐색하는 동안 눈에 띄는 지연을 추가 할 수 있습니다.

+0

앞으로 비디오하지만 이전 버전에 대한 지연이 없습니다. 어떻게 방지합니까? –

+1

할 수 없습니다. 정밀도가 높을수록 더 많은 합성 작업이 필요합니다. seekToTime : 메서드는 완료 핸들러를 사용하는 변형도 제공합니다. 완료 핸들러를 사용하여 앱 응답 속도를 향상시킬 수 있습니다. 이러한 방법은 이전 탐색 요청이 취소되는 장점이 있습니다. https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVPlayer_Class/Chapters/Reference.html#//apple_ref/occ/instm/AVPlayer/seekToTime:toleranceBefore:toleranceAfter:completionHandler : –

+0

예! 인스 타 그램 (Instagram)과 포토 앱 (Photo App)을 내장하여 비디오 리와인드를 부드럽게하는 방법을 알고 계신가요? –

관련 문제