SpriteKit を使用してビデオを再生しています。これは、AVPlayer から SKVideoNode を作成するコードです。
func CreateVideoViewWithAVPlayer(player:AVPlayer)
{
video = SKVideoNode(AVPlayer: player)
let frameLayer=AVPlayerLayer(player: player)
//video?. = CGRectMake(0, 0, 100, 100)
video?.size = CGSize(width: 1024, height: 768)
println(player.currentItem)
video?.anchorPoint = CGPoint(x: 0, y: 0)
video?.position = CGPoint(x: 0, y: 0)
backgroundColor = SKColor.blackColor()
self.addChild(video!)
}
そして、関数を与える AVPlayer を作成します。
let scene01 = GameScene(size: view.bounds.size)
scene01.CreateVideoViewWithAVPlayer(player!)
しかし、これを「player.play()」と呼ぶと、最初のフレームを表示するだけで、それ以上は表示されません。しかし、「CreateVideoViewWithAVPlayer」関数で「ビデオ」を使用すると、再生できます。
別: このコードを使用する場合"
skView.presentScene(scene01)
//self.view.addSubview(skView)
(コメント2回目) そしてユーザー「player.play()」で再生できます(音は聞こえます)。しかし、これを使用すると:
skView.presentScene(scene01)
self.view.addSubview(skView)
また、最初のフレームが表示されます。もう実行できません。
私が間違っていることはありますか?助けて!どうもありがとう。