Repository
What Will I Learn?
- You will learn how to upload a video to IPFS
- You will learn how to stream a video from IPFS
- You will learn how to build a NodeJS app to stream videos via IPFS
Requirements
Difficulty
- Intermediate/Advanced
Uploading Videos to IPFS
In the previous tutorial I showed how to upload images or videos to IPFS. You can upload it by following the tutorial.
To upload a file to your IPFS server, you must make an HTTP POST request to the server. a key whose value is a video file in the body of request must be defined.
Now I will upload Utopian.io - How to Contribute video to my IPFS server with Postman.
Successfully uploaded!
https://steemia.net/ipfs/QmPfeq2wm79gS5Ho4Jyasu5TLSoSewfs41kxLpGKiSRr6w
Streaming Videos from IPFS
When you send an HTTP POST request, it will return the HASH of the file. When you send an HTTP POST request, it will return the HASH of the file. With this Hash you can access video via IPFS Gateway.
https://gateway.ipfs.io/ipfs/HASH
Streaming Videos from IPFS with video.js Library
You can create an interactive video player with the video.js library to play the videos. Video.js is an extendable library around the native video element.
- How does it look now?
Build a NodeJS app to View Videos
Let's start by creating an application with NodeJS starter pack.
Once you have created a NodeJS app, you will create two html pages for homepage and video review page. On the Index page, the user will enter the video hash and the video will be opened in a new page with the VideoJS player.
index.js
index.html
video.html to render videos
Synopsis
When you open to Home, an input will ask for Video hash. When you submit a video hash, you will access the video via the ipfs gateway, and video.js will be triggered to play the video.
I also deployed this nodejs application so you can easily test it. I uploaded Utopian Contribution Tutorial video to IPFS. You can use it to test video-ipfs app.
QmPfeq2wm79gS5Ho4Jyasu5TLSoSewfs41kxLpGKiSRr6w
Curriculum
- [IPFS Tutorial #3] - Using the IPFS Command Line Interface
- [IPFS Tutorial #2] - Build a NodeJS app for IPFS
- [IPFS Tutorial #1] - Host Your Images Online Forever with IPFS