tvOS:AVPlayer音频播放,但没有视频

时间:2016-07-21 20:55:42

标签: swift video-streaming audio-streaming tvos apple-tv

我将此代码作为tvOS应用程序的一部分

import Foundation
import UIKit
import AVFoundation
import AVKit


class videoPlayer: UIViewController {

    var thePlayer: AVPlayer?
    var movieToPlay: AVPlayerItem?
    let movieURL="http://trailers.apple.com/movies/independent/walkingwiththeenemy/walkingwiththeenemy-tlr1_720p.mov"

    override func viewDidLoad(){
        let theVideoPlayer = AVPlayerViewController()
        theVideoPlayer.player = thePlayer
        self.addChildViewController(theVideoPlayer)
        self.view.addSubview(theVideoPlayer.view)
        theVideoPlayer.view.frame = self.view.frame
        let movieToPlay = AVPlayerItem(URL: NSURL(string: movieURL)!)
        thePlayer = AVPlayer(playerItem: movieToPlay)
        self.thePlayer!.play()
    }
}

加载视图时,代码会播放音频但不播放视频。

当一个人滑动Apple TV遥控器时,会出现一个时间轴,右侧为0:00,播放音频时为左侧0:00。在时间轴的左端还有一个红色禁烟标志。我的理解是该符号表示视频格式错误,但音频播放(剪辑来自Apple)。视频播放在其他AppleTV应用中播放。

我认为代码是正确的(它可以在另一个应用程序中运行),我无法确定下一步调试。谁能看到错误?

1 个答案:

答案 0 :(得分:0)

当我将它放在一个单独的viewController中然后从已经驻留的viewController中呈现它时,上面的代码就像预期的那样工作。我完全不明白为什么,但它解决了带有音频问题的视频问题。