DTube - децентрализованная видео-платформа

DTube - децентрализованная видео-платформа

NoNaMe Club

DTube – это приложение, полностью написанное на javascript, которое запускается в браузере и позволяет загружать и смотреть видео поверх сети IPFS. Кроме того, оно использует STEEM в качестве базы данных и позволяет получать вознаграждения за ваши загрузки.

Это может напомнить вам о давнишнем анонсе проекта SteemQ, который собрал почти пять тысяч долларов вознаграждения, но так и не был выпущен и в итоге подвергся ребрендингу. Более года спустя он по-прежнему не функционирует, и даже нынешняя альфа-версия использует для всего внутренний сервер, поэтому приложение по-прежнему централизовано.

Отсутствие рекламы

Чтобы обеспечить лучший пользовательский опыт, DTube отказался от привычной для всех нас рекламных блоков. Пользователи могут свободно рекламировать любой продукт или услугу, прямо в своих собственных видео, на свой страх и риск потерять своих подписчиков.

Устойчивый к цензуре

Так как IPFS и STEEM децентрализованы, DTube не может подвергнуться цензуре со стороны государств. Только пользователи могут заняться "цензурой", используя пальцы вверх и вниз.

Справедливая платформа

На DTube нет скрытых алгоритмов, позволяющих контролировать видимость или давать преимущество в монетизации определенным видео по сравнению с другими. Код DTube является общедоступным и может быть проанализирован любым, у кого есть интернет-соединение.


Как пользоваться DTube

Вход в систему

  1. Введите свое имя пользователя в STEEM
  2. Введите свой приватный постинг ключ, вы можете найти его вот так:

Многопользовательский вход

У Youtube и Facebook есть эта замечательная функция, благодаря которой вы можете запросто подключить к своему аккаунту сразу несколько каналов и легко переключаться между ними. В DTube вы можете войти в систему с такого количества аккаунтов, с какого захотите, и переключаться между ними.

Настройки

DTube имеет меню настроек, доступное из любой части приложения. Оно позволяет настраивать силу голоса, фильтровать NSFW-контент и задавать параметры IPFS. Шлюз IPFS – это место, откуда загружаются файлы, а API - это то, что мы используем для загрузки.

Загрузка

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

Если все пойдет хорошо, вы будете перенаправлены на свое видео после отправки, и в зависимости от шлюза и скорости соединения, по прошествии от 0 до 30 секунд должно начаться воспроизведение.

Просмотр видео

В настоящее время существует 3 основных способа просмотра контента на DTube. Вы можете перейти на главную страницу и открыть категории "Новые", "Актуальное" и "Популярное". Они работают так же, как на SteemIt.

Вы можете попасть на канал определенного пользователя, перейдя на него по прямой ссылке, например, https://dtube.video/c/curator 

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

Использование Блокчейна STEEM в качестве базы данных

Поскольку мы хотим, чтобы DTube был действительно децентрализованным, мы не можем иметь сервер базы данных и посылать на него запросы. Естественным решением будет использование блокчейна. STEEM обладает множеством преимуществ по сравнению с другими блокчейнами. Он быстрый (1 блок в 3 секунды). Он бесплатный, любой может использовать его без необходимости вносить валюту в какой-либо форме, а транзакции не имеют комиссии. Кто захочет платить деньги за загрузку видео, за комментарии к видео или даже за апвоуты? Никто. В качестве дополнительного бонуса блокчейн STEEM уже имеет механизм вознаграждения.

Любое видео, загруженное на DTube, становится контентом STEEM и может получать вознаграждение в течение 7 дней.

Использование IPFS в качестве статического хранилища файлов

IPFS является протоколом, который позволяет децентрализовать хранение файлов. Принцип, лежащий в его основе, называется Распределённые Хеш Таблицы (DHT - Distributed Hash Tables). Тот же принцип также поддерживает сеть BitTorrent. Подобно тому, как криптовалюта использует асимметричную криптографию, сети DHT будут хешировать контент, чтобы иметь возможность идентифицировать файл. Хеш становится идентификатором файла, и это так же просто, как ре-хеширование файла и проверка соответствия хешей, что гарантирует, что файл, который был нам отправлен, является оригиналом.

