project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

VVLDrizzy

Mint, watermark, license, and protect your viral short form videos. Get paid by media outlets on your terms. Powered by Story Protocol, Walrus.

VVLDrizzy

Created At

ETHGlobal San Francisco

Winner of

Story - Most Creative Use Case 3rd place

Project Description

VVLDrizzy (Viral Video Licensor) aims to make it easy for both content creators and media outlets to get paid for or pay to license video content, helping bridge the legacy media outlets' Web3 adoption gap.

As a content creator:

  • getting my video stolen and reuploaded without credit sucks
  • I want to earn money from my posts if it gets viral
  • I want to own my original video and post it without Instagram, Facebook, etc. claiming ownership

As a media agency:

  • having to wait for permissions to license a video by messaging the owner can delay being the first to report breaking news; owners may not reply in time either
  • infringing Fair Use law can be very costly to litigate if brought to court; it is better to err on the side of caution and pay licensing fee
  • I want to explore what licensable content exists and easily license it

VVLDrizzy was part-inspired by my friend, PK, who was riding the TTC (Toronto's subway - hence Drizzy) when he filmed a section of the train with a broken window, popping his phone out the windowsill to show the danger. His video went semi-viral (127K views) after he uploaded it to TikTok, and was contacted by multiple news outlets to show it on live news. It was stolen and reuploaded a few times without permission too. He didn't make any money from it, but now with VVLDrizzy, he easily could have set his own licensing terms and prevented it from being stolen without attribution and earned some money.

Features:

  • Always own your videos - upload to decentralized Walrus network and mint your NFT, and watermark your video for uploading to data-stealing SNS like Instagram, TikTok
  • Upload short-form video from your device (max 10MB due to API limitation) to the Walrus decentralized storage platform
  • Download video from Walrus to verify
  • Mint video as NFT using Walrus blobID with title, description, blobID tags
  • Set license token minting fee and revenue share percentage for easy kick-backs and register IP Asset license to Story Protocol network
  • Watermark and download video with Story logo and IPA hash for easy licensing lookup by good actors and to prevent unattributed video theft
  • IPA hash lookup for media outlets to request licensing terms
  • (work in progress) Process license agreement fee and pay creators
  • Download non-watermarked video after confirming payment of licensing fee
  • (came with boilerplate) Connect to Metamask wallet to establish ownership and pay gas fees

Inspiration for the name: https://youtu.be/AF2MqFnPotc?feature=shared

How it's Made

Stack:

  • I built the frontend with Next.js based on the Story boilerplate. Initially I used Vite, but there was a blocker based on how the Story SDK handles env variables that wasn't compatible with Vite, so I had to port over the entire project from my existing code over to the sandbox (hence the late start to my commits in the new repo)
  • Viem and Ether.js were used to interact with Eth smart contracts
  • Story Protocol was the bread and butter used for registering IP on blockchain to show content ownership and create licensing terms, and I took advantage of the traceable IPA hashes for the watermark and license identification.
  • Walrus was used to store the video uploads to ensure decentralized, immutable storage which is useful with IPFS for creating NFTs of user content.
  • FFmpeg with WASM was used to process video and watermark videos with both the IPA hash and the Story logo entirely on the client side.
  • WalletConnect was used to allow creators and media outlets to seamlessly sign transactions with their wallets

Notable hacks: One notable hack I pulled off was the client-side watermarking. Typically, video processing is done server-side, but by using WASM and FFmpeg, I was able to process videos directly in the user's browser, preventing the user from needing to send their video to a third-party server for processing, reducing server costs and keeping video ownership fully on the client side, creating a decentralized-first approach.

Another hacky thing I did was leverage the IPA hash from the Story license to store the blob id of the video on Walrus to be used later when the video is retrieved after licensing, creating a single-source-of-truth to reduce the friction of content licensing.

This combination of technologies made VVLDrizzy a seamless and decentralized solution for both content creators and media organizations.

background image mobile

Join the mailing list

Get the latest news and updates