Changes between Version 5 and Version 6 of restream


Ignore:
Timestamp:
Mar 8, 2018, 3:29:06 PM (19 months ago)
Author:
Jamie McClelland
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • restream

    v5 v6  
    11= Restream =
    22
    3 Jitsi meetings are an excellent way to invite a handful of people to a web-based video conference. However, if more than a dozen or so people connect, the quality can start to degenerate. As a result, jitsi is not a useful way to broadcast a meeting to a lot of people.
    4 
    5 Restream allows us to take a jitsi meeting and send the video and audio to our icecast servers, which are designed to handle hundreds of simultaneous connections.
    6 
    7 You can use restream to simply broadcast a jitsi meet video conference, or you can use it to setup a dedicated page on https://participate.mayfirst.org/ that incorporates both the icecast stream and the jitsi chat.
    8 
    9 This page documents how to use restream.
    10 
    11 The restream system is currently only available to MF/PL system administrators.
    12 
    13 == Setup ==
    14 
    15 === Just send to icecast ===
    16 
    17 First, ensure you have joined the jitsi meeting using the browser you intend to use for your own participation. This step ensures you are granted moderator rights.
    18 
    19 Login to dee.mayfirst.org as root:
    20 
    21 {{{
    22 ssh root@dee.mayfirst.org
    23 }}}
    24 
    25 Launch the stream specifying the final part of the jitsi URL. In other words, if your jitsi meeting is at https://meet.mayfirst.org/mfpl, you would specify "mfpl" as the only argument, e.g.:
    26 
    27 {{{
    28 restream mfpl
    29 }}}
    30 
    31 Then, check for the stream at: https://a.stream.mayfirst.org:8000/mfpl.webm
    32 
    33 When you are done (assuming your stream URL was "mfpl"):
    34 
    35 {{{
    36 docker stop mfpl
    37 docker rm mfpl
    38 }}}
    39 
    40 === The full deal ===
    41 
    42 If you want to create a special room for being to both watch the icecast stream and participate in the chat (and even present the agenda), you can use the `restream-setup` command.
    43 
    44 Specify the start time, stop time and the name like so:
    45 
    46 {{{
    47 restream-setup now "1 hour" mymeeting
    48 }}}
    49 
    50 Or...
    51 
    52 {{{
    53 restream-setup "2016-02-12 09:00" "2016-02-12 11:00" checkin
    54 }}}
    55 
    56 Then, `restream-setup` will output details about your meeting, including the URL to send people to watch (which will be `https://participate.mayfirst.org/<name>).
    57 
    58 A once a minute cron job takes care of starting and stopping your docker instance (that way we won't accidentally leave CPU hungry processes running).
    59 
    60 == How it works ==
    61 
    62 The script launches a docker container that runs firefox under xvfb (a simulated X windows environment). Firefox loads the jitsi URL and then ffmpeg streams the "desktop" to icecast.
    63 
    64 The code handling the docker creation and script to start it is available via `git clone git://git.mayfirst.org/mfpl/restream`
    65 
    66 The launcher script reads the file /etc/restream.conf to get the properly URL for our jitsi instance and the URL, username, and password for icecast.
    67 
    68 == Debugging ==
    69 
    70 If you want to get a root shell on the docker container as it is running, use the exec sub-command (replace "mfpl" with the stream URL):
    71 
    72 {{{
    73 docker exec -it mfpl bash
    74 }}}
    75 
    76 You can stop and restart the container with:
    77 
    78 {{{
    79 docker stop mfpl
    80 docker start mfpl
    81 }}}
    82 
    83 However, careful when restarting... the old web session may persist in the jitsi session
     3Restream has been de-commissioned because it was far too CPU intensive to run firefox and stream it to icecast via ffmpeg (also kept crashing). Click the history tab to see how it once worked.