Тип 'PlayerConfiguration' не имеет члена 'fromJson' Ошибка интеграции с iOS в Bitmovin - PullRequest
0 голосов
/ 30 июня 2018

Я пытаюсь интегрировать Bitmovin IOS. Но когда я создаю экземпляр проигрывателя через "let config = PlayerConfiguration.fromJson (" ");" метод там показывает ошибку "Тип 'PlayerConfiguration' не имеет члена 'fromJson'". Пожалуйста, кто-нибудь, помогите мне.

1 Ответ

0 голосов
/ 22 июля 2018

Да! Я нашел решение.

Я добавил следующие обратные вызовы.

  • fpsConfig.prepareCertificate
  • fpsConfig.prepareLicense
  • fpsConfig.prepareContentId
  • fpsConfig.prepareMessage *
  • Пользовательские заголовки запроса могут быть установлены с помощью:
  • fpsConfig.certificateRequestHeaders
  • fpsConfig.licenseRequestHeaders

    do { 
        try config.setSourceItem(url: fairplayStreamUrl)
    
        // create drm configuration
        let fpsConfig = FairplayConfiguration(license: licenseUrl, certificateURL: certificateUrl)
    
        // Example of how certificate data can be prepared if custom modifications are needed
        fpsConfig.prepareCertificate = { (data: Data) -> Data in
            // Do something with the loaded certificate
            return data
        }
    
        fpsConfig.prepareMessage = { (spcData: Data, assetID: String) -> Data in
            return spcData
        }
    
        fpsConfig.licenseRequestHeaders = ["content-type": "application/octet-stream"]
    
        fpsConfig.prepareLicense = { (ckc: Data) -> Data in
            return ckc
        }
    
        fpsConfig.prepareContentId = { (contentId: String) -> String in
            let part1 = contentId.components(separatedBy: ";")[1]
            let part2 = part1.components(separatedBy: "?")[0]
            return part2
        }
    
        config.sourceItem?.add(drmConfiguration: fpsConfig)
    
        // Create player based on player configuration
        let player = BitmovinPlayer(configuration: config)
    
        // Create player view and pass the player instance to it
        let playerView = BMPBitmovinPlayerView(player: player, frame: .zero)
    
        // Listen to player events
        player.add(listener: self)
    
        playerView.autoresizingMask = [.flexibleHeight, .flexibleWidth]
        playerView.frame = view.bounds
    
        view.addSubview(playerView)
        view.bringSubview(toFront: playerView)
    
        self.player = player
    } catch {
        print("Configuration error: \(error)")
    }
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...