Restream YouTube live translation into the local network.

2020-10-29 13:52:00

Quite often, system administrators have the question of how to organize viewing of a live YouTube broadcast on the personal computers of an organization's employees in such a way that they do not open access to viewing all YouTube content and overload the network connection with the Internet with requests to view the stream from hundreds or even thousands of employers. This problem can be solved by special settings of the HTTP proxy server, but it is much easier to organize the relaying of a YouTube live stream to the corporate network using the Wowza Streaming Engine and the open source Streamlink utility.

Streamlink - can be used in both Linux and Windows environments. For Linux distributions, a ready-made installation package and / or installation using Python PIP tools (in the case of CentOS for example) are supported. For Windows, there is a portable version that does not require installation at all.

To start receiving a stream, run the utility with the following parameters:

streamlink https://www.youtube.com/watch?v=XXXXXXX

Get a list of available streams:

Available streams: 144p (worst), 240p, 360p, 480p, 720p (best)

Select the required one and run the utility in the stream relay server mode:

streamlink --player-external-http https://www.youtube.com/watch?v=XXXXXXX 720p

Get link to relay stream like http://127.0.0.1:39611/

Enter the Wowza Streaming Engine Manager interface and create a Stream file

And start this stream

After that, the stream can be played from the Wowza server on the corporate portal page in any HTML5 player with HLS protocol support. The stream link for the player in our example will be like this:

http://:1935/live/youtube.stream/playlist.m3u8

Of course, the use of Streamlink is not approved by Google, but nevertheless, the project has been around for several years and adapts to all changes in the YouTube API, like many other video platforms and services that the utility supports.