About

ezWeb is a webinterface to control ezStream for Icecast.

It features automatic rotation, scheduling, jingle-automation, track weighting and heavyness levels.

I've started coding this in 2007 for my then new webradio and abandonned work a year later. In 2017, I recoded this mess using modern tools and techniques. (see screenshots).
It's still under heavy development, but you may try it if you dare..?

 

Screenshots

 

Features

  • Managable auto-queue
  • Track weightings
  • Jingle automation
  • Schedule planning
  • Track hardness levels (work in progress)
  • Comprehensive info on your tracks (work in progress)

 

Prequisites

 

Configuration

  1. Create a MySQL Database and a special user to access it for reading and writing. (No admin rights needed)
    1. Import the included "database.sql" to create the structure and a default playlist.
  2. Copy contents of the folder "dist" to your webroot.
  3. Edit the ezWeb config located at assets/include/config.inc.php to match your environment.
  4. Setup ezStream to use ezWeb using the included ezstream.xml as an example.
  5. Make sure these files are executable by the user running ezstream:
    1. playlist.php
    2. np.php
    3. dbscan.php
    4. bin/ezweb.php

 

Use

Most of your every-day-use is done at the webinterface itself and should be pretty self-explanatory. But there's a cli-tool, to, you need for adding new tracks and bulk-editing existing ones:

Import mp3 files

/path/to/ezweb/bin/ezweb.php addfile "<playlist name>" "<filename>"

Combine with find to bulk-add files:

find /path/to/mp3s -iname '*.mp3' -exec /path/to/ezweb/bin/ezweb.php addfile "<playlist name>" "{}" \;

Add file to playlist

/path/to/ezweb/bin/ezweb.php addtoplaylist "<playlist name>" "<filename>"

Remove FILE from PLAYLIST

/path/to/ezweb/bin/ezweb.php removefromplaylist "<playlist name>" "<filename>"

 

Download

Git

You can download the latest development snapshot from my gitlab account. This includes everything you need to use and/or contribute to it.

https://gitlab.ambhost.net/stimpy/website_ezweb/

If you just want to use it, use the contents of the folder "dist".
If you want to contribute use the build-environment inside the folder "src".
When using NetBeans, all you need to do is run "npm install" to reinstall all the grunt modules. The rest is included in the sources.

Build perquisites:

 

Gravatar
mat
ezweb
hi i try to make work
i get some error

1. PHP Fatal error: Call to undefined method mysqli_stmt::ge t_result() in /var/www/ezweb/assets/classes/tracks.class.php on line 97
2. ezstream: Connected to http://localhost:8200/listen
PHP Fatal error: Call to undefined method mysqli_stmt::ge t_result() in /var/www/ezweb/assets/classes/queue.class.php on line 111

Gravatar
stimpy
missing dependency?
Hey Mat,
looks like you're missing the required mysqli libraries for php. For debian stretch the needed package is called "php-mysql", for jessie, it's "php5-mysqlnd".

5000 Characters left