Code Monkey home page Code Monkey logo

dash's Introduction

DASH

Dynamic Adaptive Streaming over HTTP (DASH) is a standard for streaming video over the Internet. DASH is an adaptive bitrate streaming technique that enables high quality streaming of media content over the Internet delivered from conventional HTTP web servers. Similar to Apple's HTTP Live Streaming (HLS) solution, MPEG-DASH works by breaking the content into a sequence of small HTTP-based file segments, each segment containing a short interval of playback time of content that is potentially many hours in duration, such as a movie or the live broadcast of a sports event. DASH is the secret sauce behind the success of video streaming services like Netflix and YouTube.

Installation

To set up the project, you need to follow the following steps:

  1. Clone the repository
  2. Install the requirements(pip install -r requirements.txt)
  3. If you want to generate the DASH segments each time you start the server uncomment this line in main.py:
# generate_dash()
  1. Run uvicorn main:app --host 0.0.0.0 --port 5000 to start the FastAPI server

Usage

The API has 2 major endpoints:

  1. '/' :- serves the dash player
  2. '/dash' :- serves the dash manifest

Demo

To see the demo, you can visit this link. Alternatively, you can also run the project locally and visit http://localhost:5000 to see the demo. You can also see the stream in media players like VLC by using the following link: http://localhost:5000/dash as shown below:

VLC

Future Improvements

Build a YouTube like video streaming service using this API.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.