GithubHelp home page GithubHelp logo

isabella232 / obs-studio-webrtc Goto Github PK

View Code? Open in Web Editor NEW

This project forked from younow/obs-studio-webrtc

0.0 0.0 0.0 22.23 MB

This is a fork of OBS-studio with support for webrtc in general, and Janus Video Room plugin in particular. More webrtc server support will be added in the future.

Home Page: http://www.cosmosoftware.io

License: GNU General Public License v2.0

Shell 0.22% Batchfile 0.01% Python 0.15% CMake 2.10% C++ 46.83% Objective-C++ 0.86% Lua 0.16% C 47.02% NSIS 1.35% Objective-C 1.28% Groovy 0.01%

obs-studio-webrtc's Introduction

Eran Comments

When checking the project make sure to do the following

  • Get the submodules (which are hosted in separate gits), by making this command

git submodule update --init --recursive

  • Make sure that you have QT5 added to your path. On most OS X versions you will find it in:

/usr/local/opt/qt5

  • Make sure you're getting WebRTC and that you're building in in Release mode

  • Make sure you're brewing OpenSSL

OBS-studio WebRTC

This project is a fork of OBS-studio with support for WebRTC. WebRTC supports comes from the inclusion of the open source implementation from webrtc.org used (at least in part) by chrome, firefox, and safari.

The implementation is in the "plugins / obs-outputs" directory, co-existing with the flash and FTL output plugins. The WebRTCStream files contain the high-level implementation, while the xxxx-stream files contain the specific implementation for a given service.

For the time being the following services and sites are supported:

  • Janus
  • Millicast.com
  • Spank.live (SpankChain)

This is mainly a community project with a best effort service. The maintainers of this repository are all based in Singapore, so please take the timezone into account. If you file a ticket at 2am, you won't get an answer for at least 7 hours.

If you need more support, or custom developement, please contact CoSMo software.

Table of content

Binaries

Pre-built and tested Binaries are available here.

Windows linux or macos

Prerequisite

The current recommended way of compiling libwebrtc is documented on the libwebrtc website. More specifically: https://webrtc.org/native-code/development/prerequisite-sw/

Note that the recommended version of MSVC 2017 is older that the one you would download today, but we can confirm that the latest one works. There is no specific problem on linux or mac.

This repository code is based on the stable branch 65 of webrtc.org. It should be updated to 69 next, by the end of october 2018.

OpenSSL build of libwebrtc might not be needed. The flags are already in place in google's code to get that build. More specifically, if you look at the source code, you will see the SSL flags which needs to be passed to the GN GEN command that allow to use an external SSL library, if you need to (line 43): https://webrtc.googlesource.com/src/+/master/rtc_base/BUILD.gn

You do NOT depend on any external libwebrtc package one might provide. However, compilation of libwebrtc is an under documented process with strong ties to dark magic. From time to time, when people ask nicely, we compile it for them to make their life easier. If you think the compilation of the code from webrtc.org is too difficult, and it makes depending projects NOT easily reproducible, please let Google know, Their bug tracker is there: https://bugs.chromium.org/p/webrtc/issues/list

Compilation, Installation and Packaging

Follow the original compilation, Installation and packaging guide https://github.com/obsproject/obs-studio

Usage with a Janus server

Configure JANUS

https://github.com/meetecho/janus-gateway.

Configure a JANUS server using the video room plugin with websocket secure protocol enabled. (you can enable TLS inside the config file janus.transport.websockets.cfg or e.g directly use Nginx).

For now OBS-Webrtc support only connection through wss. You can directly use their test webpage videoroomtest.html to receive the stream from OBS-webrtc.

OBS settings

Launch OBS, go to settings, select the stream tab and change the URL to point to your JANUS server (wss://xxx). if using videoroomtest.html, the default "Server room" value is 1234.

obs-studio-webrtc's People

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.