rubikean / CDN-Transcode-Sample

Media transcoding is a key function for live video broadcasting, streaming, and video on demand use cases in a CDN network. The CDN Transcode sample (not a finished product) provides a reference pipeline to build an out-of-box 1:N CDN streaming transcode service example.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Open Visual Cloud CDN Transcode Sample

Travis Build Status Stable release License Contributions

Table of Contents

The CDN Transcode Sample is an Open Visual Cloud software stack with all required open source ingredients well integrated to provide out-of-box CDN media transcode service, including live streaming and video on demand. It also provides Docker-based media delivery software development environment upon which developer can easily build their specific applications.

Architecture

The sample implements a reference server-side transcode system over CDN infrastructure, which features live streaming and VOD.

What's in this project

The CDN Transcode Sample contains below components:

  • Dockerfiles
  • Python web services source code
  • BASH glue scripts
  • HTML web pages
  • CMakefiles
  • Configuration files
  • Documents

System requirements

Operating system

The CDN Transcode Sample may run on Linux* 64 bit operating systems. The list below represents the operating systems that the transcode application and library were tested and validated on:

  • Ubuntu* 18.04.2 Server LTS
  • CentOS* 7.6

How to setup The CDN Transcode Sample

Setup the CDN Transcode Sample OS environment(Both of master and slave nodes)

Install Ubuntu 18.04.2/CentOS 7.6 on CDN-Transcode Server, and configure the IP address & proxy properly.

Install ubuntu18.04.2/CentOS 7.6

Setup CDN environment(Both of master and slave nodes)

Install the third-party dependency Libraries and tools

sudo -E ./script/install_dependency.sh

Setup docker proxy as follows if you are behind a firewall

sudo mkdir -p /etc/systemd/system/docker.service.d
printf "[Service]\nEnvironment=\"HTTPS_PROXY=$https_proxy\" \"NO_PROXY=$no_proxy\"\n" | sudo tee /etc/systemd/system/docker.service.d/proxy.conf
sudo systemctl daemon-reload
sudo systemctl restart docker

Build(Both of master and slave nodes)

Run below commands to build docker images

cd CDN-Transcode-Sample
mkdir build
cd build
cmake ..
make

Deploy

Auto deployment using Kubernetes

Tips: It divides into two parts: master or slave ones

Start CDN transcode service

make start_kubernetes

Tips: Configuration example for Kubernetes deploy

Stop CDN transcode service

make stop_kubernetes

See Also

About

Media transcoding is a key function for live video broadcasting, streaming, and video on demand use cases in a CDN network. The CDN Transcode sample (not a finished product) provides a reference pipeline to build an out-of-box 1:N CDN streaming transcode service example.

License:Other


Languages

Language:Python 50.0%Language:Shell 19.6%Language:CSS 11.5%Language:XSLT 7.0%Language:JavaScript 4.0%Language:M4 3.9%Language:CMake 1.3%Language:Batchfile 1.3%Language:Dockerfile 0.9%Language:HTML 0.5%