Public | Automated Build

Last pushed: 2 years ago
Short Description
This is FFserver on Alpine, using the latest static build.
Full Description


Reference: documentation for FFserver.

FFServer as Audio MP3 Stream Server

This is a sample usage for FFServer.

  • Create a folder where you'll put the mp3 files to stream

      ls ./audio/file1.mp3
  • Create a sample configuration file:

      vim ./config/file.conf

This is where you'll want to change some settings like the HTTP port or the filename.

  • Execute the ffserver container with the audio and config volumes, as well as the configuration file for this case:

      docker run -d \
      -v `pwd`/audio:/audio \
      -v `pwd`/config:/etc/ffserver \
      -p 8090:8090 \
      sjourdan/ffserver:3.0 \
      -f /etc/ffserver/file.conf
  • You can now access the stats page from your browser: by default on docker-machine or on linux and note the stream of the file is available. There's some information about the number of connexions, the bandwidth etc.

  • The file can now be streamed from (adapt the IP) with a player like VLC or an HTML5 web player.

Apache Reverse Proxy CORS Example

To add the CORS authorization to the stream server headers using Apache, on Ubuntu - and replace "*" by whatever domain you want:

$ cat /etc/apache2/sites-enabled/000-default.conf

<VirtualHost *:80>
  ServerName a.b.c.d
  DocumentRoot "/var/www/html"
  Header set Access-Control-Allow-Origin "*"
  <Location />
    ProxyPass http://a.b.c.d:8090/file1.mp3

  <Directory "/var/www/html">
    AllowOverride None
    Order allow,deny
    Allow from all

Then restart Apache:

a2enmod headers proxy_http
service apache2 restart
Docker Pull Command
Source Repository