Мне нужно показать видео на Smart TV от iphone программно - PullRequest
1 голос
/ 30 марта 2020

Существует приложение под названием Miracast Это приложение способно зеркально отображать экран на Smart TV (мне нужен специально телевизор Samsung) и воспроизводить видео из галереи на телевизор

Я пытался найти но не смог найти никаких ресурсов в Интернете, рассказывающих об этой задаче

Я использую Smart View SDK для подключения к телевизору, и я смог показать фотографии из Галереи на телевизоре

Вот код для показа фотографии на телевизоре Samsung

 let appID: URL = URL(string: "http://prod-multiscreen-examples.s3-website-us-west-1.amazonaws.com/examples/photoshare/tv/")!
    let channelID: String = "com.samsung.multiscreen.photoshare"
    let msApplication = service.createApplication(appID as AnyObject, channelURI: channelID, args: nil)
    msApplication!.connectionTimeout = 5.0
    msApplication!.connect([:], completionHandler: { (client, error) in
        let data = self.compressImage(image: image)

        msApplication?.publish(event: "showPhoto", message: nil, data: data!, target: MessageTarget.Host.rawValue as AnyObject)
    })

Если кто-то успешно работал над чем-то похожим или имеет какие-либо ресурсы, он будет признателен

1 Ответ

0 голосов
/ 13 апреля 2020

Да, да, да. Это очень простой вызов функции, просто получить доступ к видеофайлу вместо картинки. Смотрите https://developer.samsung.com/smarttv/design/smart-view-sdk.html#playback -syn c код очень и очень прост в реализации:

 let appID: URL = URL(string: "http://prod-multiscreen-examples.s3-website-us-west-1.amazonaws.com/examples/photoshare/tv/")!
    let channelID: String = "com.samsung.multiscreen.photoshare"
    let msApplication = service.createApplication(appID as AnyObject, channelURI: channelID, args: nil)
    msApplication!.connectionTimeout = 5.0
    msApplication!.connect([:], completionHandler: { (client, error) in
        let data = self.compressVideo(video: video) //this here is the key

        msApplication?.publish(event: "showPhoto", message: nil, data: data!, target: MessageTarget.Host.rawValue as AnyObject)
    })
...