Grant Proposal: Fabstir

Hello Juleslai,

Thank you for your grant proposal. The Grants committee is still discussing a few points internally and will have a full, official response provided for you by Monday, November 7th.

We appreciate your patience as we continue to develop our Grants program.

Regards,
Kino on behalf of the Foundation and Grants Committee

Hi,

Something to consider is Fabstir uses Skynet, hence Sia storage under the hood, for video, audio, images, files attachments (in messages or for lyrics, subtitles), and NFT metadata (text files).

For simplicity I can categorise Fabstir users into three categories:

  1. Viewers/audience who consumes media e.g. watches a movie.
  2. Viewers/audience who consume media and uses digital wallets e.g. buys NFTs.
  3. The content creator.

For category 1, Fabstir can abstract away knowledge of crypto wallets in the Ethereum eco-system with smart wallets; eip-4337. EIP-4337: Account Abstraction using alt mempool
So viewers/audience can pay with their credit card and not need a digital wallet if they choose, for easier onboarding. Ultimately, I believe a lot if not most will become category 2 or 3 users over time.

Something to consider is how to make Sia and Skynet easier to integrate with Web3 dapps? Can the payment of Siacoins to its wallet/blockchain be done automatically by software? I’m guessing I’d need to work with Sia team and/or with Derrick from Lume Web to make this happen.

Hello Jules,

Thank you for your grant proposal. We’re interested in the idea, however, we’d like to see a bit more fleshed-out grant proposal. We understand that our application process is new and there aren’t a lot of examples to work off of but try taking a look at PCFreak30’s Lume and Skynet’s Summer Proposal to get an outline for how to frame your proposal.

Key areas that we would like to see outlined more clearly are:

  • How the Grant will be utilized internally such as team salary distribution, hardware and software expenses, etc.;
  • How will the Grant help identify Sia as a major partner in the project
  • How the Grant will benefit Sia and the Sia ecosystem apart from Sia providing the storage; For example: How will Fabstir promote used-owned data concepts
  • Will the Grant be directly funding an ICO or other security or potential security

Regards,
Kino on behalf of the Foundation and Grants Committee

Hi Kino,

Understood, I will work through the bullet points. I will need a little time because of the schedule that 's hitting me at the moment.

Jules

Hi Kino,

I have had meaningful conversations with PCFreak30 and Redsolver.

Will post the updated grant proposal in time for your meeting tomorrow.

Best,
Jules

Project Name: Fabstir Web3 Media Player

Fabstir Web3 Media Player: A video and audio streaming Web3 media player to provide smooth playback of media NFTs straight out of the MetaMask wallet from Sia storage via S5 and Skynet .

Organisation: Fabstir, led by Jules Lai (founder, CEO and CTO)

https://fabstir.com

Short Bio

Jules Lai holds degree level and MSc in computing and in mathematics. Based in London, he worked as senior software developer designing and implementing financial modelling software used by corporations such as Lloyd’s of London and the Bank of England. In his spare time, he runs some of the largest filmmaking and film business communities (Non-Multiplex Cinema and Film Means Business) in the UK, for over a decade.
Since summer 2021, he has been devoted to developing Fabstir; a start-up that has built a one-stop platform for video and music streaming, e-commerce, social media and fundraising for content creators to enable creative freedom, greater diversity of content, censorship resistance and fairer income for creators.

Purpose

To build a Web3 media player extension to MetaMask that will allow video, music and art NFTs to stream their content from SIA storage.

This is a dapp extension for lovers of media who wish the freedom to consume NFT media content that they own in their digital wallet account, whenever they like.

Summary of Fabstir Web3 Media Player features

  1. Play NFT media (video, music, art & metaverse 3d) direct from MetaMask wallet account.
  2. Intention is to work cross-chain from any EVM compatible blockchain that supports ERC-721 and ERC-1155 NFTs.
  3. Stream directly from Sia via s5 and Skynet v2 (when available)
  4. Provide caching service for other data storage solutions like IPFS and Arweave onto Sia to provide better playback higher quality streaming.
  5. Provide transcoding features onto Sia for multiple bitrates and formats to HLS and MPEG-DASH.
  6. Provide payment solution from ERC-20 tokens to Sia straight from users’ MetaMask wallet.
  7. Integrate with NFT marketplaces such as OpenSea, Rarible, Fabstir etc.
  8. Provide indexing of content from media NFTs on other platforms such as Fabstir.
  9. Provide gallery and other presentation customisation for NFT collections owned in wallet account.
  10. Set an EIP standard for media NFTs to help with future compatibility.

The Problem

For professional content, a handful of big players in the industry offer subscription models to their content. Meaning that the consumer has no say as to what content is available and the subscription platforms wield sole power to add and remove content.