Почему бы тогда не использовать Torrent? Torrent, возможно, уже содержит больше контента и более популярен. Однако Torrent не был создан для Интернета. Некоторые имплементации, такие как WebTorrent, пытаются сделать его рабочим, но для этого все еще требуются некоторые "гибридные" клиенты, которые будут выступать в качестве мостов для передачи файлов с торрент-клиентов, таких как "μTorrent", на веб-клиенты, работающие в браузере. Не очень удобно и еще менее эффективно. Я уверен, что многие из вас с удовольствием использовали PopcornTime для просмотра какого-нибудь "пиратского" контента, но создание чего-то подобного, что работает внутри браузера без необходимости запуска гибридных клиентов для соединения с людьми, к сожалению, невозможно.

IPFS является более новым, открытым и активно разрабатываемым протоколом. Он может рассчитывать на светлое будущее.

Стоимость хранения на IPFS

IPFS крут, но без волшебства. Кто-то должен раздавать файлы, а ваш браузер не может постоянно хранить огромные файлы (в большинстве браузеров локальное хранилище ограничено 50-ю МБ). Для хранения видео используется хостинг IPFS Store, который позволяет платить биткойнами за хранение файлов в сети IPFS. Стоимость хранения 1ГБ данных составляет 0,044 доллара США в месяц. Процесс оплаты полностью автоматизирован, от вас не требуется никаких действий.

Дизайн

Большинство разработчиков знают поговорку "не изобретай колесо". То же самое относится к дизайну и пользовательскому опыту. Ведущая видео-платформа YouTube успешно работает уже много лет, и подражание ей имеет смысл. Внешний вид YouTube был скопирован с использованием фреймворка Semantic UI.

Поиск

Быть может, обычным людям трудно это понять, но поиск на самом деле оказался самой сложной проблемой, мешающей сделать DTube жизнеспособным продуктом. Если у вас стандартная база данных SQL или Mongo, поиск выполняется легко. Однако здесь нашей базой данных является блокчейн STEEM, и мы не можем осуществлять поиск путем непосредственного коммуницирования с нодой steem.

Для решение этой задачи используется специальный интструмент — AskSteem, поисковый движок для блокчейна STEEM. Этот сервис использует базу данных ElasticSearch и индексирует новые видео в течение 15 минут.

Однако есть и недостатки. По большей части поиск не децентрализован. Любой поиск будет проходить через сервер AskSteem, результаты поиска могут быть изменены, или поиск может просто перестать работать, если разработчик поисковой машины решит закрыть проект.

Постоянно хранимые данные

DTube будет использовать локальное хранилище вашего браузера для хранения небольшой части информации. Во-первых, он будет хранить ваши аккаунты и ключи для публикации, чтобы вам не приходилось логиниться заново каждый раз. Я полагаю, что это никого не удивит, учитывая, что почти все сайты предлагают такой функционал.

Во-вторых, DTube также сохраняет просмотренные вами видео, чтобы отображать категорию "Watch Again", точно также как это делает YouTube. Вы можете заметить, что вознаграждения за пост не будут отображаться для категории "Watch Again", так как эти вознаграждения могут измениться в любой момент времени, и невозможно будет доверять данным, которые были сохранены некоторое время назад.

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

Кодировка на стороне пользователя

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

Добиться того же в DTube очень сложно. Кодирование видеофайла в javascript сложнее и всегда будет медленнее. 

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

Наконец, это, вероятно, довольно заметно увеличит общий размер приложения DTube и, следовательно, увеличит время начальной загрузки. 

Существует бесчисленное количество программ, которые позволяют кодировать видео. И это потребуется только для видео, записанных с помощью профессиональных инструментов, таких как высококачественные камеры. Люди, которые владеют подобным оборудованием, обычно уже знают о кодировании достаточно. Мой смартфон уже кодирует каждое видео в H.264, и я полагаю, ваш iPhone делает то же самое. Так почему бы не сделать всё максимально простым?


Использованы материалы портала steemit.com


Report Page