Skip to main content

· 3 min read
techcoderx

alive dev log 1.png

Welcome to the first development log of Alive Protocol, since the project began in July 2020. Yes you read that right, this is definitely overdue for an update.

You might have heard about Alive Protocol in some of @techcoderx witness update logs but this is a dedicated post to log recent dev updates.

What is this even all about!?

Generally speaking, Alive Protocol is an on-chain HLS live streaming protocol. In Hive's context, it is a HAF-based live streaming protocol.

As this is a development log and not a project announcement post, please read the recently updated documentation if you would like to find out more about the project.

Another "Alive"!?

Note that Alive Protocol has nothing to do with 3 (and possibly more) other Hive projects with "Alive" in the name.

Even the name "Hive" was being used by at least half a dozen unrelated entities. Alive Protocol will probably be only known among developers and those who are curious about the inner-workings, while the end users of DApps that uses Alive Protocol will know it as [insert DApp here] Live.

But ser

Hive-Tube already has something similar that is already in production, why this?

Well, the main difference is that this streams on-chain (without being too spammy), and some streamers may prefer to benefit from Hive L1 security and immutability during the live stream.

In federated platforms, unless you own the node instance you stream to, the instance owner could stop your ongoing live stream. In that case you will have to start another one in another instance. With Alive Protocol, you can resume your live stream on another service/DApp (as long as you have sufficient RC) and the previous segments that are already published on L1 will remain intact.

Anyways

It started with being a fork of SkyLive. Over time through collected feedback and developments, Alive Protocol went through several revisions of its specifications and the development of the protocol has been on and off throughout the years.

Today is the day where there is finally something that can be put together and present in this development log.

HAF

Screenshot 2023-03-21 at 8.53.49 PM.png

Now that HAF exists, this is definitely one of the projects that can take advantage of the framework among other updates in v1.26 (especially OBI).

HAlive will be the streams indexer using the HAF app sync algorithm which also provides an API server that serves the m3u8 playlist of the live streams.

There are still some ways to go for HAlive to be production ready, specifically caching chunk contents into the PostgreSQL database (outside HAF registered tables) for faster m3u8 playlist retrieval.

View the REST API documentation to learn more about interfacing with HAlive.

AliveDB, Alive-CLI

AliveDB, the live caching layer for Alive Protocol streams has its GunDB updated to 0.2020.1239.

It is also now possible for Alive streamer daemon (Alive-CLI) to use an external AliveDB process instead of having to invoke its own AliveDB instance for every live stream. This will be mostly useful for hosting services and possibly applications for improved UX.

Documentation

Following the above updates, the documentation has been updated and some pages reorganized to reflect the recent changes described above.

Screenshot 2023-03-27 at 10.15.15 PM.png

What's next

Even though live streaming has been working during testing, the protocol still has some work to do before it is ready for mainnet, especially on UX and streaming performance optimizations.

The full roadmap is available at the Alive Protocol project board.

· One min read
techcoderx

This is a short demo of the live chat that will be used in Alive streams, a decentralized live streaming protocol on Hive and Avalon, using IPFS and Skynet as storage backend and GunDB for off-chain caching.

Thanks to GunDB, the live chat runs directly on browsers as well as AliveDB peers (which is built into HAlive API and in the future, Avalon nodes) without using a centralized server. Anyone with an Avalon, Hive or Steem account can sign messages and participate. It also includes a simple moderation system where streamers (and approved mods) can approve or blacklist certain users in the chat.

Alive website and docs: https://aliveprotocol.com

Example interface: https://github.com/aliveprotocol/AliveDB/tree/master/livechatexample

Vote for my Hive witnesses: https://hivesigner.com/sign/account-witness-vote?witness=techcoderx&approve=1

Vote for me as Avalon leader: https://d.tube/#!/election

▶️ DTube

▶️ IPFS

▶️ Skynet

· One min read
techcoderx

Today's video we will be looking into the possibility of adding decentralized HLS live streams to DTube chain, using IPFS or Skynet as file storage backends. Inspired by (and forked from) SkyLive, each HLS chunks are uploaded to IPFS/Skynet, obtaining its hash (or Skylink) which is then broadcasted to Avalon every 10 seconds.

Avalon streaming source code: https://github.com/aliveprotocol/Alive-CLI

Development branch: https://github.com/techcoderx/avalon/tree/livestream

Vote for my Hive witness: https://hivesigner.com/sign/account-witness-vote?witness=techcoderx&approve=1

▶️ DTube

▶️ IPFS

▶️ Skynet