Syed Tariq
Syed Tariq

Reputation: 2918

Streaming .m3u8 using MPMoviePlayerController does not work

I used the example in how to play a local video and tried to modify for use on .m3u8 file. I am unable to make it work. I get a blank screen. I confirmed that the file was ok by testing on VLC. Any help would be appreciated.

Here is the code:

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")
    }
}

}

Upvotes: 0

Views: 3549

Answers (1)

cbiggin
cbiggin

Reputation: 2142

You've specified your url incorrectly. Change it to this:

url = NSURL(string:path)

Upvotes: 2

Related Questions