การใช้ AVPlayer ส่งคืนข้อผิดพลาด“ การเชื่อมต่อที่ไม่ใช่มัลติพา ธ ”


14

ฉันใช้ AVKit เพื่อเล่น URL ของ YouTube

ฉันมีรหัสนี้ในการดำเนินการปุ่ม:

 @IBAction func trailerButtonAction(_ sender: Any) {
    guard let youtubeUrl = youtubeURL else { return }
    let player = AVPlayer(url: youtubeUrl)
    let playerViewController = AVPlayerViewController()
    playerViewController.player = player

    present(playerViewController, animated: true) {
        player.play()
    }
}

URL นั้นถูกต้อง แต่เมื่อฉันกดปุ่มวิดีโอจะไม่หยุดโหลดและฉันได้รับข้อความนี้ในส่วน Debug:

nw_endpoint_flow_copy_multipath_subflow_counts เรียกว่าการเชื่อมต่อที่ไม่ใช่ Multipath

แก้ไข:

ฉันพบว่า AVPlayer ไม่รองรับ URL ของ youtube


ฉันมีปัญหาเดียวกัน วิดีโอไม่ได้เล่นและฉันได้รับมันเป็นเอาต์พุต คุณสามารถแก้ไขได้หรือไม่
Matias Barrios

นี่คือปัญหาที่ฉันคิดว่า: developer.apple.com/documentation/foundation/…
Matias Barrios

โอเคฉันเข้าใจแล้ว มันเป็นปัญหาเครือข่าย ลองกับวิดีโอนี้: clips.vorwaerts-gmbh.de/big_buck_bunny.mp4
Matias Barrios

ตอนนี้Ιไม่ได้รับข้อผิดพลาดก่อนหน้า ฉันได้รับสิ่งนี้: NSURLConnection เสร็จสิ้นโดยมีข้อผิดพลาด - รหัส -1002
Alex Giatrakis

จากนั้นก็เชื่อมต่อของคุณอย่างแน่นอน คุณลองจากการเชื่อมต่ออื่นได้
Matias Barrios

คำตอบ:


5

ฉันจะบอกว่าบันทึกนี้ไม่จำเป็นต้องเกี่ยวข้อง ฉันได้รับข้อผิดพลาดนี้เมื่อพยายามเล่นบนเครื่องจำลอง แต่มันไม่ได้เกิดขึ้นบนอุปกรณ์จริง


1
ได้รับการยืนยัน กรณีนี้แก้ไขได้สำหรับฉัน
krlbsk

2

วิธีแก้ปัญหาหนึ่งวิธีคือการใช้โปรแกรมจำลอง 12.4.x เนื่องจากไม่ได้แสดงปัญหานี้ มีเพียงตัวจำลอง 13.x เท่านั้นที่แสดงข้อผิดพลาดนี้ มันเกิดขึ้นซ้ำ ๆ กันว่ามันช้าลง Simulator เพื่อรวบรวมข้อมูลจนกว่าเพลงที่ร้องขอทั้งหมดได้รับการบัฟเฟอร์

เพื่อต่อสู้กับสิ่งนี้ในระหว่างการทดสอบฉันไม่ได้เปิดใช้งานAVPlayerหรือฉันแค่บัฟเฟอร์สั้น ๆ

หากต้องการลดจำนวนข้อผิดพลาดให้ลองดำเนินการAVPlayerดังนี้:

var avPlayer : AVPlayer = AVPlayer()

สิ่งนี้อาจลดข้อผิดพลาดลง 30%

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.