Я разрабатываю кроссплатформенный сервис загрузки видео, поддерживающий такие платформы, как YouTube, Twitter (X) и TikTok. В настоящее время типичным подходом является использование внутреннего сервера с yt-dlp или аналогичными библиотеками для разрешения URL-адресов видео.
Однако при подходе к разрешению на стороне сервера мы сталкиваемся с двумя основными проблемами:
Ограничение/блокировка скорости IP: Основные платформы часто блокируют диапазоны IP-адресов серверов/центров обработки данных.
Масштабируемость И стоимость: Обработка каждого запроса на извлечение на сервере потребляет значительные ресурсы ЦП и пропускной способности по мере роста трафика.
Я ищу способ перенести логику разрешения/синтаксического анализа на клиентскую сторону (браузер), чтобы извлечение происходило с использованием собственной сети и ресурсов пользователя. Что я рассмотрел:
WebAssembly (WASM): Возможно ли скомпилировать yt-dlp (на основе Python) или аналогичный экстрактор на основе C++/Rust в WASM для запуска непосредственно в браузере?
Расширения браузера: Я понимаю, что расширения могут обходить CORS, но я ищу веб-версию (HTML5/JS), если возможно.
Прокси-серверы CORS: Использование облегченного прокси-сервера только для первоначального запроса метаданных, а затем анализ ответа на клиенте.
Мои вопросы:
Существуют ли какие-либо библиотеки на основе Javascript, которые могут анализировать манифесты видео (например, DASH/HLS) или извлекать прямые URL-адреса видео для этих платформ без тяжелого бэкэнда?
Как я могу справиться с ограничениями CORS (Cross-Origin Resource Sharing) при получении метаданных видео непосредственно из браузера пользователя?
Если полное решение на стороне клиента невозможно, что лучше всего сделать для «гибридной» архитектуры, позволяющей минимизировать затраты на сервер?
Я разрабатываю кроссплатформенный сервис загрузки видео, поддерживающий такие платформы, как YouTube, Twitter (X) и TikTok. В настоящее время типичным подходом является использование внутреннего сервера с yt-dlp или аналогичными библиотеками для разрешения URL-адресов видео. Однако при подходе к разрешению на стороне сервера мы сталкиваемся с двумя основными проблемами: [list] [*][b]Ограничение/блокировка скорости IP:[/b] Основные платформы часто блокируют диапазоны IP-адресов серверов/центров обработки данных.
[*][b]Масштабируемость И стоимость:[/b] Обработка каждого запроса на извлечение на сервере потребляет значительные ресурсы ЦП и пропускной способности по мере роста трафика.
[/list] Я ищу способ перенести [b]логику разрешения/синтаксического анализа на клиентскую сторону[/b] (браузер), чтобы извлечение происходило с использованием собственной сети и ресурсов пользователя. [b]Что я рассмотрел:[/b] [list] [*][b]WebAssembly (WASM):[/b] Возможно ли скомпилировать yt-dlp (на основе Python) или аналогичный экстрактор на основе C++/Rust в WASM для запуска непосредственно в браузере?
[*][b]Расширения браузера:[/b] Я понимаю, что расширения могут обходить CORS, но я ищу веб-версию (HTML5/JS), если возможно.
[*][b]Прокси-серверы CORS:[/b] Использование облегченного прокси-сервера только для первоначального запроса метаданных, а затем анализ ответа на клиенте.
[/list] [b]Мои вопросы:[/b] [list] [*]Существуют ли какие-либо библиотеки на основе Javascript, которые могут анализировать манифесты видео (например, DASH/HLS) или извлекать прямые URL-адреса видео для этих платформ без тяжелого бэкэнда?
[*]Как я могу справиться с ограничениями [b]CORS (Cross-Origin Resource Sharing)[/b] при получении метаданных видео непосредственно из браузера пользователя?
[*]Если полное решение на стороне клиента невозможно, что лучше всего сделать для «гибридной» архитектуры, позволяющей минимизировать затраты на сервер?