Как различить первичное видео и вторичное видео в слое правого борта? - PullRequest
0 голосов
/ 04 октября 2019

Для Демонстрация двойного воспроизведения страница

<video class="primary"></video>

<video class="secondary" muted autoplay loop src="//storage.googleapis.com/ytlr-cert.appspot.com/test-materials/media/manual/dual_video/secondary-video.mp4"
maximum-capabilities="width=432; height=240; framerate=15;"></video>

Как отличить основное видео от дополнительного видео во время создания StarboardPlayer?

В конструкторе StarboardPlayer

StarboardPlayer::StarboardPlayer(
    ... [parameters skipped]
    const std::string& max_video_capabilities)

строковый параметр max_video_capabilities всегда пуст как на первичном, так и на вторичном, упомянутая выше страница не использует HTMLVideoElement.setMaxVideoCapabilities () для установки параметра max_video_capabilities и следующего атрибута во вторичном видео, который также не обрабатывается HTMLMediaElement

maximum-capabilities="width=432; height=240; framerate=15;"

Для системы с ограниченными ресурсами второстепенный ресурс выделяется для вторичного видео во время построения воспроизведения. Например, наша система имеет только один ресурс, который можно использовать в режиме вывода «punch out» для основного видео, поэтому режим вывода «decode to texture» используется во вторичном видео. После воспроизведения воспроизведения кажется, что невозможно динамически менять режим вывода? Ресурс памяти также ограничен для вторичного видео.

Так что очень важно различать первичное видео и вторичное видео в встроенной системе с ограниченными ресурсами, но это кажется невозможным на уровне правого борта, и я не хочу изменять кодвне правого борта.

Есть предложения?

1 Ответ

0 голосов
/ 17 октября 2019

Я заметил, что следующий код был добавлен в dual_video.js. Теперь правый слой может использовать строку max_video_capabilities, чтобы определить, является ли это вторичным видео или нет. Спасибо:)

var secondaryVideo = document.querySelector('video.secondary');
secondaryVideo.setMaxVideoCapabilities('width=432; height=240; framerate=15;');
secondaryVideo.loop = true;
secondaryVideo.autoplay = true;
secondaryVideo.muted = true;
secondaryVideo.src = 'https://storage.googleapis.com/ytlr-cert.appspot.com/test-materials/media/manual/dual_video/secondary-video.mp4';
...