Turn future streaming revenue of your song into a token and sell it on a DEX
There is a surge in interest in music NFTs. Royal.io raised more than $70M to sell future streaming revenue in a form of NFTs. They split a single song into 200 NFTs and sell them at price between $200 and $5000 each. Each NFT provides the holder with 0,0005% to 0,05% of streaming revenue from Spotify and other such services. The issue with this is that such a high-potential financial product is shue-horned into an instrument that is more fitting to art pieces like JPEGs. The minimum amount you can buy or sell is the price of one whole NFT. This excludes a large portion o the market, decreases liquidity and ultimately the price.
Such financial asset should be fungible, and it should utilise all the infrastructure in Ethereum that is built for fungible tokens. User should be able to buy $20 or $2M worth of tokens. Our app enables just that. Add your music, specify the rights you own and are selling, mint tokens and sell them using any DEX or do more Defi gymnastics with with it if you want.
The way the app works is that a musician will add their song to the app, either by entering the ISCR code or a Spotify link. Then she will enter the % or royalties she has rights to, and upload a proof of this. A proof can be a legal document. Then, she will create the token. Token can be customised by adding an expiration date and intervals of payouts. Finally, she can create a liquidity pool for the token on Uniswap.
We are focusing on musicians who already have their music published on Spotify and other streaming services, and their previous success is easy to assess. Investors can come up with different strategies. They can invest into certain genres, fresh songs, or evergreens depending on risk affinity or other criteria.
Musicians can decide if they want to sell rights for perpetuity or for limited time, as well as if they want to sell all the tokens immediately or in batches. By tokenising their future revenues, they get immediate access to more capital than otherwise possible. Secondary market for such financial assets is currently virtually non-existent.
Smart contracts
Reward token: This ERC20 token is minted when there is revenue to be distributed.
Super token: This is Superfluid contract that wraps Reward token for easy distribution. The newly minted tokens will be wrapped in Super token and distributed to Song token owners.
Brains contract:
This contract checks how many Reward tokens should be distributed at the certain time by communicating with UMA Oracle. It then uses Song token to determine how it should distribute reward tokens, and distributes the tokens. Individual parts of the contract are:
3.1. Instant Distribution Agreement It distributes Reward tokens to Song tokens owners.
3.2. Song token ERC20, it represents share in the stream revenues for a particular song.
3.3. UMA Oracle Interface It asks UMA Oracle if the proposed Reward token quantity is proportional to the number of streams / views / listens.
Backend
IPFS + Piñata
We store song and license information on IPFS. When the Song contract is constructed, we add the IPFS hash in a variable so anyone can use getter to check what rights does this token include. We use Piñata to ensure this information is always available.
Frontend
Web3Auth
We use Web3Auth to enable users to log in with either their web2 credentials or their Ethereal wallet.
NextJS + Chakra + Typescript
The whole frontend is built in these tools.
Design
Polygon Finity Design System
Figma