Because of the monopoly between a few big tech and brand players such as Netflix and Disney, content creators are required to give too much of their rights and are the bottom of the food chain when it comes to earning revenue from their content. For example, Spotify take out 30% and the major music labels take their cut of 40% which is why only £0.003 per click is paid to the content creators. YouTube, even less at £0.0005 per click. This, despite the content being the final product.

Video streaming platforms such as Netflix are opaque about how much they earn and filmmakers have to sign deals heavily weighed against them where income is often reported to come in dribs and drabs over long periods.

The Solution

Having a Web3 media player on the most popular digital wallet, MetaMask (with over 21 million monthly active users), allows an escape route from centralised subscription models. This enables media lovers to buy NFT media content directly from creators to keep and to enjoy streaming straight out of their wallet account. Hence it cannot be taken away and is resistant to censorship. This also allows content creators to receive the majority of the income and keep their content rights too, as there would be no intermediaries. Content creators would be now top of the food chain!

NFT marketplaces and Web3 streaming platforms fees are usually much lower than their Web2 counterparts. Everything is much more open and transparent as one can use a tool like ethercan.io or equivalent to look up transaction history on the blockchain. Thus, breaking down the walled gardens prevalent in the media industry that place too much distance between content creators and what fans want.

Instead, community driven content can thrive allowing for much more diverse and exciting content from around the world. There is the potential for much greater income to creators to sustain new and exciting talent to thrive! Plus, creators can produce content true to their vision rather than have to fit into mega brand categories.

Why SIA for streaming?

SIA has the potential to be the go to storage solution for streaming high quality decentralised content. IPFS is not designed for this as it has no CDN qualities, nor Arweave’s permaweb as this is for the use case of permanent storage archiving. Indeed, the Web3 media player I am proposing will be designed to offer a caching solution to these slower storage architectures that will help onboard more users to SIA and utilise the advantages of Sia v2 when available.

Fabstir Web3 media player will perform transcoding in browser for smaller sized media and use decentralised servers (from Akash) to transcode higher quality bitrate material. The process will output multiple formats and bitrates in HLS and MPEG-DASH onto Sia storage on a par with Youtube. Users will pay for the cost in ERC20 tokens straight from their MetaMask wallet to Sia, plus there will be a fee to go to Fabstir and any slippage cost in currency conversion.

The plan is to work with and support both @redsolver and Derrick from LumeWeb who are both extremely talented individuals, with the Web3 interface to SIA storage. Whether that be via S5 or a new rejuvenated Skynet or both.

Fabstir platform already uses SIA storage for all its streaming and metadata via the existing version of Skynet. When live, it will bring further onboarding of users to SIA. Plus, the media players integration with other major NFT marketplaces will help SIA gain brand recognition as an alternative to IPFS.

Budget

The project is requesting $70,000 for one year.

The planned expenditure is:

  • $45,000 to the part-time salary of Jules Lai. Who will develop the
    desktop MetaMask Snaps version.
  • $25,000 to any other cost that may incur; such as marketing/brand design, a
    laptop, testing, audit, oracle service (currency prices) and associated fees for
    Akash server network.

Part of the process will be to ensure compatibility with the major NFT marketplaces such as OpenSea and Rarible as well as upcoming Web3 streaming platforms, such as my own; Fabstir.

It is planned that the project will develop beyond the first year to extend to game assets and the metaverse where whole world content can be streamed from SIA storage and rendered in 3D. Plus to be cross-chain and format agnostic.

Further future development to be considered is integration with other Web3 wallets such as Tally Ho.

Any additional funding will go to speeding up the roadmap and expanding the team or to additional outsourcing.

Current development

Some of the media and Web3 features have already been done whilst developing Fabstir’s Web3 streaming platform and will be simply copied across.

Presently, both video and music NFTs streaming from SIA via Skynet is supported by Fabstir. Fabstir streaming platform is not yet live but is fully functional. The platform runs on EVM compatible blockchains with initial release planned on Polygon next spring/summer.

The plan is that Fabstir’s Web3 media player for MetaMask to be a separate product from Fabstir the platform and will support many video and audio NFT metadata formats for both ERC-721 and ERC-1155, on multiple EVM compatible blockchains. Quite how many is unknown given budgetary, time and manpower constraints.

Currently, HLS video protocol is supported that allows for content encryption and file chunking; meaning video is split into chunks to allow content to be played without first downloading the entire media content. There will be support for MPEG-DASH format.

For users who have content in non-streaming codec containers (on IPFS or Arweave) then Fabstir’s MetaMask extension will offer in browser transcoding via WASM and subsequent storage to SIA for file sizes up to 2GB (current WASM limit). File sizes larger are transcoded via decentralised servers such as Akash for higher quality bit-rate content.

