Note: for the url it is not prefaced by anything. Paste the below into the services array and change the url to either the IP or the hostname of your Project Lightspeed server Mac: /Users/YOURUSERNAME/Library/Application\ Support/obs-studio/plugin_config/rtmp-services/services.json Windows: %AppData%\obs-studio\plugin_config\rtmp-services\services.json Linux: ~/.config/obs-studio/plugin_config/rtmp-services/services.json If you are on Linux and you cannot stream to Lightspeed this may be the issue. Note: Not all versions of Linux have access to OBS with the FTL SDK built in. You will need to edit your services.json file. View Lightspeed in your web browser by visiting or Streaming From OBSÄ«y default since we are using the FTL protocol you cannot just use a custom server. The above will serve the build folder on port 80. Note: your version of serve may require the -p flag instead of -l for the port cd Lightspeed-react You can host the static site locally using serve which can be found here Note: The websocket port is hardcoded meaning that Lightspeed-webrtc will always serve it on port 8080 (this may change in the future) so for the websocket config it needs to be `ws://IP_or_Hostname:8080/websocket ![]() If you are using an IP then it will be the public IP of your machine if you have DNS then it will be your hostname. You should then configure the websocket URL in config.json in the build directory. For example 10.17.0.5 This is where the server will listen for UDP packets and where it will host the websocket endpoint for SDP negotiation It defaults to localhost but should be set to your local IP. This is the local Ip address of your machine. Usage Lightspeed Ingest cd Lightspeed-ingest Installation Lightspeed Ingest git clone If you get a linker cc not found error then you need to install a C compiler. Additionally the Rust repo requires a C compiler. In order to run Lightspeed, Golang, Rust, and npm are required. There are installation instructions in each repository however I will include them here for the sake of simplicity. In order to get Lightspeed running you will need to install all 3 repositories. We now have a Discord server! This is a great way to stay up to date with the project and join in on the conversation! Come stop by! Getting Started Meaning that when a DISCONNECT command is recieved we can terminate the UDP listener so that someone could not start sending packets that we do not want The reason I want the packets relayed from Ingest to WebRTC on the loopback interface is so that we have more control over who can send packets. Here is a diagram that outlines the current implementation and the future implementation that I would like to achieve. Lightspeed React communicates via websocket with Lightspeed WebRTC to exchange ICE Candidates and once a connection is established the video can be viewed. Once the negotiation is done Lightspeed WebRTC listens on the negotiated port (in the future Lightspeed WebRTC will listen on the loopback interface so the ingest has more control on what packets we accept) and relays the incoming RTP packets over WebRTC. Upon receiving a connection it completes the FTL handshake and negotiates a port (this is currently bugged however and defaults to 65535). Lightspeed Ingest listens on port 8084 which is the port used by the FTL protocol. As of right now it is not as modular as it could be and I will be working on improving that in the future. What this means is that you can write your own web app, ingest server or broadcast server. ![]() Lightspeed is however completely modular. So far, Lightspeed includes an ingest service, broadcast service via webRTC and a web application for viewing. The Lightspeed repository contains the instructions for installing and deploying the entire application. With Lightspeed you will be able to deploy your own sub-second latency live streaming platform. Project Lightspeed is a fully self contained live streaming server. ![]() Comprised of 3 parts once configured anyone can achieve sub-second OBS to the browser livestreaming A self contained OBS -> FTL -> WebRTC live streaming server.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |