DIY: Video Streaming Server

2019-02-03 16:42发布

问题:

I'm looking for any modern resources for setting up a video streaming server. Preferably open source solutions.

My searching on this has lead to a lot of dead ends. I also do need to build my own instead of paying for a service.

回答1:

To setup your own video streaming server you should get started with the following components:

  1. A linux distribution you are familiar with
  2. A free and open source server solution such as NaviServer
  3. FFMpeg (see the streaming guide)

    • Reeoncode certain files / streams into desired resolutions/codecs etc.
    • Prepare streams for correct restreaming
  4. VLC (see their wiki)

    • Prepare streams for correct restreaming (RTSP, UDP, HTTP, HTTP-LIVE, DASH)
    • Prepare files for correct restreaming
  5. Maybe a content management solution to serve your streams such as OpenACS

However, please note: Your question is very broad, hence this broad answer.

It really depends on your requirements and your given infrastructure. You will need to script tasks such as preparing streams for HTTP Live Streaming or other formats. If possible maybe add some more details to your questions (formats, codecs, platforms, file restreaming or stream restreaming, real-time etc.)

Go here and here (long answer) for more input on HTTP Live Streaming.

Hopefully this will lead you to useful directions.



回答2:

Simple the best : VideoLAN is a project that develops software for playing video and other media formats across a local area network (LAN) https://en.wikipedia.org/wiki/VideoLAN http://www.videolan.org/vlc/



回答3:

Livebox has the linux distribution, VLC, Ffmpeg and everything installed for you. It is a pre-built DIY video streaming server. See livebox for details.



回答4:

There is a site (https://www.youphptube.com) a it's project on github (https://github.com/DanielnetoDotCom/YouPHPTube) for building your own video sharing site.

I didn't digged in this project, it may or may not be cool project.



回答5:

Use nginx mp4 module to stream videos. Limit bandwidth, concurrent connection, max buffer size and more. Use md5 key and ttl for security.