Частота кадров SKVideoNode

По сути, SKVideoNode не будет учитывать скорость AVPlayer.

По умолчанию SKVideoNode не может контролировать скорость воспроизведения. Тем не менее, SKVideoNode может быть инициализирован с помощью AVPlayer (который сам содержит AVPlayerItem). Этот AVPlayer имеет показатель свойств, который может варьироваться от 0 до 2 (1 - нормальная скорость). Существует также метод setRate:time:atHostTime:.

Так что ставка не работает. У вас была такая же проблема? Если нет способа решить эту проблему? Есть ли другой способ воспроизвести видео и изменить частоту кадров в SKScene?

func setupVideo() {
    // play video
    let urlStr = NSBundle.mainBundle().pathForResource("sample", ofType: "mp4")
    let url = NSURL(fileURLWithPath: urlStr!)

    player = AVPlayer(URL: url)

    videoNode = SKVideoNode(AVPlayer: player!)
    videoNode?.position = CGPointMake(frame.size.width/2, frame.size.height/2)
    videoNode?.size = CGSize(width: frame.size.width, height: frame.size.height)
    videoNode?.zPosition = 1
    addChild(videoNode!)

    player!.rate = 0.25
    videoNode!.play()


}

Неважно, где я добавлю игрока!.Rate = 0,25, это никогда не изменится.

1 ответ

- ОБНОВЛЕНИЕ Это была проблема Apple API, она была исправлена ​​в версии iOS 10.

Другие вопросы по тегам