Future development

There are many integrations to explore that can bolster the movement for Web3 content creation such as integration with Lens Protocol (planned within the year) for social and Fabstir for social, e-commerce and fundraising.

Indexing service for NFT content discovery across multiple platforms, not just from Fabstir platform. So, users only have to open MetaMask to gain access to a world of content and be directed to various marketplaces to buy or sell.

Also, original content authentication is to be explored. To allow for example, a green tick next to legitimate content in the MetMask extension front end, to highlight that it is not a copy. There are third party companies that specialise in this use case that could deliver a ready-made solution to integrate with.

For mobile platforms, the Web3 media player will be written in JavaScript with React Native when MetaMask enables Snaps for mobile.

Proposed timeline

  1. Start Fabstir Web3 video and music player for MetaMask Snaps
    (extension)
  2. Support for NFT video and audio streaming in HLS format from SIA for
    Fabstir NFTs on Polygon.
  3. Support for other video streaming protocol MPEG-DASH.
  4. Support for subtitles and song lyrics.
  5. Allow for transcoding and uploading of video and audio to Sia and wrap as NFTs.
  6. Allow for content caching of NFTs from other storage solutions such as
    IPFS and Arweave onto SIA.
  7. NFT metadata compatibility with various NFT marketplaces such as
    OpenSea and Rarible.
  8. EIP proposal for standardisation of video and audio NFT
    specifications.
  9. Searchable indexing of content available from Fabstir.
  10. Support for other EVM compatible layer 2 solutions.
  11. First foray into metaverse with 3d graphics rendering of assets in
    .obj, Alembic or FBX formats.
  12. Authentication system that will show with a green tick NFTs that
    are the original and not copies (probably a large development and
    won’t be done in time unless integration with a 3rd party service).

Revenue model

For users caching their NFT content from other Web3 storage solutions onto SIA, they would be charged an upload/download cost to go to S5/Skynet/Sia with an additional fee (10%) going to Fabstir.

For casual users who just want to consume their own NFTs then free download with a quota limit. A fee for heavier usage e.g. multicasting, to be determined.

Media player operational features

  • The Fabstir Web3 media player will have the usual play, stop/pause,
    rewind, fast forward, skip to position locator.
  • For songs, support for the use of .lrc lyric format to sync lyrics
    with current song position.
  • Support various subtitles formats.
  • Multi-channel audio support for different languages.
  • Rudimentary 3D asset rendering (at first).
  • Galleries/folders to display collections with some customisation of
    layout.
  • Favourite lists and history of content played.
  • Content lists from Fabstir, searchable via tags and filters. Includes
    reviews and ratings.
  • Various transcoding options, with a choice of output qualities.
  • Code to embed player to websites.
  • Easy creation of media NFTs to OpenSea, Fabstir etc.
  • Re-skin the player with options from default templates and user
    generated skins.

Will be branded as a Fabstir Media Player powered by SIA backend.

Technology

  • The main Fabstir Web3 media player for desktop will be written in
    JavaScript with React.
  • The transcoder will utilise ffmpeg (C++) compiled to WASM and C++ transcoder for off-line from Akash decentralised servers.
  • The Web3 interface to SIA storage will use S5 (from @redsolver) and
    Skynet v2 (from Derrick Hammer of LumeWeb).

Risks

Part of the risks lays on S5 and Skynet v2 development as both are or would be new software stacks in production. The latter might require some help from Skynet’s core developer(s).

MetaMask Snaps market is new and development is ongoing.

Given the scope and number of features of this proposal, the main ones are to be tackled first, followed by nice to haves within a timebox.

Open Source

This project is to be open source under the MIT license.

Conclusion

From my trips this year to the Cannes Film Festival and the American Film Market, after talking to 100s of film producers, directors and productions houses, the situation is getting worse for content creators as Web2 subscription platforms further shore up their dominance as gatekeepers with absolute power to choose to buy up rights and content or make content, for their own agendas and profits.

I believe Fabstir Web3 media player will give creative freedom to content creators, where they get to keep their digital rights, stream directly to their fans and receive the lion’s share of the revenue. And the community can once again own content to view/listen to, straight from their digital wallets where no subscription platform can remove it, and champion their favourite creators by supporting future content. Thus enabling the flood gates to open for new exciting material from across the world.

Hi Kino,

My updated grant proposal is the post above and linked here: Grant Proposal: Fabstir - #13 by juleslai

Hopefully addresses your points.

Best,
Jules

Hello Jules,

