我使用MPMoviePlayerController
播放 avi 格式的视频文件。
音频有效,但视频没有。那是为什么?
答案 0 :(得分:2)
MPMoviePlayerViewController
仅支持 .mov,.mp4,.mpv和.3gp ,已弃用。
来自Apple的documentation:
MPMoviePlayerViewController类在iOS 9中已正式弃用。 (MPMoviePlayerController类也正式弃用。)To 在iOS 9及更高版本中播放视频内容,而不是使用 AVPictureInPictureController或AVPlayerViewController类来自 AVKit框架,或WebKit的WKWebView类。
您应该使用 AVPlayerViewController :
import AVFoundation
import AVKit
let videoPath = "https://video.avi"
let videoURL = URL(string: videoPath)
let player = AVPlayer(url: videoURL!)
let playerViewController = AVPlayerViewController()
playerViewController.player = player
present(playerViewController, animated: true) {
playerViewController.player?.play()
}
或者只是将 AVPlayer 添加为子视图:
let videoURL = URL(string: videoPath)
let player = AVPlayer(url: videoURL!)
let playerLayer = AVPlayerLayer(player: player)
playerLayer.frame = self.view.bounds
view.layer.addSublayer(playerLayer)
player.play()
它支持以下音频/视频格式: .mpeg,.mpeg-2-video,.avi,.aifc-audio,.aac-audio,.mpeg-4,.au-audio,.aiff-audio,.mp2,.3gpp2,.ac3-audio ,. mp3,.mpeg-2-transport-stream,.3gpp,.mpeg-4-audio
答案 1 :(得分:0)
我认为你不能在ios中使用MPMoviePlayerController播放.avi文件。
由于.avi格式内容无法解码iOS设备上的视频。