Я переключаю наш видеопроигрыватель с обычных видеоисточников на частичную прогрессивную потоковую передачу видео с помощью mpeg-dash. При использовании mpeg-dash вместо ссылки на фактический видеоисточник вы ссылаетесь на файл манифеста mpeg-dash, который содержит всю информацию о каждом чанке и позволяет проигрывателю обмениваться чанками при изменении пропускной способности. Теперь все это кажется довольно простым, однако я также работаю над настройкой URL-адресов больших двоичных объектов, чтобы скрыть местоположение нашего исходного файла, и у меня возникают проблемы. Как это работает, поскольку вся документация, которую я могу найти в ответах BLOB-объектов, либо полностью написана на JS, либо возвращает XMLHttpRequest.
Вы можете увидеть пример здесь в документации dash.js, который делает именно то, что я хочу http://mediapm.edgesuite.net/dash/public/nightly/samples/dash-if-reference-player/index.html если вы проверяете элемент, он имеет URL-адрес большого двоичного объекта и загружается кусками, но я не могу найти никаких документов о том, как это сделать.
По сути, мой вопрос в том, как вы можете заставить файл манифеста mpeg-dash работать вместе с системой URL-адресов blob, чтобы скрыть исходные URL-адреса.
Я также работаю над настройкой URL-адресов BLOB-объектов, чтобы скрыть местоположение нашего исходного файла.
Уверяю вас, что вы ничего не скрываете. Данные должны прийти откуда-то. Легко определить, откуда, независимо от того, как вы думаете, вы скрываете это на стороне клиента.
Не беспокойся об этом.
Как это работает, поскольку вся документация, которую я могу найти в ответах BLOB-объектов, либо полностью написана на JS, либо возвращает XMLHttpRequest.
Причина, по которой вы видите большие двоичные объекты с помощью DASH-проигрывателей в Интернете, заключается в том, что они используют MediaSource Extensions (MSE) для получения данных. Видеопроигрыватель фактически имеет источник BLOB-объектов, которым управляет браузер. Ваш JavaScript загружает куски и отправляет их в браузер для запуска через кодек и вывода в элемент видео.
На MDN есть хороший пример MSE: https://developer.mozilla.org/en-US/docs/Web/API/MediaSource
Других решений пока нет …