The committee reviewed your updated proposal and we are excited to let you know that a decision we reached to Conditionally Approve your grant!
The condition for approval is: Additional budget justification and cost breakdown. Specifically, we would like to see individual estimates for each of the items listed among the $25,000 in “other costs.”

You can simply provide the requested breakdown as a follow-up comment and the committee will review it asynchronously. If you’re in our Discord server feel free to ask any questions about the process; once the conditional approval requirements are met you should expect to receive communication from a team member via Discord direct message.

Regards,
Kino on behalf of the Sia Foundation and Grants Committee

1 Like

Hi Kino,

Fantastic!

I have the breakdown quite detailed in fact. I’ll compile it together, just need to double-check some costings.

I do have a busy day tomorrow (meeting up at apparently one of the most prestigious places in London for people in the film industry) but can work on it when I get back.

Yep, I’m on your Discord.

Regards,
Jules

Hi Kino,

The breakdown…

Other costs $25000

  • Marketing/brand design $5000

    • PR Blast (Coin Telegraph, CoinMarketcap, etc.) $2000
    • Visual Identity (Colour Palette, Typography, Logo Variations)
      Style guide / Brand Strategy (Brand positioning, Logo Guidelines, Mood Boards)
      Naming and Slogan/Tag Line Strategy
      Various other graphic designs" $2000
    • Newsletters for film and music industry, Web3 educational articles, online ads etc. $1000
  • Smart contract audit $5000

  • Testing and other dev work $5000

  • Akash server network (deployment of Fabstir player dapp and transcoder) $3300

  • Akash network charges (provisional) $500

  • Hardware/software $3200

    • Laptop (Lenovo ThinkPad) $3000
    • Backup drive, additional bits like font and image libraries etc. $200
  • Conferences/events for promotion $1500

  • Miscellaneous costs (e.g. legal, unknown unknowns etc.) $1500

Supporting Notes

Devleet will be performing extra testing and other dev work (UI/UX enhancement etc.). I have met the people in charge and we also have had a remote call.
Due to their extensive track record in deployment, they will do this for the Fabstir Web3 media player and the off-line transcoder on to Akash decentralised network.

SmartState for audit. They will be performing audit on the Solidity contracts of Fabstir Web3 media player. Depending on whatever funding is left over, they also said that they can look at the overall non-EVM code in the system. I have both met them face to face and discussed Fabstir over remote call.

MasterBlox for marketing and PR work. They are specialists in the Web3 area. I have had a remote meeting and other communications with them.

My current dev computer is over ten years old and has a max clock of 2.2Ghz. Hence the need for an upgrade.

I’m hoping to get token spot prices from Uniswap. If not then there will an Oracle fee that will come out of miscellaneous costs.

These are provisional. I may decide upon deeper analysis that another organisation or other alterations might be required to keep within the budget.

Best,
Jules

2 Likes

Hello Jules,

The committee reviewed your provided details and have approved your grant. Congratulations!

Please reach out on the Sia Foundation community Discord server to get in touch with us so we can provide you with the documents to begin your exciting project!

Regards,
Kino on behalf of the Sia Foundation and Grants Committee

Hi All,
The project Github is here:
https://github.com/Fabstir/fabstir-web3-media-player

Hi,
First progress report is here:

1 Like

Thanks @juleslai! This looks good and is a great report of your work done this month. Keep it up!

2 Likes

Thanks juleslai! Going forward, please submit your monthly report ideally by the 2nd of every month. Thank you!

Sure. Currently finishing off learning Rust that I will be using, instead of C++ that I know as is too hard for people to learn IMHO due to its bloated size and complexity.
Soon be able to move forward again.

Hi,
February progress report is here:

The committee has reviewed your report and is pleased with your progress. We do recommend using our new format for future reports, especially since the markdown files present aas a bit tough to read in the forum:

  1. A short 2 - 3 paragraph summary of your specific progress over the past month.
    1. Please compare progress to your milestones or timeline stated in your proposal.
  2. Links to repos worked on (if any)
  3. List of what you will be working on for the next month.

Keep it up!

Sure, will do. Cheers.

Hi,

March Progress Report Summary

Over the past month, a cloud-based infrastructure and test MetaMask Snaps app have been developed. The infrastructure comprises two clusters for media playback and video transcoding, communicating via gRPC and utilising load balancing. Both clusters are hosted on Akamai, with multi-cloud support.

The MetaMask app allows users to manage their NFT addresses within a secure environment, storing encrypted data locally and will offer backup storage on SIA. Currently working on the production-ready Web3 video player with enhanced features.

Full report here: fabstir-web3-media-player/FabstirWeb3MediaPlayer_20230402.md at main · Fabstir/fabstir-web3-media-player · GitHub