это секунды воспроизведения для поиска.

я есть учетная запись Netflix, и я заглянул под капот на его видеоплеер, работающий в Google Chrome. Netflix называет свой видеоплеер «Cadmium», а javascript предоставляет все функции и обработчики событий, которые вы можете ожидать, такие как воспроизведение, остановка, пауза, отключение звука и т. Д. Я создаю небольшое расширение Chrome, которое позволит мне вызывать эти кадмий Функция игрока, но сложная часть для меня - выяснить, как создать экземпляр проигрывателя, чтобы я мог начать звонить. Javascript большой, сложный и немного неясный. Как только я смогу создать экземпляр этого плеера, я думаю, что сделать вызовы в функции будет легко.

Вот соответствующий кусок JS:

muteOn: function() {
          this.savedVolume = this.getVolume(),
          this.updateVolumeDisplay(0),
          this.scrubber.updatePercent(0),
          this.muted = !0,
          this.videoPlayer.setMuted(this.muted)
}

В инструментах разработчика Chrome я могу установить точку останова внутри этого блока, и выполнение достигает точки останова, когда я нажимаю кнопку Mute на видеопроигрывателе netflix. Netflix js (что неудивительно) сильно запутано с помощью переименования методов. Я попытался пройти по коду в отладчике и закончил работу с сотней кроличьих ям, так и не смог найти путь к вершине стека, чтобы я мог сделать тот же самый вызов (на вершине стека), чтобы симулировать щелчок пользователем кнопка выключения звука. Я также попробовал метод программного нажатия кнопки отключения звука на UI-плеере, который бы в равной степени отвечал моим потребностям, но у них были серьезные защитные механизмы, которые вращали меня как волчок.

Поскольку в javascript более 100 тыс. Строк, и я не уверен, какие именно фрагменты будут уместны для этого поста, я хотел бы предложить вам загрузить Netflix в Chrome, открыть инструменты разработчика, воспроизвести фильм и проверить паузу или отключение звука. кнопка. Взаимодействие с этими элементами управления видеопроигрывателем переносит вас в лабиринт javascript, который я пытаюсь понять, как я могу использовать его для программного управления аспектами плеера (пока хорошо только с помощью инструментов dev). Еще одна важная вещь, которую мне нужно выяснить, - это запросить видеоплеер, чтобы определить текущее время воспроизведения видео.

Есть идеи, как я могу взломать этот орех? (Заранее спасибо!)

Ответы на вопрос(1)

Ваш ответ на вопрос