Воспроизведение видео Vimeo с использованием HCVimeoVideoExtractor, невозможно получить URL видео с заданным качеством c - PullRequest
0 голосов
/ 16 февраля 2020

Я использую эту библиотеку https://github.com/superm0/HCVimeoVideoExtractor для воспроизведения Vimeo URL. Он работает нормально, но изменение качества не возвращает videoURL для некоторых видео. Я говорю об этой строке

if let videoURL = vid.videoURL[.Quality1080p] 

Я не могу понять, почему он не возвращает videoURL для видео, когда я передаю Quality1080p? Как это исправить? Что-то не так с моими видео? Нужно ли конвертировать все видео в одинаковое качество и затем загружать их на Vimeo?

Ниже приведен мой код:

import UIKit
import HCVimeoVideoExtractor
import AVKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

    }

    @IBAction func playClicked(_ sender: UIButton) {

        guard let url = URL(string: "https://vimeo.com/1234567") else {
            print("Error url nill")
            return
        }

        HCVimeoVideoExtractor.fetchVideoURLFrom(url: url, completion: { ( video:HCVimeoVideo?, error:Error?) -> Void in
            if let err = error {
               print("Error = \(err.localizedDescription)")
               return
            }

            guard let vid = video else {
                print("Invalid video object")
                return
            }

            print("Title = \(vid.title), url = \(vid.videoURL), thumbnail = \(vid.thumbnailURL)")

            if let videoURL = vid.videoURL[.Quality1080p] {

                let player = AVPlayer(url: videoURL)

                DispatchQueue.main.async {
                    let playerController = AVPlayerViewController()
                    playerController.player = player
                    self.present(playerController, animated: true) {
                        player.play()
                    }
                }
            } else {
                print("Error: videoURL not found")
            }
        })
    }
}

Ответы [ 2 ]

0 голосов
/ 06 марта 2020

enter image description here

Это количество последних номеров вашего видео

videoArr = self.arrFilterItems[indexPath.row].link
last9 = String(videoArr.suffix(9))
var last9 = String() 
here link = https://vimeo.com/(123456789) == 9 or (123456) == 6
0 голосов
/ 06 марта 2020

Это поможет вам, я думаю. Добавьте это к своему коду enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...