Pull to refresh
3
0
at0mic @at0mic

User

Send message
Вы только что описали TURN реализацию

Она повсеместно используется если NAT закрыт, беда в том, что В приходится гонять кучу траффика через себя. В паблике TURN серверов почти нет.
Да больше скажу, прям сейчас можно с вашего демо аккаунта бесплатно раздавать свое видео своим же пользователям. Ну и подозреваю с любого аккаунта, который у вас зарегистрирован тоже.
О размещении на других сайтах. На вашем сайте с демо-плеера спокойно вытаскиваются адреса и mp4 файлов, и m3u8 манифестов, которые можно всунуть в свой плеер на любой странице и показывать своим пользователям.

На сегментах же CORS хеадеры в вайлдкарде.
В этом как раз и есть смысл. Защита от встраивания не поможет, когда можно вытащить манифест и раздать его свои клиентам в своем плеере. Даже ключи шифрования не помогут. И сессионные токены не помогут, потому что так же уводятся. Не знаю, слышали про rawstreams и fneulion или нет.

Тут один вариант: генерировать одноразовый ключ на сегмент, но если вашим клиентам не надо, видимо у них публичный контент.
на айфонах как вы mse играть будете?
peer5 можно использовать так, но без своих CDN. Polygoncast вообще странный, не увидел ссылок ни на загрузку, ни на код.
Спасибо, проверю! Т.е. hlsjs они так еще и не прикрутили для mse?
А те, которые к своему cdn подрубить можно? Это все пропиетарные аддоны к опенсорсным плеерам, всех видел, но не то все это.
Смысл рассуждать помесячно есть конечно, если трафик плавный и растет прогнозируемо. Это достижимо на больших объемах, на маленьких скачки могут прибить, особенно если не знать, что с этим делать.

Полосой в месяц оперируют все на каналах до 100Mbit. Уже от 1Gbps в основном или ограничения по объему или шаред порт. Ну или дорого просто.
Так обычно и делают те, кто Р2Р как услугу предлагают. В опен-сорс не выкладывает что-то никто. Оно, на самом деле, несложно выходит с webtorrent и hlsjs, просто это ж сделать надо.
Из дома раздать террабайт на 600-700 зрителей с битрейтом хотя бы 2000Kbps? Сомнительно. Так же как и ВПСку прикроют моментально если она хоть 20 минут будет по пол-гигабита раздавать.
А вы, кстати, можете попасть в целевую аудиторию. Если у вас внезапно набежит толпа народу на раздачу с домашнего канала, то вот так подключить в пару строк пару мощных серверов удобно же.

Строить самому распределенную систему дистрибуции контента дорого и нервно, это как мороженое: по сути замороженные сливки, но проще купить в магазине.
А скиньте ссылок на опенсорсные плееры, которые поддерживают Р2Р и умеют играть live-стримы?
С этим как раз вопросов нет. Если вам надо только террабайт раздать в месяц, или раздать сразу короткий поток на 3-4Gbps, то все удобно. Когда есть объемы, денежный поток и руки не из одного места, то естественно этот сервис не нужен.
Никто не мешает же зенкодеру драть по 5 баксов за минуту конвертированного видео, видимо есть спрос.

Мне вот другое интересно: video.js в 5 версии вроде как не умеет из коробки играть hls во флеше, у них есть hls-contrib плагин, который они под последнюю версию так и не допилили. Или я не допонял?
Это не Р2Р видео в привычном понимании
https://github.com/feross/webtorrent/issues/448
Я вижу несколько подходов для решения этой проблемы:
1. плейлист m3u8 создается динамиески с адресами .ts чанков на нужных серверах. В таком случае всегда можно подпихнуть быстрый сервер в начало файла и при перемотке тоже
2. Сами адреса чанков в плейлисте — динамические. На каждый запрос к чанку отдается 302 статус на ближайший или дешевый сервер. Таким образом можно балансировать нагрузку между CDN.
Одним словом: в HTTP протоколе уже все есть и давно реализовано, или я что-то упустил? С безопасностью тоже вроде все нормально, например nginx-secure-token-module есть.

Гораздо интереснее задача раскидать по CDN лайв поток, да так, что-бы чанки появились на серверах быстрее, чем истекли. Эта же проблема и к Р2Р лайв стримам относится, которые, к слову, многие используют уже. Если взять для примера acestream, то у них очень приличная задержка, минут 5 для того, чтобы расползлись данные по пирам.

Кстати, насчет webtorrents, их народ долбит на гитхабе, почему они не сделают реализацию Р2Р видео, на что они отвечают, что это out of scope их проекта, но вполне реализуемо т.к. вебторренты — это транспорт, его можно использовать как угодно. По-моему, Р2Р видео в браузере — это самое востребованное направление сейчас в стриминге, думаю через пол-года — год будут уже очень интересные решения.
Еще пару лет назад бразилец один написал bem.tv, со свармом, блекджеком ну и остальным. Работает он правда только в хроме, MSE нужен.
И оно работало, и даже неплохо. Плохо только дл live стримов неприменимо.

Еще есть peer5, кстати
Cypher сам по себе туповат, более того, у pg_routing более продвинутые алгоритмы поиска по графу. Cypher использует просто BFS сортируя результаты впоследствии.

Впрочем, pg_routing очень даже запросто загибается при поиске по большому ветвистому графу.
Dijkstra в этом исполнении ищет только один самый дешевый путь, а я говорю про k-shortest paths, т.е. список самых дешевых путей отсортированных по весу. Pg_routing, например, умеет это делать. И Neo4j умеет через Java API.

A* тоже, кстати, не умеет.
Как только у lucene заканчивается память, то начинаются тормоза.
В целом, ничего революционного в Neo4j по-моему нет. Главной проблемой для всех графовых баз данных является скорость доступа к самому графу, все алгоритмы траверсинга имеют примерно одинаковую производительность независимо от реализации.

В целом, Neo4j удобен Cypher'ом, но он позволяет реализовать только базовый поиск, а для использования более сложных алгоритмов прийдется использовать Java API.
Ну я там и читал, и не нашел. Где?

Information

Rating
Does not participate
Location
Эстония
Date of birth
Registered
Activity