Talk
Beginner
First Talk
Chunk by Chunk: How We Built an HTTP Live Streaming Server
Approved
Session Description
Hi there :)
Dekho is a very simple, bare-bones and open source Video on Demand server which we built to understand how video streaming works at a fundamental level. The talk will consist of -
- Why did we choose to build Dekho?
- How did it start?
- What topics we learnt about while exploring video streaming?
- And how do we plan to take this project ahead?
What are we going to speak about?
We built Dekho by implementing the HTTP Live Streaming (HLS) Protocol.
- So we will give the birds eye view of HLS.
- The difference between streaming and downloading..
- Why did we choose to use HLS?
- Different common terminologies that one comes across when learning about video streaming like container formats (.mp4, .mkv), video codecs (H.264/AVC, H.265/HEVC), audio codecs like (aac, mp3, flac), output formats like (mpegts, flv)
- How to extract and study the metadata of video/audio files (a little bit of hands-on experimentation) with ffmpeg and ffprobe
- What are the roles of the different components of Dekho i.e. the server, the client, the database and the static file storage?
- And finally how all of these components come together to stream videos on your favourite OTT application :)
- The infra challenges we faced while building Dekho and how do we plan to take it forward.
Open Source Tools Used:
- ffmpeg - our main tool which helped us create chunks for the HLS Streaming
- appwrite - our static file storage service
- HLS.js - the hls.js client which helped us play the chunks
Reference Links on Dekho
Disclaimer: Since we are using a free render instance for hosting, it might be sleeping and would take around 40-45 seconds to load. Please be a little patient :)
- Try out Dekho here: Dekho
- GitHub Repository: GitHub - Chirag-And-Dheeraj/video-streaming-server: A research/study project for understanding and learning the fundamentals of audio/video streaming.
- Peerlist Project of the Week on Launchpad: Dekho | Peerlist
Key Takeaways
- How HTTP Live Streaming works at a fundamental level?
- How to analyze and study the metadata present inside a video?
- Different terminologies which are usually referenced while working with video streaming.
References
Session Categories
FOSS
Speakers
Dheeraj Lalwani
Software Engineer: Backend
HeyMarvin
https://twitter.com/DhiruCodes
Chirag Lulla
Software Engineer
UBS
https://twitter.com/_chiraglulla_
Reviews
0
%
Approvability
0
Approvals
0
Rejections
0
Not Sure
No reviews yet.