Coder Social home page Coder Social logo

asangus / owt-server Goto Github PK

View Code? Open in Web Editor NEW

This project forked from open-webrtc-toolkit/owt-server

0.0 1.0 0.0 50.48 MB

General server (streaming/conference/transcoding/anayltics) for OWT. (A.k.a. MediaServer)

Home Page: https://01.org/open-webrtc-toolkit

License: Apache License 2.0

Dockerfile 0.04% JavaScript 44.08% Shell 3.09% C++ 38.10% Python 0.94% C 11.47% CMake 0.49% Makefile 0.40% CSS 0.14% HTML 1.26%

owt-server's Introduction

Open WebRTC Toolkit Media Server

The media server for OWT provides an efficient video conference and streaming service that is based on WebRTC. It scales a single WebRTC stream out to many endpoints. At the same time, it enables media analytics capabilities for media streams. It features:

  • Distributed, scalable, and reliable SFU + MCU server
  • High performance VP8, VP9, H.264, and HEVC real-time transcoding on Intel® Core™ and Intel® Xeon® processors
  • Wide streaming protocols support including WebRTC, RTSP, RTMP, HLS, MPEG-DASH
  • Efficient mixing of HD video streams to save bandwidth and power on mobile devices
  • Intelligent Quality of Service (QoS) control mechanisms that adapt to different network environments
  • Customer defined media analytics plugins to perform analytics on streams from MCU
  • The usage scenarios for real-time media stream analytics including but not limited to movement/object detection

How to install develop dependency

In the repository root, use one of following commands to install dependency.

  • Interactive mode: scripts/installDeps.sh
  • Non-interactive mode: scripts/installDepsUnattended.sh In interactive mode, you need type "yes" to continue installation several times and in non-interactive, the installation continues automatically.

How to build release package

Requirements

The media server can be built on following platforms:

  1. Ubuntu 18.04
  2. CentOS 7.6

Instructions

In the root of the repository:

  1. Build native components: scripts/build.js -t all --check.
  2. Pack built components and js files: scripts/pack.js -t all --install-module --sample-path ${webrtc-javascript-sdk-sample-conference-dist}.

The ${webrtc-javascript-sdk-sample-conference-dist} is built from owt-javascript-sdk, e.g. ~/owt-client-javascript/dist/sample/conference, see https://github.com/open-webrtc-toolkit/owt-client-javascript for details.

If "--archive ${name}" option is appended to the pack command, a "Release-${name}.tgz" file will be generated in root folder. For other options, run the scripts with "--help" option.

Quick Start

In the repository root, run following commands to start media server on single machine:

  1. ./bin/init-all.sh --deps
  2. ./bin/start-all.sh
  3. Open https://localhost:3004 to visit the web sample page. Due to the test certificate, you may need confirm this unsafe access.

Where to find API documents

See "doc/servermd/Server.md" and "doc/servermd/RESTAPI.md".

How to contribute

We warmly welcome community contributions to Open WebRTC Toolkit Media Server repository. If you are willing to contribute your features and ideas to OWT, follow the process below:

  • Make sure your patch will not break anything, including all the build and tests
  • Submit a pull request onto https://github.com/open-webrtc-toolkit/owt-server/pulls
  • Watch your patch for review comments if any, until it is accepted and merged OWT project is licensed under Apache License, Version 2.0. By contributing to the project, you agree to the license and copyright terms therein and release your contributions under these terms.

How to report issues

Use the "Issues" tab on Github.

See Also

http://webrtc.intel.com

owt-server's People

Contributors

yxian avatar starwarfan avatar lodoyun avatar jcague avatar daijh avatar huachunbo avatar jnoring-hv avatar lzhai avatar jianjunz avatar qzhang8 avatar taste1981 avatar qwu16 avatar nachoaguadoc avatar djie1 avatar xuguangxin avatar byronclark avatar dkrax avatar yanbin7 avatar fran-rg avatar tangzhizhen avatar kevynb avatar mark3141 avatar zhenqi522 avatar labwebrtctest avatar netusco avatar mrbatista avatar cisco6 avatar pqas avatar ruiyun avatar piasy avatar

Watchers

James Cloos avatar

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.