компании Apple Swift версия 3.0.2 (swiftlang-800.0.63 лязг-800.0.42.1)Как воспроизвести видео с помощью AVPlayer?
Я хотел бы играть видео из Интернета с помощью AVPlayer. Но произошла ошибка «super.init (frame: frame)» в AVPlayer.swift ниже списка источников.
Как я могу играть видео с помощью AVPlayer? Если есть неправильная точка, кроме ошибки, сообщите мне об этом.
AVPlayerView.swift
import Foundation
import UIKit
final class AVPlayerView : UIView {
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)!
}
override init(frame: CGRect) {
super.init(frame: frame)
}
override public class var layerClass: Swift.AnyClass {
get {
return AVPlayerView.self
}
}
}
ViewController.swift
import UIKit
import AVFoundation
import CoreMedia
class ViewController: UIViewController {
var playerItem : AVPlayerItem!
var videoPlayer : AVPlayer!
override func viewDidLoad() {
super.viewDidLoad()
let url:NSURL = NSURL(string: "https://aaa.com/test.m3u8")!
let avAsset = AVURLAsset(url: url as URL, options: nil)
playerItem = AVPlayerItem(asset: avAsset)
videoPlayer = AVPlayer(playerItem: playerItem)
print(self.view.bounds)
let videoPlayerView = AVPlayerView(frame: self.view.bounds)
let layer = videoPlayerView.layer as! AVPlayerLayer
layer.videoGravity = AVLayerVideoGravityResizeAspect
layer.player = videoPlayer
self.view.layer.addSublayer(layer)
videoPlayer.play()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Поддерживает ли AVPlayer http потоковое вещание m3u8? HLS включает ts-файл H.264 и aac. – Ubunkun
Я просто проверяю ваш URL, но его не работает. – Nirmalsinh
Да, URL-адрес изменен. URL-адрес браузера iPhone может воспроизводиться. – Ubunkun