С помощью Google Cast iOS SDK (Chromecast) возможно ли иметь видео с отдельным аудиопотоком? - PullRequest
0 голосов
/ 22 марта 2019

У меня есть MP4 URL с только видео и отдельной звуковой дорожкой для него. Я могу воспроизвести один или другой, изменив URL «основного» потока и соответствующий тип контента, но я хочу и то, и другое, а не одно или другое, очевидно.

Основной URL на (глупое видео) https://v.redd.it/3hyw7hwoajn21/DASHPlaylist.mpd

Вы можете получить видео MP4 только со звуком на https://v.redd.it/3hyw7hwoajn21/DASH_720, а соответствующая звуковая дорожка на https://v.redd.it/3hyw7hwoajn21/audio

Если я играю в MP4 с iOS SDK, он работает нормально, но без звука:

let url = URL(string: "https://v.redd.it/3hyw7hwoajn21/DASH_720")!

let mediaInfoBuilder = GCKMediaInformationBuilder(contentURL: url)
mediaInfoBuilder.contentID = url.absoluteString
mediaInfoBuilder.streamType = .buffered
mediaInfoBuilder.streamDuration = TimeInterval(75)
mediaInfoBuilder.contentType = "video/mp4"
mediaInfoBuilder.metadata = metadata

let mediaInfo = mediaInfoBuilder.build()

Поэтому я пытаюсь добавить аудиодорожку перед вызовом build(), пытаясь следовать документации здесь :

mediaInfoBuilder.mediaTracks = [GCKMediaTrack(identifier: 98911, contentIdentifier: nil, contentType: "audio/mp4", type: GCKMediaTrackType.audio, textSubtype: GCKMediaTextTrackSubtype.unknown, name: "Fun time fun", languageCode: "en", customData: nil)]

Но результат тот же: нет звука.

Я делаю это неправильно?

1 Ответ

1 голос
/ 09 апреля 2019

Аудио- и видеопотоки должны быть в одном и том же манифесте, чтобы мы могли их поддерживать, если нет, то это не поддерживается SDK.В целом, аппаратное обеспечение ChromeCast ограничено разрешением только одного медиаэлемента.Некоторым приложениям удалось добавить звуковой эффект при чтении книги, которая может использовать WebAudio, но это полностью сделано в приложении.

...