Skip to content

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 Open Audio 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 Open Audio Protocol, explore the code below!

flowchart LR
  A(((Artists)))--->|Publish Content|B([Audius Content Ledger])
  B--->|Index Content Metadata|D[(Discovery Node)];
  D--->|Discover Content|F;
  A(((Artists)))--->|Upload Content|C[(Content Node)];
  C--->|Stream Content|F(((Fans)));
  click C href "/learn/architecture/content-node"
  click D href "/learn/architecture/discovery-node"

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 Open Audio 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