使用MPMoviePlayerController流式传输.m3u8不起作用

时间:2015-06-05 15:57:01

标签: swift video-streaming mpmovieplayercontroller

我使用how to play a local video中的示例并尝试修改以便在.m3u8文件上使用。我无法使它工作。我得到一个空白的屏幕。我通过在VLC上测试确认该文件没问题。任何帮助将不胜感激。

以下是代码:

import UIKit
import MediaPlayer

class ViewController: UIViewController {
var moviePlayer : MPMoviePlayerController?
override func viewDidLoad() {
    super.viewDidLoad()
    playVideo()

    // Do any additional setup after loading the view.
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

private func playVideo() {
    let path = "http://qthttp.apple.com.edgesuite.net/1010qwoeiuryfg/sl.m3u8"
    if let
        //path = NSBundle.mainBundle().pathForResource("movie", ofType:"m4v"),

        url = NSURL(fileURLWithPath: path),
        moviePlayer = MPMoviePlayerController(contentURL: url) {
            self.moviePlayer = moviePlayer
            moviePlayer.view.frame = self.view.bounds
            moviePlayer.prepareToPlay()
            moviePlayer.scalingMode = .AspectFill
            self.view.addSubview(moviePlayer.view)
    } else {
        debugPrintln("Ops, something wrong when playing .m3u8 file")
    }
}

}

1 个答案:

答案 0 :(得分:2)

您已正确指定了自己的网址。将其更改为:

url = NSURL(string:path)