Installing media hive is pretty straightforward: just run the installer. If you want to run the installer from the command line in text mode, use the -c flag. For example:
./mhive_unix_0_9_3.sh -c
You will be asked for the port you want to run media hive on during the installation process. media hive also requires ports 5080 and 1935 for flash player support. Note that if you want to use media hive from the internet, port 5080 does not need to be open in your firewall.
If you are running Vista or the beta version of Windows 7, you will probably need to run media hive as an administrator, since it needs to write to its install directory. Right click the "mhive" icon, open the properties window, then go to the "Compatability" tab and check the box next to "Run this program as an administrator."
You only need to modify the compatibility settings if you install media hive into "Program Files" or some other system directory - if you install it anywhere under your user directory, it will work fine without changing anything.
The installer can automatically upgrade a media hive installation, but only if the previous version is 0.9.2 or later. For earlier versions, you will need to copy the following items from the old media hive installation to the new one.
The mhive executable starts media hive in GUI
mode. The mhived executable starts it as a service (Windows)
or daemon (Linux/Unix).
To install media hive as a Windows service, run the following command from a command prompt:
mhived /install
To run media hive as a Linux/Unix daemon, execute the following command from a shell prompt:
mhived start
To stop media hive when it is running as a daemon:
mhived stop
Once media hive is running, point your browser at http://localhost:8080.
The first time you run the hive, it will automatically ask you to:
When asked to select a skin, select media hive Unified (unless you are using an iPhone or iPod Touch).
When configuring the catalog, note that you don't need to configure all the media types; only the ones that you want the hive to catalog. To configure a parser, simply use the browse link to find the path to the media files you want the hive to load, then click its use link. Alternately, you may type in the full path manually.
The media hive interface can do a lot of things. Here are a few videos that illustrate some of the basics. I've tried to keep them around one minute in length so they're easy to watch. Check back, as I'll be posting more soon.
Note: Until I post a video about configuring audio stream processors from the user settings page, here's a quick overview of the process. First, check the box next to the ones you would like to use and click the Enable button. Then, select the bitrate you want to use. If you are configuring more than one, it's best to keep the bitrate the same across all of them to avoid confusing your media player when you play the stream. Once you have configured the bitrate(s), click the Save button at the bottom of the page to accept the changes.
| Browse Mode |
| Seek Mode |
| Drag and Drop |
| View Configuration |
Detailed instructions for using mhive Badges can be found in the badges.txt file, located in the mhive directory.
The embedded audio player will be used when the "Use the built-in media player to play MP3s" setting is selected. (This setting is in the Player Configuration section of the user settings page.)
When using the embedded audio player, a pop-up window will open when the main page is loaded. You will not be able to hear audio if this window is not open.
You can safely minimize or otherwise ignore the embedded audio player window once it opens. To control the playlist, use the buttons located below the playlist on the main page.
The embedded audio player will only play MP3s, so you must set other audio formats to reencode to MP3 in order to play them. All other formats will cause the browser's default media player to load.
First off, bind your settings! Go to the user settings page from your iPhone and click the "Bind these settings" link for the iPhone. Once you do this, any settings you change from the iPhone will only be used by your iPhone.
To configure the iPhone to play your playlists, make sure the "Spawn media player" check box is checked on the user settings page.
If you want to use your iPhone as a remote control, remote control plug-ins are available from the downloads section. Also, be sure to read the very next section.
Under Unix/Linux, media hive does not reencode media out-of-the-box. You must supply reencoding binaries that are compiled specifically for your system.
The only audio format that media hive reencodes to is MP3. When it comes to decoding, however, it's a bit more flexible - it can convert MP4, Ogg Vorbis, and FLAC to MP3. It also does MP3 to MP3 reencoding for when you want to change the bitrate of your stream (to stream in low-bandwidth conditions, for example).
All reencoder plugin configuration files come pre-configured in the Unix/Linux distribution, which means all you have to do is supply the appropriate binaries to enable reencoding. The following programs are referenced in media hive's default reencoding configuration files:
Use the following list to determine which binaries must be present to reencode each audio format:
| MP3 to MP3: | lame |
| MP4 to MP3: | faad, lame |
| FLAC to MP3: | flac, lame |
| Ogg Vorbis to MP3: | lame |
You do not need to supply all these binaries - only the ones required for the format(s) you want to reencode.
For video, FFmpeg is used, which is capable of handling a number of different formats.
You can download source code for the above programs at the following locations:
You can also use the sources that are in the "mhive/support/source" directory. They should work fine, but aren't guaranteed to be the most up-to-date versions. Note that since FFmpeg doesn't do formal source releases, a source bundle isn't included in the media hive distribution - you'll have to go to the FFmpeg web site to get it.
Once you have compiled the programs on your system, place them in the "mhive/support" directory (or create symbolic links) and reencoding will work. The media hive's reencoder configuration files reference the binaries by the names used above, so don't rename them unless you're up for editing the configuration files (see below).
If you want to use different binaries, or want to locate the binaries in a directory other than the support directory, you will need to modify the reencoder plugin configuration files that reference the binaries in question. Reencoder configuration files are located in the "plugins" directory, and end with ".streamreencoder.xml".
If you hear static or get other unexpected behavior during reencoding, check that the correct options are configured for the command(s) in the appropriate config file. (As a suggestion, sometimes the presence/omission of the -x flag in the lame configuration can cause problems, depending on your system and the program that is supplying lame with input data.)
First, install the plug-in in your media player. Then go to the hive's user settings page, and make sure the "Spawn media player" check box is not checked. While still in settings, go to the "Event Listeners" section, check the "Remote Control Event Listener" and then click the "Enable" button. Enter the host name or IP address of the machine that is running your media player, and the port (5753), and click "Save." Now whenever you use the play/pause/stop/skip buttons on a hive interface, it will tell your media player to perform the corresponding action.