我正在使用avplayer播放音频网址,但它无法正常工作,我不知道我错在哪里
NSString *radioURL = @"https://www.example.com";
radioPlayer = [AVPlayer playerWithURL:[NSURL URLWithString:radioURL]] ;
// [radioPlayer seekToTime:kCMTimeZero];
NSLog(@"radio player %@",radioPlayer.currentItem);
[radioPlayer play];
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
我有麻烦了。我想在我的应用程序中播放远程 mp3 文件。但是 mp3 文件需要很长时间(大约 5-6 分钟)才能播放。为什么 ?
任何人都可以建议我该怎么办?
import UIKit
import AVFoundation
class TestViewController: UIViewController, AVAudioPlayerDelegate {
var player:AVAudioPlayer = AVAudioPlayer()
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func play(sender: AnyObject) {
let url = "http://www.example.com/song.mp3"
let fileURL = NSURL(string: url.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet()))
let soundData = NSData.dataWithContentsOfURL(fileURL, options: nil, error: nil)
var error: NSError?
self.player = AVAudioPlayer(data: soundData, error: &error)
if player == nil
{
if let e = error
{
println(e.localizedDescription)
}
}
player.volume = 1.0
player.delegate = self
player.prepareToPlay() …Run Code Online (Sandbox Code Playgroud) 我正在尝试让AVPlayer播放作为本地文件的m3u8播放列表。
我已经使用苹果的示例播放列表之一将其缩小为一个简单的测试用例:
https://tungsten.aaplimg.com/VOD/bipbop_adv_fmp4_example/master.m3u8
Run Code Online (Sandbox Code Playgroud)
如果我从远程URL播放此播放列表,则AVPlayer会播放得很好。但是,如果我将此播放列表下载到本地文件,然后将本地文件URL交给AVPlayer,则AVPlayer将不会播放它。它只是显示划掉的比赛符号。
有趣的是,这也可以与Safari复制。Safari将播放远程播放列表,但不播放本地文件。还要注意的是,AVPlayer的这种行为在iOS 10.2和macOS 10.12.1上是相同的。另外,直接播放mp4媒体文件(未包装在播放列表中)似乎也没有此问题,因为它既可以从远程URL播放,也可以从本地文件播放。
检查AVPlayerItem.error不会导致任何有用的事情:
An unknown error occurred (-12865)
The operation could not be completed
Run Code Online (Sandbox Code Playgroud)
有谁知道AVPlayer无法播放本地播放列表的任何限制?
谢谢。