Skip to main content

Protocol

Audius is a decentralized, community-owned and artist-controlled music-sharing protocol. Audius provides a blockchain-based alternative to existing streaming platforms to help artists publish and monetize their work and distribute it directly to fans.

The mission of the project is to give everyone the freedom to share, monetize, and listen to any audio.

The Audius Protocol repository is a mono-repository that has all the pieces that make and support the protocol including smart contracts, services, and other supporting libraries.

If you are interested in operating a service, see the running a node section. If you're interested in contributing to the Audius protocol, explore the code below!

Audius consists of three demographics of users: Artists (content creators), Fans (content consumers), and Node Operators. Some users check fall into all three demographics!

  • Artists upload tracks, create albums, and share content to their following
  • Fans stream tracks, create playlists, subscribe to & follow artists, and re-share content to their following
  • Node Operators serve app traffic, stream songs, and help secure the network

Node Operators can provide one or more of the following services by staking $AUDIO tokens and registering their service:

  • Discovery node (host an endpoint with SSL support and register endpoint with stake)
  • Content node (host an endpoint with SSL support and register endpoint with stake)

In the above diagram, creators can either run a content node themselves or use one of the network-registered content nodes.

For more details on the Audius architecture, see the Audius protocol whitepaper.


Audius Services

ServiceDescriptionGitHub
Content NodeMaintains the availability of users' content on IPFS including user metadata, images, and audio contentLink
Discovery NodeIndexes and stores the contents of the Audius contracts on the Ethereum blockchain for clients to query via an APILink
Identity ServiceStores encrypted auth ciphertexts, does Twitter OAuth and relays transactions (pays gas) on behalf of usersLink

Audius Smart Contracts & Libs

LibDescription
libsAn easy interface to the distributed web and Audius services: Identity Service, Discovery Node (discovery provider), Content Node (creator node)
contractsThe smart contracts being developed for the Audius streaming protocol
eth-contractsThe Ethereum smart contracts being developed for the Audius streaming protocol

Node Operators Quickstart

A quick start guide to running Nodes on Audius can be found here