FANDOM




MusicIP Mixer Help - Cache OverviewEdit

MusicIP Mixer stores information about your tracks in a file called a cache file. This includes information about which tracks are in your collection, the associated metadata, acoustic analysis, custom tags, ratings, and so forth.

The default cache file is called default.m3lib, and lives in the following location.

  • Windows: Depends on version
    • Current: c:\Documents and Settings\username\Application Data\MusicIP\product
    • Legacy: The application installation folder
  • Mac: ~/Library/Application Support/MusicMagic
  • Linux: ~/.MusicMagic

You may want to back up this file from time to time, in case of hard disk failure or other problems.If you want to use a different location for the file, simply pass the name of the file on the command line when you start MusicIP Mixer. On Windows, you can double-click on any .m3lib file to start MusicIP Mixer using that cache file - if the file is not called "default.m3lib", then the name of the cache file (without the extension) will be listed in the Filters & Playlists window.

Note that on Windows, the Application Data folder may reside in a system dependent location - generally the location above will be correct unless you have manually changed it.

Using Multiple Cache FilesEdit

If you want to use multiple cache files (for instance, maybe you want to have different people in the same house with their own collections, or you have some types of music which you don't want to mix in the same cache), then you can do so easily.

Simply create a .m3lib file for each instance you want (you can use a text editor to create an empty file), and start the app with the new cache file as described above. All changes will relate only to the current cache file.

Sharing Cache FilesEdit

If you are using the same set of music from different computers, you might want to share your cache file between multiple machines. There are several ways you can do this.

Method One: Simple Sharing - If your machines are all using the same paths to locate your music, then you can simply use the same cache file from different machines. Either copy the file from one machine to another, or make sure each machine has access to the same cache file. If they are using the same file, you will need to be careful that you don't modify cache files on two different machines at the same time - if you do, one set of changes will get lost (and in rare cases, you might cause the cache file to become corrupt).

Note that on Windows, you might be able to use network paths to make sure your music files have the same path. These look like //this/example/path. That way there is no dependency on how the disk has been mapped to a drive letter. On Mac and Linux, you can create aliases to make the paths appear the same.

Method Two: Autoload Cache - This method will only work with a registration key, and it uses the disk-based devices feature. In this method, create a file called "autoload.m3lib" and store it in the root folder of your music directory. (If you have multiple music folders, you will need to repeat the process for each one). Then, inside MusicIP Mixer, choose File/Add Device and select the root folder where the music is stored. Next, add the associated music. This cache will show up as a separate entry in the Filters & Playlists view. Any machine which mounts the folder as a disk device will share the autoload cache. The paths will be handled correctly even if shared between Windows, Linux, and Mac versions of the app.

Other NotesEdit

If you want to move ratings between caches, you can use the Import/Export Ratings Power Tool. This will let you save ratings from one cache, and import them into another cache.

Although the acoustical information created by MusicIP Mixer (fingerprints and analysis) is stored primarly in the cache, you can also save this information into your music files directly as custom tags. This will make things easier if your songs frequently change location, or move from machine to machine. To do this, right-click on one or more songs and choose Archive Analysis. This will write two extra tags to each file, in a format appropriate for that file (for example, ID3 tags for MP3 files). The next time MusicIP Mixer loads one of those files, it will be recognized immediately.

If you have devices, each device will also have it's own cache file, as hinted at above in the section describing autoload files. These caches will live either in a autoload.m3lib file in the root of the device, or in the devices subfolder where the default cache file is located.


MusicIP Mixer Help - Command Line OptionsEdit

MusicIP Mixer supports many options to configure the application. The following lists some of the more advanced options, which you can set by passing arguments to the command line (Windows/Linux) or by updating your environment (Mac).

You can pass one .m3lib file on the command line, to use that cache. This will create a new cache, if no file of that name exists.


Unless noted, the following arguments apply only to the Windows version. If you are starting the Mixer by clicking on a desktop icon, you can set command line parameters by right-clicking on the icon, choosing Properties, and adding the arguments to the Target, after the name of the program (place spaces between the program name and each argument).


-albumsbyname (added in 1.8) When grouping songs by album, only use the album name field, and not the directory where the songs are located. (Useful if iTunes is organizing your music.)

-analysistimeout # Wait longer before timing out during analysis. The # is a scaling factor (e.g. 2 will cause the timeout to be twice as long). [win32, linux]

-anyimage (added in 1.1.4) When a song does not contain an embedded image, use a random image from the same folder as the song. (By default the Mixer only uses cover.* or folder.* to show images).

-artists folder Show artist artwork when no other image is available. For example, to find art of U2, we would look for images im the c:\root\U2\ directory. [win32, linux]

-asciitags Always store ID3 tags as ASCII (default is UNICODE)

-deutsch Force the Mixer to use the german localization.

-devicesfolder folder Store device related information in this directory (default is devices subfolder of installation).

-extm3u_pattern pattern Specify a pattern which will be used to annotate .m3u files using EXTINF format. [win32, linux]

-feedback=[on|off] (added in 1.8) Send anonymous feedback to MusicIP whenever you use More Like This or Less Like This.

-fp # Adjust fingerprint sensitivity. This can be used to find more large-scale duplicates (i.e. remasters of the same song), but will also cause some non-duplicates to be marked as duplicates. A typical number to try would be 1.2. [win32, linux]

-ideasfolder folder Store CD Ideas related information in this directory (default is ideas subfolder of installation).

-itunesappend When pressing play to send songs to iTunes, append to the current list instead replacing it (only if COM is enabled).

-itunesdb file Use the iTunes database from the indicated file, instead of searching the usual places (used to sync with iTunes).

-itunesnocom Do not use COM to communicate with iTunes.

-logex Print extra diagnostics to log.txt. [win32, linux]

-minimized Start the Mixer minimized.

-mip (added in 1.6) Register MusicIP Mixer as the default application for processing MIP URLs. You can use -demip to undo this action.

-multiscreen Do not enforce screen borders (allows positioning on multiple monitors). Obsolete as of version 1.5, which autodetects multiple monitors)

-noauto Disable automatic passes - this includes the initial scan if watchfolders are configured, and autostarting analysis (when you add new music, for instance).

-nodefaultgenres (added in 1.8) Do not include any default genres in the pull down list in the tag editor.

-nodiskscan (added in 1.1.4) Do not scan drives looking for devices. You will need to manually add devices if you use this option.

-notrash (added in 1.1.6) Don't send deleted files to the Trash/Recycle Bin. On Mac, set the "Use Trash" property.

-nowatcher Disable watch folders.

-publicparking (added in 1.5c) You can pass this option when you are letting others use your version of the mixer (as in a public setting). This will hide your registration key, so it cannot be copied, and will prevent accidental deletion of songs or playlists from your cache or disk through the mixer (these options will be disabled).

-readonly (added in 1.8) Disable any features which would write to your song files. These features require user initiation anyways, but this option will not even allow manual updates from the mixer.

-remoteaccess Allow remote access to stream your music using the HTTP API.

-register ext (added in 1.6) Register MusicIP Mixer as the default application for file type EXT (include the ., as in -register .mp3). You can use -deregister to undo this action.

-rgalbum (added in 1.7) Apply album level ReplayGain volume adjustments during playback (requires ReplayGain tags to be present in your audio files).

-rgtrack (added in 1.7) Apply track level ReplayGain volume adjustments during playback (requires ReplayGain tags to be present in your audio files).

-slim Add SlimServer as a selectable player (only works if SlimServer can be found at runtime). This happens automatically in version 1.1.5 or later.

-slimappend (added in 1.5) When sending songs to SlimServer, append to the current list instead of replacing it (in this mode, the SlimServer will not start playing when this happens - only the append will occur).

-tray (added in 1.7) Add an icon to the notification tray, and when the mixer is minimized, don't put it on the task bar. The icon can be used to restore the window, or do basic functions.

-trayminimized (added in 1.7) Start the application minimized to the notification area (this option includes -tray as a side effect).

MusicIP Mixer Help - Using MP3 Players and Other DevicesEdit

As of version 1.1.4, MusicIP Mixer has support for devices which can be mounted as removable drives. Note that this is a premium feature which will required an active key (either paid or trial).

Getting started with your deviceEdit

When you have a device connected, it should show up automatically under the Filters & Playlists window with the device name and drive letter. If you add and remove devices, this window should be updated automatically. If for some reason it does not, you can try using the File/Devices/Scan For New Devices menu option.

The first time you select your device, you will be asked whether you want to refresh the view. This will load a snapshot of all the songs and playlists stored on the device into MusicIP Mixer. Once this is complete, you will be able to browse the collection of music on your device.

The information about your device is normally stored in the devices subfolder where your other MusicIP Mixer files are located (on Windows, this is the installation directory). This allows MusicIP Mixer to have your music collection instantly available next time you start MusicIP Mixer. Before you do your first refresh, you have to option Store cache on the device. If you select this option, the cache file will be stored in the root folder of your device as autoload.m3lib. Whenever MusicIP Mixer finds an autoload cache, it will load it automatically. This cache file is portable between Mac, Windows and Linux, so you can move your device freely between machines and share the cache.

Moving your musicEdit

Once your device is ready, you can copy songs to or from your device easily using drag and drop. To copy songs to your device, drag them from your library or file explorer and drop them onto the node representing your device. To copy songs from your device to your computer, drag them from your device library to the node representing your Library. Note that DRM'd files will be copied, but licenses will not be transferred.

The files will be stored according to the publish pattern of your library, or associated device. To configure this, right-click on the library or device, and choose Properties. The Song publish pattern is a template which describes where files will be stored. For example: Music\%artist\%album\%0t - %name.%extwill store your songs into the Music folder, with subfolders for artist and album name. The actual song filename will be the track number followed by a dash, the song name, and finally the file extension. For a detailed overview of the pattern options, see the patterns overview. You can also copy your songs using the Copy/Move/Rename Files... menu, available by right-clicking on the songs you want to copy.

Creating playlistsEdit

When you create a new playlist on a device, you will asked to name the playlist. The playlist will be stored as an M3U file on your device, using the Playlist publish pattern, which can be configured by right-clicking on the device and selecting Properties. (See the previous section about song publish patterns for more details).

You may need to set some options on how the playlist is stored to support your device. By right-clicking on the playlist, you can set either long or short filenames (on Windows), EXTM3U format or plain lists,, and short or relative paths. You may need to experiment to see what works best on your device.

Using network drivesEdit

You can take advantage of the disk-based device support to manage multiple caches from a single MusicIP Mixer. Just use the File/Devices/Add New Device... menu and select the root which contains music which you want to treat as a device. This might be useful for sharing caches on a networked drive which is mounted in different locations on different machines.


Device specific notesEdit

Apple's iPodEdit

The iPod stores extra information about your songs in a proprietary database which MusicIP Mixer does not currently support directly on the device. For this reason, publishing to iPods is currently disabled. MusicIP mixes and playlists can be published to the iPod via iTunes. On Mac, there is an AppleScript which can create MusicIP mixes within iTunes.

You can use MusicIP Mixer to copy music directly off your iPod into your library.

MusicIP Mixer Help - Dealing with Duplicate SongsEdit

You can use the MusicIP Mixer to find duplicate songs in your collection. This will only work for songs which have been fingerprinted, because it will only show songs which have the same acoustic sounds. Currently, this is a premium feature, meaning you will need a registration key.

To use this feature, select Library/List Duplicates. This will list all the songs that appear more than once in your library. This is helpful in weeding out songs which you would like to delete. Once you have one or more songs selected which you would like to deleted, press Ctrl-D (Cmd-Del on Mac) and you can remove them from your cache. To also remove them from disk, select the "Remove From Disk" checkbox. Where possible, these files will be moved to the Trash or Recycle folder rather than immediately deleted. To be safe, though, you should consider this a non reversible action.

TipsEdit

You might want to see more information about the songs when you are deciding which songs to keep and which to delete (if any). You can add, remove, or reorganize the columns visible in the song list to include bit rate, file size, or just about anything else. On Mac, select View/View Columns..., or right-click on the headers of the song list. On Linux and Windows, use the File/Customize Options menu and select the Playlist section.

If you want help in deciding which songs to delete, you can use the Mark Duplicates power tools. This will mark all but one of each unique song, preferring to keep the "best" version of each song. If you use this option, please review the choices before deleting any songs.

If you don't want some songs to show up in your duplicate list, you can right-click on the songs in the duplicate list and select Ignore This Duplicate. For instance, you might have the same song as part of two different albums, but you don't want to delete either song. If you later want to reset the status of ignored duplicates, you can do so from the General section of the Preferences panel. (This will also show how many songs are currently marked.)

Other NotesEdit

Sometimes you might see songs which are not exactly what you expected - either songs which seem to be incorrectly marked as duplicates, or not seeing duplicates which you expected to see. Although it's rare that you will get anything other than the expected answer, there is still a bit of an art to the process of fingerprinting.

For instance, if you have song A and song B which are copies of the same recording, but song B was significantly remastered, these songs might be considered different, as they will have different attributes describing them. If you have song A and song B which are different recordings (perhaps even different artists) of the same song, but they sound quite similar, these may be identified as duplicates. For the MusicIP Mixer, the key issue is that any songs sharing the same fingerprint must also share the same analysis data.

Another rare possibility is that since the fingerprints only look at the first two minutes of each song, if the songs differ only after the first two minutes, these will always be considered the same. Different language versions of the same song will also generally be considered duplicates, as will remixes with only trivial changes.

For advanced users, you can try tweaking the sensitivity of the fingerprint matching. This requires passing a command line option, and only works with Linux and Windows currently. Increasing the threshold (by passing, for instance, -fp 1.2, will allow you to find more large-scale duplicates (i.e. remasters of the same song), but will also cause some non-duplicates to be marked as duplicates.

MusicIP Mixer Help - ExclusionsEdit

MusicIP Mixer allows you to set three different filters which act globally on your use of the application. These filters are called exclusions, since each one excludes certain files from being used in different conditions. You can set these exclusions using the same options as regular filters.

You can view and update your exclusions from the preferences panel (File/Customize Options). The three exclusions are:

Don't Add Songs Like This - this exclusion lets you choose songs which should not be added to MusicIP Mixer when scanning directories. Because the files have not yet been loaded, you have fewer options for these filters, primarily related to the filename. You might want to exclude all files in a certain folder, or with a certain extension. You can override this exclusion by adding files explicitly (rather than directories), or by dragging and dropping songs on to the Mixer. The default exclusion here is to add all songs.

Don't Analyze Songs Like This - this exclusion lets you choose songs which should not be fingerprinted or analyzed. You can use this for songs which are not music files, or which you will never want to use in mixes. If there are filters you would have liked to use as an Add Exclusion, but couldn't because they required some metadata fields, you can add them here as a next best thing. If files already have analysis information archived in them, they will show up as analyzed regardless of the setting here, because analysis did not have to be performed on them. The default exclusion here is to ignore songs which are spoken word or podcasts, or songs which are disabled. (Disabled songs are songs which have been marked by the user as disabled - you can do this by right-clicking on songs, or adding the Enabled column to the song list, and using the checkboxes there. This varies by operating system. This part of the exclusion shows up using the odd language "Enabled is missing", meaning "Disabled")

Note: if you have a song which you think should be analyzed, but isn't you might want to check the analyze exclusions and see if the song is somehow covered - if so, you might need to adjust the exclusion.

Don't Include Songs Like This in Mixes - this exclusion lets you exclude songs from ever showing up in mixes. These restrictions will be applied in addition to any other filters which are being used when creating the mix - there is no way to override this exclusion. The default exclusion here is to skip any disabled songs (as described above). If you have an analysis exclusion you may also want to duplicate it here if you really want to make sure the songs will not show up in mixes. You can always add any song manually to any playlist.

MusicIP Mixer Help - Using FiltersEdit

MusicIP Mixer lets you create filters to narrow down the set of songs you are currently looking at. If you want to use filters, make sure the Filters/Playlists window is visible by choosing View/Filters/Playlists. You can create a new filter by right-clicking on the Library in this window, or by right-clicking on the background.

When you create a filter you specify one or more conditions which must be satisfied for a song to be included in the filter. You may combine these conditions with and or or (i.e. ALL the conditions must be true, or ANY of the conditions must be true).

Whenever a filter is selected, all the genres/artists/albums/songs which are not allowed by this filter will be hidden. You can always select the library node to clear any current filters.


The following lists the current filter options, along with any notes specific to each field.

# Artists on Album number This counts how many different artists are associated with a given album. (Use it to find compilations of music by different artists).

# Songs by Artist number This counts how many songs by each artist are in your collection. Use it to filter out your most popular artists.

# Songs on Album number This counts how many songs are on each album.

Album text The name of the album. If this field is missing, the value is Miscellaneous.

Artist text The name of the primary artist. If this field is missing, the value is Various Artists.

Bitrate number The bitrate, or average bitrate for vbr files.

Composer text The name of the composer, if any.

Conductor number The name of the conductor, if any.

Date Added date The date this song was added to your MusicIP library.

File text The name of the file, including the full path.

Filter filter This lets you have filters which refer to other filters. You can use this to create more complex relationships of any and all than a normal filter will support (for instance "A and B or C"). If the filter being referenced is deleted, the condition will not have any effect.

Genre text The name of the genre. If this field is missing, the value is Miscellaneous.

Image boolean This lets you check if the file has image data embedded in it.

Last Modified date The date the file was last modified.

Length (seconds) number Duration of the song, in seconds.

Lyricist text The name of the lyricist, if any.

Lyrics boolean This lets you check if the file has lyrics embedded in it.

Orchestra/Band text The name of the orchestra or band, if any.

Rating number A rating, with a value between 1 and 5. Unrated songs will have a value of 0.

Security boolean, Windows only This lets you check if the file has DRM (digital rights management). Files which are restricted in use will have this flag set.

Size (bytes) number The size of the file in bytes.

Status text The current status of each song. Green songs will be either Analyzed or Identified (to be verified). Red songs will be To be analyzed. Black songs will be either Unanalyzable or Unanalyzable (insufficient resources).

Stored Analysis boolean This lets you check if the file has MusicIP data embedded in it.

Title text The name of the song.

Track number The track index of the song. If there is no track index, the value 0 will be associated with the track.

Year number The year associated with the track, if any. If there is no year, the value is 0.

MusicIP Mixer Help - Global Hot KeysEdit

Global hot keys are currently only available on the Windows version of MusicIP Mixer. To assign global hot keys, create a file called hotkeys.m3key in the same place as your user preferences (the install dir), then global hot keys will be active while the app is running. Each line should specify a key and action.

A key is any number of modifiers + a key, like this: Ctrl+P

Valid modifiers are Ctrl, Shift, Alt, Win. (For compatibility with some other solutions, you can also use an abbreviated format: Ctrl=^ Alt=! Win=# Shift=+). Many of the extended keys have the usual names: F1 through F10, bs, del, down, home, end, esc, left, mednext, medpp, medprev, medstop, mute, pgup, pgdn, right, tab, up, volup, voldn.

Actions which play music use the internal player, and are only available if the internal player is enabled. Valid actions currently are:

Keyword Action
mix?... Create a play a mix with the given options (just use "mix" to get an instant mix). Details on the options are the same as the HTTP API.
mute Mute application volume.
next Skip to the next track.
pause Pause or resume the current playing song.
play Start playing (same as pressing the Play button).
prev Skip to the previous track.
scan Implements the "Scan & Mix" (green) button. Initiates a scan the first time, and creates a mix on the second press.
setRating?rating=# Rate the currently playing song to # (numbers supported are 0 through 5)
stop Stop playing.
toggle Hide/show the app window.
voldn Decrease application volume.
volup Increase application volume.

So, a valid line might look like this: Ctrl+Alt+P play

MusicIP Mixer Help - MoodsEdit

Creating your own moods with the MusicIP Mixer is very easy. The first step is to create a list of songs which defines a mood to you. MusicIP Mixer will then use this list of songs as the basis to create a virtually unlimited selection of new playlists which also reflect this mood (limited only by the music in your collection).

On Windows/LinuxEdit

Once you have a list of songs which you want to use to define a mood, store it as MoodName.m3u in the Moods subdirectory where the MusicIP Mixer is installed (MoodName should be replaced with the name you want to associate with this mood). You can use the Moods/Save As Mood menu item to do this automatically.

For instance, you might create a file called Happy.m3u and store 10 songs which make you feel happy. After saving this in the Moods directory, you can choose Moods/Happy from the menu bar, and MusicIP Mixer will automatically create a new playlist which reflects those songs.

A "binary" mood file is stored as a .m3mood file instead of a .m3u file - the difference is that the .m3mood file contains a binary description of your mood. You can swap .m3mood files with your friends, and they will be able to make mood mixes based off your original playlist, but using songs from their collections.

On Mac OS XEdit

There is no special moods directory on the Mac. Just store your playlist as a normal .m3u file (you can use the File/Save As Playlist... menu). To use a playlist as the source of a mood mix on Mac, just use the Power Tools/Load Mood... menu, and choose the playlist you want to use.

MusicIP Mixer Help - Organizing Your MusicEdit

You can use MusicIP Mixer to copy, move, or rename your music. This is useful for reorganizing your collection, making backups, or getting images ready to burn to CD.

To organize your music, select the songs you want to copy, move, or rename. Right-click on them, and select Copy/Move/Rename Files.... The file organization dialog will come up, which will have a list of the files and the new names. The options are as follows:

Pattern - choose the new filename and/or location where you want the file to go. You can use any of the support options described in the patterns overview. For instance, you convert your files to "Track number - Song name.mp3", you might enter: %0t - %nThe appropriate file extension (.mp3, .wma, etc) will be added automatically if you leave it off.After selecting or entering a pattern, press the Apply Pattern button to see what the new filenames will be.

Copy Files or Move/Rename Files - if you select Copy Files, then the files will be copied from the old name to the new name. Your MusicIP library will only contain references to the old songs. Use this option to backup your music, or to create collections to burn to CD. If you select Move/Rename Files, then the files will be moved or renamed to the new names, and your MusicIP library will be updated to point to the new names. Use this option to clean up how your files are stored on disk.

Remove empty directories - if you are moving files, you may leave behind empty directories. If you select this option, then any directories which are empty as a result of moving files will be removed automatically.

When you are satisfied with the options, press the OK button to copy, move, or rename all the files listed.

MusicIP Mixer Help - PatternsEdit

The following patterns are defined. Some patterns have multiple keys, for ease of use. If a value is missing, then the expansion will not happen.

Key Meaning
a, artist Artist name
composer Composer name
conductor Conductor name
lyricist Lyricist name
orchestra Orchestra name
n, name, title Song title/name
album Album name
y, year Year
t, track Track number
0t, 0track Track number, preceded with a 0 if it's less than 10
g, genre Genre name
f, file Filename
abc First letter of artist name (using sort order)
abc2 First two letters of artist name (using sort order)
abc3 First three letters of artist name (using sort order)
x, ext File extension (mp3, wma, etc.)
1 The name of the directory containing the file (1st parent of file)
2 The second parent directory containing the file (parent directory of %1)
3 The third parent directory containing the file (parent directory of %2)
4..9 4 through 9 continue the pattern of accessing parent directories (as of version 1.1.5)
si, 0si, 00si, 000si Song index for song in current list (preceded with a 0 if it's less than 10, and so forth) (as of version 1.7)

The following modifiers may also be applied as prefixes to the field names:

Key Meaning
. Terminate field (no expansion)
^ Convert string to all uppercase
, Convert string to all lowercase
@ Remove accents
~ Guess case (capitalize first letter of each word, exception certain English words)
! Guess case (capitalize first letter of each word)
# Separate words by case (ThisIsAnExample becomes This Is An Example)
_ Replace spaces with underbars
< Truncate end of string to 32 chars (foo...) (1.1.6)
You can append an option specifier to customize truncation:
{len} - truncate to len characters
{len, pattern} - truncate to len characters, use pattern instead of ...
> Truncate beginning of string to 32 chars (...foo) (1.1.6)
You can append an option specifier to customize truncation:
{len} - truncate to len characters
{len, pattern} - truncate to len characters, use pattern instead of ...
<> Truncate middle of string to 32 chars (foo...bar) (1.1.6)
You can append an option specifier to customize truncation:
{len} - truncate to len characters
{len, pattern} - truncate to len characters, use pattern instead of ...
>< Truncate beginning and end of string to 32 chars (...foo...) (1.1.6)
You can append an option specifier to customize truncation:
{len} - truncate to len characters
{len, pattern} - truncate to len characters, use pattern instead of ...

Example 1: %0t - %a - %n.%ext
This will expand to tracks like this: 01 - The Beatles - Come Together.mp3

Example 2: %abc\%0t - %n.%ext
This will expand to tracks like this: B\01 - Come Together.mp3

MusicIP Mixer Help - Power SearchEdit

Power Search is an advanced feature of MusicIP Mixer, and requires an active registration key.


Power Searching allows you to create simple text-only filters which you can use in a variety of settings. For instance, you can go to the onscreen search control, and enter '?' to start a Power Search (currently, this requires you to enable Power Search from the Power Tools preference panel). Then, you can type in a Power Search and press Enter to execute the search. For instance, try this:?songs by women When you press Enter, the search will be applied, much like a filter. You can mix into the Power Search if you have Power Tools enabled - right-click on the Mix button and choose "Current List"You can also use Power Search in the HTTP API any place a filter is allowed - just make sure to start the Power Search with a question mark. For instance,/api/songs?filter=?songs+by+women If you having problems creating a valid Power Search, try to keep it simple. The easiest rules will look like:condition1 and condition2 orcondition1 or condition2 You can create more complicated conditions using parentheses.---- The following is a list of allowed keywords and their meanings. Most of these correspond with columns which can show up in the list of tracks, although a few can only be accessed through Power Searches. Fields are accurate as of the most recent refresh.

added, dateadded Timestamp when the track was added
album Name of the album
albumartists Number of artists on the album (integer)
albumgenres Number of genres associated with album (integer)
albumtracks Number of tracks on the album (integer)
artist Name of the artist
artistalbums Number of albums associated with artist (integer)
artistgenres Number of genres associated with artist (integer)
artisttracks Number of tracks by the artist (integer)
bps, bitrate Bitrate of the track (integer)
composer Name of the composer
conductor Name of the conductor
drm, hasdrm True if the track is restricted by DRM
disabled True if the track is disabled
disk, partofset Disk number, or part of set (includes A/B form if stored)
enabled True if the track is enabled
file, filename, path Full path of the track
genre Name of the genre (from your tags)
hasanalysis True if the track has analysis embedded
hasimage True if the track has an image embedded (does not consider folder images)
haslyrics True if the track has lyrics embedded
lastplayed Timestamp the file was last played (integer)
length, seconds Track length in seconds (integer)
lyricist Name of the lyricist
modified, lastmodified Timestamp the file was last modified
now Current timestamp
orchestra Name of the orchestra
playcount How many times the track has been played (integer)
publisher Name of the publisher
rating Track rating (integer)
size, bytes Size of the track in bytes
songs, tracks Place holder for creating searches (i.e. "songs by women")
status Track status
title, name Name of the song
track Track index (integer)
unplayed True if the track has never been played (according to stored info)
vbr True if the track has variable bitrate encoding
year Year (integer)
X minutes, hours, days, weeks Convert X from seconds to indicated units

The following words were added in version 1.9, and expose information which is derived from MusicDNS. Note that all names are case insensitive.

artistBegin First year an artist released new music
artistDNSgenre MusicDNS genre for a given artist
artistEnd Last year an artist released new music
artistReach How popular an artist is based on MusicDNS (0..5)
genreDNSgenre MusicDNS genre for a given genre
songBegin First year a song was released
songDNSgenre MusicDNS genre for a given song
songReach How popular a song is based on MusicDNS (0..5)
songRelativeReach How popular a song is (relative to other songs by that artist) based on MusicDNS (0..5)

The following is a list of supports operators (conditions). You can either use english words, or mathematical/programming symbols.

by type Special pattern for identifying artist types - currently supported are men, women, groups, collaborations. Artist types come from the MusicIP server - not all artists will have types. Men and women only include solo artists.
by name Shorthand for "artist contains name"
with condition Shorthand for and
without condition Shorthand for A and not B
and, && Combine two conditions as A and B.
or, Combine two conditions as A or B.
not, ! Negate a single condition (not A)
is, =, == Compare two values for equality.
!= Compare two values for inequality.
contains See if term A contains term B (i.e. A contains the subtext B).
casecontains The same as contians, except case must match exactly.
strlen The length of the preceding string (as in "artist strlen")
<, <=, >, >= Mathematical comparisons.
-, +, *, / Mathematical operators.

You can also extend the Power Search vocabulary by defining your own Power Words.

MusicIP Mixer Help - Power WordsEdit

MusicIP Mixer has support for an extensible vocabulary inside Power Search. You can define your own words in terms of existing terms, and they will be usable in their own Power Searches.

To to this, create a file called powerwords.txt, and store it where the default cache is located (on Windows, this is the installation folder). Each line will contain a definition or an alias. You can add comments by starting the line with any symbol besides _.

Aliases: You can create a new alias which represents any existing word, by writing the line

und=and

In this case, it means whenever the word "und" is used, it has the same meaning as "and". You can define as many aliases as you like, but the right-hand side should alway be a basic word or definition (not another alias). The entire Power Search vocabulary is available. Definitions: A definition lets you create a new word which represents an existing boolean expression. You can use these to create a more intuitive vocabulary based on how you think about your own music collection. You can create a new definition like this:

crappy: bps <= 96
recent: added > now - 7 days

Thus, "crappy" now means songs with a bitrate less than or equal to 96. "recent" now means songs added within the last 7 days.With these definitions in place, you can do a search "recent crappy songs" to select all low bitrate downloads in the last 7 days (presumably to delete them!).

Here are some more examples:

favorite: rating > 3
rap: genre contains "rap"
country: genre contains "country"
rock: genre contains "rock"
classical: genre contains "classical"
christmas: title contains "jingle" or title contains "christmas"
artwork: hasimage
protected: drm
tiny: bytes < 1000000
dead: status contains "unanalyzable"
mixable: status startswith "analyzed" or status contains "identified"
unmixable: !mixable
old: year < 1950 and year != 0
fifties: year >= 1950 and year < 1960
sixties: year >= 1960 and year < 1970
seventies: year >= 1970 and year < 1980
eighties: year >= 1980 and year < 1990
nineties: year >= 1900 and year < 2000
mp3: file endswith ".mp3"
wma: file endswith ".wma"

[sample file]

Just save this as .txt

artwork=hasimage
excluding=without
protected=drm
unrated: rating=0
rated: rating != 0
crappy: bps < 96
recent: added > now - 7 days
favorite: rating > 3
rap: genre contains "rap"
country: genre contains "country"
rock: genre contains "rock"
classical: genre contains "classical"
christmas: title contains "jingle" or title contains "christmas"
tiny: bytes < 1000000
dead: status contains "unanalyzable"
mixable: status startswith "analyzed" or status contains "identified"
unmixable: !mixable
old: year < 1950 and year != 0
fifties: year >= 1950 and year < 1960
sixties: year >= 1960 and year < 1970
seventies: year >= 1970 and year < 1980
eighties: year >= 1980 and year < 1990
nineties: year >= 1990 and year < 2000
mp3: file endswith ".mp3"
wma: file endswith ".wma"



MusicIP Mixer Help - Power ToolsEdit

Power Tools are advanced features of MusicIP Mixer, and require you to have an active registration key.

You can enable Power Tools from the Preferences dialog. When you enable Power Tools, a new menu will appear with advanced options, and several other new options will be added to some of the context menus.

Power Tools Menu

Advanced Search
Anchored Smooth Shuffle
Compare Caches
Embed Images
Fix Artists
Freestyle Mix
Mark Duplicates
MIP URLs
Morph Playlist
Ratings/Tags
Save As Binary Mood
Scan Playlist
Spice Playlist
Validate Audio
Waypoint Mix
View Menu

Choose Artist View

Mix Menu (right-click on Mix button)

Current List

Artist Menu (right-click on an Artist)

Related Artists

Power Search

On Screen Searching

Advanced SearchEdit

This brings up an extra search window you can use to search artists, albums, or songs. This lets you choose songs to add to the current selections, or to replace the current selections.

If Power Tools are enabled, you can activate the advanced search with the Ctrl+F shortcut.

Anchored Smooth ShuffleEdit

This tool operates on the current playlist, performing a smooth shuffle. The difference between this and a regular smooth shuffle, is that certain points in the list are fixed. (Either the first track, or the first and last tracks, or just the last track).

Compare CachesEdit

The user selects a second library, and we create a third library which is either the songs the first two libraries have in common, or songs in the second library which are not in the first library. This lets you see which songs you share with friends, and which you do not.

Embed ImagesEdit

This tool operates on selected songs (or all songs if none are selected). If a song does not have an image, but we do have a folder image, then that image is automatically burned into the associated files. The last popup indicates how many songs were modified.

This is especially useful if your MP3 player can show album artwork. Using this tool will make sure your images are available on your player, if you have them stored as files.

Fix ArtistsEdit

This tool operates on the artist metadata. Each case where two artist names represent the same artist will pop up a dialog. This will show radio buttons with each spelling, so the user can pick one they prefer. The buttons are "Apply Changes", "Skip For Now", and "Bad Suggestion". When the user is done with this pass, we will bring up the automatic tag editor with all the appropriate changes to be applied. The settings will be remembered. Additionally, any Bad Suggestion cases will be sent to the server, so we can update our artist info if necessary. The source of data for this power tool is the server.

Freestyle MixEdit

This is a special kind of mix. This will start the playlist from your initial seed song, and create a playlist which gradually moves through the available songs. Which direction it moves, and where it ends up, are completely random - if you want to stick within a certain set of music, select a filter before using the Freestyle Mix menu.

Requires 1.9

Mark DuplicatesEdit

This tool operates on the duplicates list. All but one from each set of duplicates will be selected. You can then press Ctrl+D and remove all duplicates from your disk. Yikes! Please make sure you want to do this before proceeding. Note, however, that the Power Tool will only select the songs, so you can run it without risking anything. In general, higher quality rips will be preferred to lower quality ones. Songs from an album will be preferred to single songs. When in doubt, we'll pick one randomly!

MIP URLsEdit

This menu lets you interact with the MIP protocol. Use the Register Protocol menu to enable the MIP protocol, and Remove Protocol to disable it. The Create MIP URL command will create a URL which represents the currently selected mix (you must select a mix to use this command). You can share this URL with others to let them create similar mixes from their own collections (this will require them to have the MIP protocol enabled on their version of the mixer).

Morph PlaylistEdit

This tool operates on the current playlist. It will create a new playlist which sounds as much as possible like the current playlist, but does not use any songs from the current playlist.

Ratings/TagsEdit

This tool saves all your ratings to a single binary file - filenames, fingerprints, and ratings. You can export or import. This lets you back up your ratings to an external source. Note: Ratings are associated with fingerprints, not metadata. On import, all songs matching the print will be rated. However, only songs which are not already rated will be updated during the import (no existing ratings will be overwritten).

Save As Binary MoodEdit

This tool saves the current playlist as a .m3mood file - this can be stored in your Moods folder to create Mood Mixes. Since this file contains all the necessary analysis information to make mixes, it can be used even where the original songs are not available. This provides a way for you to share your favorite moods with your friends.

Scan PlaylistEdit

This tool is only available if the embedded player is enabled. This tool operates on the current playlist. The songs from the current list will be played in order, in scan mode (just a portion of each song). This lets you quickly find a song which you can only identify by sound.

Spice PlaylistEdit

This tool operates on the current list of songs. Effectively, it applies the mix algorithm to the current playlist instead of an automatically created playlist. This can be used, for instance, to make a 20 track "Rock" mix, or to filter out all duplicates in a list of songs. The Mix Exclusions are also applied.

In the "Ignore Size Limits" mode, the mix size will be ignored - all songs which satisfy your conditions will be used.

Validate AudioEdit

This tool operates on the currently selected songs (or all songs if none are selected). Each song is tested for validity - i.e. can we decode the entire signal, and does the length match what we expect? We also check whether are any large gaps of silence - these typically indicate hidden tracks, or other tricks more appropriate for CDs than MP3s. The validation results are stored to a text file, which you choose before validation runs.

Waypoint MixEdit

This tool operates on selected songs. This will make a playlist which starts at the first song and ends at the last song. If more than two songs are selected, they will be sequenced linearly into the paths. The total mix size will use the usual mix settings.

There are two different types of waypoint mixes: rigid and loose. Rigid will try to find exact songs at the transition points, which may cause some weird pop-ins. Loose will make looser mixes around the waypoints.

View/Choose Artist ViewEdit

Using this option, you can control whether the middle "Artist" view contains Artists, Composers, Conductors, Lyricists, or Orchestras. This depends on the metadata in your music files.

Mix/Current ListEdit

Right-clicking on the Mix button lets you choose specific filters to use for making mixes. If you choose the "Current List" option, the mix will be made using only songs in the current song list. You can use this to make lists using just a few songs from your collection without having to create a filter.

Related ArtistsEdit

If the Mixer has information about artists which are related to the current artist, and Power Tools are enabled, then you will get an extra option "Related Artists" - selecting this will show artists which are related directly to the artist selected. In particular, aliases for the artist will be selected (Billy Joel and Joel, Billy). Also, if there is a direct relationship between two artists (i.e. John Lennon and The Beatles), then the other artists will be selected.

Disclaimer: This tool uses information stored on the main MusicIP servers - if there is a relationship not showing up in your collection, it's probably because this relationship is not yet stored on our server. You can send email to support@musicip.com to let us know about new relationships you would like to see in MusicIP Mixer.

Note: This is different from the "Similar Artists", which shows acoustically related artists.

On Screen SearchingEdit

Power Searching lets you type simple expressions to find specific sets of songs. You can find out about Power Search on the Power Search page.


MusicIP Mixer Help - RecipesEdit

This feature requires version 1.8 or later of MusicIP Mixer.

Recipes are a means of customizing the playlists created by MusicIP. The file recipes.xml contains the set of recipes which are available - this file is stored in the installation folder on Windows. To choose a recipe, select it from the Mix panel of the Preferences dialog.

You can define your own recipes by adding them to your recipes.xml file - the examples provided in that file can provide templates for adding your own options. The following section provides a reference for the available options. All conditional expressions are expressed as Power Searches.

Constraints: A constraint lets you impose extra conditions on the songs which will be included in a mix. The general form is: <constraint>expression</constraint>Supported options:

Attribute Value
cond Condition under which this constraint should be applied - you may refer to the seed songs in this expression.
max Maximum percentage of songs in the list which should match the constraint (default scale is 0 to 1).
min Minimum percentage of songs in the list which should match the constraint (default scale is 0 to 1).
cutoff Number of songs which should be skipped trying to enforce the constraint (default 50, 0 means unlimited).
scale Choose a different scale for min/max. Typically you might set the scale to 100 to express min and max as more traditional percentages.

Modifiers: A modifiers lets you nudge certains songs to show up more or less often in a playlist. The weight attribute controls how gentle or strong the nudge is. The general form is: <modifier weight="#">expression</modifier>Supported options:

Attribute Value
cond Condition under which this modifier should be applied - you may refer to the seed songs in this expression.
weight Roughly speaking, how much more likely this song should be to show up in a mix. A value of 2 would mean twice as likely, and a value of .5 would mean half as likely.


MusicIP Mixer Help - Setting Up a MusicIP ServerEdit

If you are using a different program or hardware device which interacts with one of MusicIP's services, you may not need the application user interface to be running at all times. MusicIP Mixer includes a standalone server which can provide the services supported by the MusicIP Mixer (this is also called the "headless" version of the mixer, as it does not include a graphical user interface).

You configure the MusicIP Server by editing a server configuration file. This file has the name mmm.ini - consult the platform specific notes below on where this file is located. You should create a startup file as necessary by modifying the sample included in the distribution. This file is read when the server starts, so make sure it's configured correctly first, as described below.

If you are using the GUI application and the server together, you may create conflicts where both applications are trying to update your cache. In this case, you will be prompted from the application whether you want to overwrite any changes made by the server. From the server, you will need to manually reload the cache if you want the server to use modified data.

WindowsEdit

On Windows, the MusicIP Server runs as a system service. The configuration files live in the installation folder. To install the service, run: MusicMagicServer installYou can uninstall this at a later point using this command: MusicMagicServer uninstallTo start the service, run the following command, or use the Windows Services panel: net start "MusicIP Server"To test if the server is running, open your browser and enter the URL where you installed MusicIP Mixer: http://localhost:10002/apiTo stop the service at any time, run the following command, or use the Windows Services panel: net stop "MusicIP Server"===Mac OS X=== From the installation DMG, open up the MusicIP Server folder, and double-click on the Mixer Server.prefPane icon. This will add a system preference panel which you can use to control the MusicIP Server.

The configuration file should be stored in the same place as your cache file: ~/Library/Application Support/MusicMagic

LinuxEdit

To run MusicIP Mixer in the "headless" mode:

  1. Install MusicIP Mixer
  2. Locate the mmm.ini file in the installation directory, and copy it to the $HOME/.MusicMagic directory
  3. Change any settings desired by editing the mmm.ini file in your .MusicMagic directory.
  4. Run the command: "MusicMagicServer start". This will start the server on port 10002, or any other port you have specified in your mmm.ini file.
  5. Open the URL http://localhost:10002 in your browser. From this page you can control the MusicIP Server.

Details for mmm.iniEdit

The following section details the options for the mmm.ini file. The MusicIP Server can share a cache file with the standalone GUI, but does not share any of the configuration options.

[mix]Edit

mixsize=10 tracks How many tracks to include in a mix by default. Option should be a # followed by tracks, minutes, or mb (meaning megabytes)
restrict=3 tracks How often to allow duplicate artists in a mix
style=20 The style setting. 0 is low, 200 is high
variety=0 The variety setting. 0 is none, 9 is high
seed=1 Boolean: 1=always include the seed in mixes, 0=sometimes include the seed in mixes (depending on other options)

[server]Edit

proxy=0 Boolean: 1=use proxy, 0=do not use proxy
host= Proxy host name
proxyport= Proxy port number
authentication= Boolean: 1=use authentication on proxy, 0= do not use authentication
user= Proxy user name
password= Proxy password

[services]Edit

key= MusicIP Mixer egistration key
cache= Cache file (optional)
port=10002 Port to expose services
tivo=1 Boolean: 1=enable TiVo support, 0=disable TiVo support
upnp=0 Boolean: 1=enable UPnP support, 0=disable UPnP support
api=1 Boolean: 1=enable HTTP API, 0=disable HTTP API
refresh=15 How many seconds to wait before refreshing the headless view. This applies only while adding, refreshing, or validating songs. You can disable automatic refresh by setting this value to 0.
cpu=0 Processor Load option (Windows only). 0=Max, 1=Moderate, 2=Low


MusicIP Mixer Help - Tag FixingEdit

MusicIP Mixer has several options for fixing the tags in your music files.

Automatic Tag Fixing (Windows only)Edit

To get suggestions from MusicDNS on how to update your metadata, just select one or more songs, and press the Fix Tags button. Select the changes you agree with, skip the ones you don't, and press the Apply button.

Artist SynchronizationEdit

If you have a registration key, you can use the Fix Artists Power Tool. This will suggest artists which are listed as different spellings or formats which could be merged into a single spelling or format. Select the changes you agree with, skip the ones you don't, and press the Apply button.

Manual or Pattern Based Tag FixingEdit

Sometimes there's no option but to fix the tags yourself. You can do so manually, by selecting one or more songs, right-clicking, and choosing Edit Tags (you can use Ctrl-E as a short-cut on Windows). In the resulting dialog box, simply change the fields you would like to modify, and press the OK or Apply buttons to update your files. If you modify more than one file at a time, you will need to choose which fields are affected by selecting the checkbox next to each field.

If you would like to make changes which can be derived from the filename, path, or existing metadata, you can press the Advanced option to bring up the advanced tag editor (you can go straight to this dialog by choosing Ctrl-Alt-E instead of Ctrl-E). The idea behind the advanced tag editor is to use existing information to update incorrect tags in your files. Although it may seem confusing at first, you will be able to accomplish a lot once you understand how the system is set up. Look at the examples to help you get started.

In the basic mode, the full path and file of the original songs are available to extract metadata from. For instance, if your filenames have the track number, followed by a dash, followed by the song name, you might use a pattern like this: %t - %nOnce you've entered or selected a pattern, press the Apply Pattern button to see recommended changes based on the metadata. Only cases where the new name would differ from the old name will be shown. You can select the edits you want to apply by using the leftmost checkboxes. When you are satisfied with the edits, press the OK or Apply buttons. (You can also just delete any edits you don't like by selecting them and pressing the Delete key.)

Like our other tables, you can click on the headers to sort the suggestions by File, Field, Old Value, or New Value. If the new value is close, but not quite right, feel free to click on the field and edit it directly before applying it.

The Ignore Case checkbox is used to throw out suggestions which would only differ from the current values by differences in upper or lower case letters.

The Ignore Whitespace checkbox is used to throw out suggestions which would only differ from the current values by additional or missing whitespace characters.

Example 1Edit

If your files have names like Artist - Song Name.mp3, then you would enter a pattern like this: %artist - %nameWhen you press the Apply Pattern button, any inconsistencies will show up, and the edits can be applied.====Example 2==== If your files are stored in directory names which correspond to the artist name, the you would enter a pattern like this: %artist\%otherThis means the parent directory is the artist name, and the rest of the file can be ignored.===Advanced Patterns=== If you want to update metadata based on existing metadata, you can press the small triangle to the left of the Pattern entry field, and a new field will appear where you can enter the Source pattern. Use a pattern to select the metadata you want to use as a basis.

Example 3Edit

If you want to swap the artist and song names, you would enter a Source like this: %a * %nand a Pattern like this:%n * %aThis will swap the fields. Make sure the character between them (here we used * ) isn't part of any of the existing fields.====Example 4==== If your song names are correct, but all uppercase or lowercase, you can take advantage of the ~ pattern modifier, which will try to guess the correct capitalization (using English capitalization rules). In this case, you would enter a Source like this: %nand a Pattern like this:%~nAny strange cases which were not done correctly can either be deleted, or corrected manually before pressing the Apply button.


MusicIP Mixer Help - Working with iTunesEdit

The MusicIP Mixer API can be used to allow you to access MusicIP functionality from within iTunes.

This page contains sample AppleScripts to integrate iTunes with MusicIP Mixer on Mac OS X. You can use or modify these scripts in any way you like. Some scripts may contain comments about possible changes. To use a script, download it by clicking on the appropriate link, and save the script to the Library/iTunes/Scripts folder beneath your home directory. You may need to create this folder if you haven't installed any AppleScripts for iTunes previously. After doing this, you will be able to access the script from the main iTunes menu bar.

In order for the scripts to work, you will must have MusicIP Mixer running and properly configured. Detailed instructions are available at online.

If you have contributions you would like to make to this script archive, please let us know. All scripts here are available for free.

For more information about writing AppleScripts for iTunes, we recommend the excellent site Doug's AppleScripts for iTunes.


Script: Create New Mix (for version 1.1.3 through 1.4, click here)
Last Updated: 1 March 2007
Minimum Requirements: MusicIP Mixer 1.5

This script lets you create mixes from within iTunes. Simply select a song you would like to use as a starting point, and run the Create New Mix script. This will create a new playlist called MusicIP Mixer Playlist and start playing it.

This script requires that the song you are starting from is also index in the MusicIP Mixer, and has analysis data (i.e. it's green). The script can be easily modified to create artist based mixes as well.

MusicIP Mixer Help - Working with SlimServerEdit

MusicIP Mixer can work with SlimServer to let you view and play your music collection from your SqueezeBox. You will need to have MusicIP Mixer running on the same computer as SlimServer.

You will need MusicIP Mixer version 1.1.3 (or later) to use the SlimServer integration. You will not need a premium key, although if you enjoy the product, why not show your support by getting one? You will also need a recent build of SlimServer which supports MusicIP Mixer, available from the link below. (Note that it is called by the earlier name, MusicMagic, currently.)

Once you have SlimServer, and are running MusicIP Mixer, go to the MusicIP Mixer preferences panel by selecting File/Customize Options. Select Services, then check the API checkbox, and press the Start button. If you exit MusicIP Mixer while the service is running, then the service will automatically restart whenever you start the mixer, until you stop it using the preferences panel.

Next, configure your SlimServer to use MusicMagic from the Server settings page. Now, as you are using your SqueezeBox, any time you can create a mix off the current selection, you will see a small "mm" at the top right of your SqueezeBox display. Press and hold the play button to get a mix based on the current selection.

If you have comments, or feature requests, feel free to mail us at support@musicip.com or visit our forums at http://forums.musicip.com.

The API is available for the truly adventurous, who may want to hack the code further.



DownloadsEdit

You can download SlimServer for Mac, Windows, or Linux here:

MusicIP Mixer Help - Working with TiVoEdit

MusicIP Mixer can work with TiVo Series 2 DVR's to let you view and play your music collection from your TiVo. You will need to have your TiVo networked with the computer running MusicIP. Currently, only .mp3 files are supported.

Once you have a networked TiVo, and a running MusicIP Mixer, go to the preferences panel by selecting File/Customize Options. Select Services, then check the TiVo checkbox, and press the Start button. If you exit MusicIP Mixer while the service is running, then the service will automatically restart whenever you start them ixer, until you stop it using the preferences panel.

Next, using your TiVo remote, go to Music and Photos, and choose MusicIP Mixer on MACHINE, where MACHINE is the name of the machine running MusicIP Mixer. The following menu should appear:

  • Instant Mix
  • Playlists
  • Filters
  • Genres
  • Artists
  • Albums

Instant Mix: Choose a random song from your collection, and create a playlist. If you don't like the starting point, you can choose Left on your remote to go up a level, and Right to select it again. This will start with a new random song each time.

Playlists: This lets you view existing playlists stored in MusicIP Mixer.

Filters: This lets you make instant mixes which are locked to a specific filter. When you choose a filter, MusicIP Mixer will select a random song within that filter, and create a playlist which is also contained within that filter.

Genres: This lists the genres available within MusicIP Mixer. Choose a genre to see artists within that genre.

Artists: This lists the artists available within MusicIP Mixer. Choose an artist to see albums by that artist. If you have already selected a genre, that will be used as a filter - only artists with songs in that genre will be shown.

Albums: This lists the albums available within MusicIP Mixer. Choose an albums to see songs on that album. If you have already selected a genre, artist, or both, that will be used as a filter - only albums with songs in the associated genre or by the associated artist will be shown.

Important Note! Any time a song which is active (green in the mixer) is displayed in a non-mix context, you can use that as a new seed for an instant mix. You will be able to tell this because the song will show a Playlist icon instead of a Song icon. So, if you are browsing all songs by an artist, you can press the Play button to play the songs shown, or press Select (or Right) to create a mix based on that song.

MusicIP Mixer Help - HTTP ProtocolEdit

The MusicIP Mixer API is a HTTP based protocol for third party applications to interact programmatically with the MusicIP Mixer. The same API works for our Windows, Linux, and Mac products, so you can support all these platforms with one set of code.

In order to use this API, you must have a running copy of the MusicIP Mixer.

For examples using the API from AppleScript on Mac, visit our iTunes scripts page. For examples on using the API within SlimServer, check out our our notes on SlimServer.


To start the MusicIP Mixer API, go to the Services section of the preferences dialog, select MusicIP Mixer API, and press start. If you exit MusicIP Mixer with services running, they will restart automatically when MusicIP Mixer restarts.

This will cause MusicIP Mixer to accept connections on the Server Port as though it were an http server. You can test the API by pointing a web browser to the appropriate port (e.g. http://localhost:10002) where localhost is the machine running MusicIP Mixer, and 10002 is the port passed to mmserver.

The following commands are supported. All urls must be preceeded with "/api/" (for example: http://localhost:10002/api/shutdown). As we get more use out of the API, we expect the number of available commands to increase. If the version listed is higher than the current release version, this means the command is only available in a development or beta build, but will be available in the indicated release.

Command Arguments, Effect and Return Values Version
empty Returns a simple HTML form for testing the MusicIP Mixer API.
artists Returns a list of all the artists. Parameters are:
filter=name Use the named filter when creating the list (default none)
If there is no such filter the name may refer to a genre as an implicit filter. 1.5
showCount Prefix each artist with the number of songs by that artist
1.1.3
albums Returns a list of all the albums. Parameters are:
artist=name Only include albums with at least one song by the named artist
bysong Return key song from each album (useful for other api calls) 1.5
extended Return album in artist@@name format 1.5
filter=name Use the named filter when creating the list (default none)
If there is no such filter the name may refer to a genre as an implicit filter. 1.5
showCount Prefix each album with the number of songs on that album
1.1.5.1
cacheid Returns the timestamp when the cache was last modified. Parameters are:
contents Only show when contents were last modified (songs, playlists, analysis info) 1.1.5.1
1.1.3
duplicates Returns a list of all the songs which have duplicates (same as Library/List Duplicates). Parameters are:
content= (json|m3u|text|xspf) Set the returned mime type (default text)

json|xspf requires 1.5

short Return short-style names (Windows only) 1.1.4
1.1.3
filters Returns a list of all the filters. Parameters are:
showCount Prefix each filter with the number of songs in that filter
1.1.3
flush Flush any changes made to the current cache. There are no parameters. On success, it returns the number 1 (as text). On failure, it returns the number 0 (as text). 1.7
genres Returns a list of all the genres. Parameters are:
filter=name Use the named filter when creating the list (default none) 1.6
showCount Prefix each genres with the number of songs in that genre
1.1.3
getCurrentMixGenre Returns the current settings of the "Restrict mix to selected genre" flag, which will be used by the mix command. This is the same as the current user setting in the application. 1.1.6
getCurrentRejectSize Returns the current size which will be used to limit duplicate artists by the mix command. This is the same as the current user setting in the application. 1.1.6
getCurrentRejectType Returns the current type which will be used to limit duplicate artists by the mix command. This is the same as the current user setting in the application. 1.1.6
getCurrentMixSize Returns the current mix size which will be used by the mix command. This is the same as the current user setting in the application. 1.1.4
getCurrentMixSizeType Returns the current mix size type which will be used by the mix command. This is the same as the current user setting in the application. The return value is tracks, min, or mbytes. 1.1.4
getCurrentMixStyle Returns the current mix style which will be used by the mix command. This is the same as the current artist style user setting in the application. 1.1.4
getCurrentMixVariety Returns the current mix variety which will be used by the mix command. This is the same as the current variety user setting in the application. 1.1.4
getCurrentTrack Returns the full path of the currently playing track, if any. Paused tracks still count as current. (Windows only) 1.8
getLastPlayed Returns the timestamp the song was last played. Parameters are:
song=fullpath Choose a song

Returned value is the timestamp, or -1 if the song was not recognized.

1.1.5
getLyrics Returns the lyrics of the indicated song. Parameters are:
song=fullpath Choose a song

Returned value is the lyrics, if present.

1.1.3
getPlayCount Returns the play count of the indicated song. Parameters are:
song=fullpath Choose a song

Returned value is the play count, or -1 if the song was not recognized.

1.1.5
getPlaylist Returns the list of filenames for all songs in the indicated playlist. Parameters are:
content= (json|m3u|text|xspf) xspf requires 1.5
short Return short-style names (Windows only) 1.1.4
index=listindex
name=listname
detail Return the playlist attributes instead of the contents. Returned fields may include name, file, added, modified.1.1.5
1.1.3
getRating Returns the rating of the indicated song. Parameters are:
song=fullpath Choose a song

Returned value is the rating 0-5, or -1 if the song was not recognized.

1.1.3
getSong Returns information about the indicated song. Parameters are:
index Choose a song by index
file Choose a song by file

Returned value is a list of attributes, 1 per line. The first word is the field name, and the rest of the line is the field value. Some fields may not be present if there is no associated value. Current fields are:
name, artist, album, album-id, file, genre, track, active, seconds, bytes, year, bitrate, composer, conductor, orchestra, lyricist, rating, modified, lastplayed, playcount, added

1.1.3
getSongCount Returns the number of songs currently in the cache. 1.1.3
getStatus Returns a string describing the current mixer status. Current values include adding, analyzing and idle. 1.1.5.1
incrementPlayCount Increment the play count of the indicated song by one. Parameters are:
song=fullpath Choose a song

Returned value is the number of songs affected (0 if the song was not recognized).

1.1.5
mix Return a dynamic playlist. Parameters are:
song=fullpath Choose a seed song
artist=name Choose a seed artist
album=fullpath Choose a seed album. fullpath is any song from the album
album= artistname@@ albumname Choose a seed album. (example: "The Beatles@@The White Album")
mixgenre=boolean Restrict mix to the genre of the seed 1.1.6
mood=name Make a mood mix based on the given mood 1.5
playlist=namefullpath Choose all songs in the playlist as seeds 1.1.5.1
recipe=name Use the indicated recipe when making the mix (Windows only) 1.8
rejectsize=# Set the number of items to skip before repeating artists 1.1.6
rejecttype= (tracks|min|mbytes) Set the units for rejectsize (default tracks) 1.1.6
size=# Set the size of the list (default 12)
sizetype= (tracks|min|mbytes) Set the units for size (default tracks)
style=# Set the style slider (default 20, range is 0..200)
variety=# Set the variety slider (default 0, range is 0..9))
filter=name Use the named filter when creating the playlist (default none)
If there is no such filter, the name may refer to a genre as an implicit filter.
content= (json|m3u|text|xspf) Set the returned mime type (default text)

json|xspf requires 1.5

short Return short-style names (Windows only) 1.1.4

You may specify any number of songs, artists or albums as seeds, but you may not mix different types in a single request. If no seeds are set, a random song will be chosen from within the current filter.

As of version 1.1.4, the above default values are replaced with the current application settings from the mix preferences (on some platforms).

1.1.3
moods Returns a list of all the moods. Call this without parameters. This will only return information on platforms supporting the Moods menu. 1.5
playlists Returns a list of all the playlists. Normally you would call this without parameters, but you can pass the following:
detail Return full attributes for each playlist. Attributes may include: name, file, added, modified. Each playlist will be separated with a blank line in this mode 1.1.5
1.1.3
recipes Returns a list of all the recipes. Call this without parameters. This will only return information on platforms supportings recipes (headless on all platforms, and Windows 1.8 or later). 1.8
setLastPlayed Set the time the indicated song was last played. Parameters are:
force Set time even if less than currently stored 1.5
song=fullpath Choose a song
time=timestamp The new timestamp, either in seconds from 0 hours, 0 minutes, 0 seconds, January 1, 1970, or as follows: 2005-02-22T23:56:06Z. You may also use the word "now" to set the last played time to the current time.

Returned value is the number of songs which were changed.

1.1.5
setPlayCount Set the play count of the indicated song. Parameters are:
force Set count even if less than currently stored 1.5
count=number The new play count
song=fullpath Choose a song

Returned value is the number of songs which were changed.

1.1.5
setRating Set the rating of the indicated song. Parameters are:
song=fullpath Choose a song
rating=number The new rating, 0-5.

Returned value is the number of songs which had ratings changed.

1.1.3
shutdown Exit the mixer 1.1.3
songs Returns a list of all the songs (as a playlist). As of version 1.5, if you pass no artists or albums, all songs are returned. Parameters are:
album=fullpath Only include songs from the named album. fullpath is any song from the album
album= artistname@@ albumname Only include songs from the named album. (example: "Pink Floyd@@Dark Side of the Moon")
artist=name Only include songs by the named artist
content= (json|m3u|text|xspf) Set the returned mime type (default text)

json|xspf requires 1.5

filter=name Use the named filter when creating the playlist (default none)
If there is no such filter the name may refer to a genre as an implicit filter. 1.5
extended Return extended info for each song (as in the getSong command). This ignores the content and short options.1.5
short Return short-style names (Windows only)
1.1.5.1
status Return the status of the indicated item. Parameters are:
song=fullpath Choose a song
artist=name Choose a artist

Returned value is an integer.{|

0 ==> item cannot be used to create mixes
1 ==> item can be used to create mixes

| valign="top"|1.1.3 |- | valign="top"|version |Return the version number of the current mixer as text. | valign="top"|1.1.3 |} There are also several methods available for working with custom tags.

MusicIP Mixer Help - Custom TagsEdit

Version 1.5 supports custom tagging of songs. This is a highly extensible system for arbitrarily adding information to your database. At this point, the feature is experimental. User feedback will help determine how best to take advantage of this feature.

At the most basic level, you can associate an arbitrary number of keywords and values with any song. This lets you, for example, import metadata which is not directly supported in the current version of MusicIP Mixer. This import must be done via the HTTP API (the mmmexec program, described below can provide a useful means of accessing the API). The data can be seamlessly integrated into Power Searches by defining custom Power Words.

You may find it easiest to start with the examples at the bottom of this page.

HTTP APIEdit

Additional API methods:

Command Arguments, Effect and Return Values Version
getAlbumField Returns the value of a selected key for the indicated album. Parameters are:
key=name Required. Indicates the key being accessed
album=name Required. Indicates the album for which the information is being retrieved.
1.8
setAlbumField Assigns the key/value pair to the indicated albums. Parameters are:
key=name Required. Indicates the key being assigned
album=name Required. Indicates the album for which the information is being assigned. Multiple albums can be assigned by passing this parameter multiple times.
value=text Required. Indicates the value being assigned to the given key. Omit the text portion to delete a key.
1.8
getArtistField Returns the value of a selected key for the indicated artist. Parameters are:
key=name Required. Indicates the key being accessed
artist=name Required. Indicates the artist for which the information is being retrieved.
1.8
setArtistField Assigns the key/value pair to the indicated artists. Parameters are:
key=name Required. Indicates the key being assigned
artist=name Required. Indicates the artist for which the information is being assigned. Multiple artists can be assigned by passing this parameter multiple times.
value=text Required. Indicates the value being assigned to the given key. Omit the text portion to delete a key.
1.8
getPlaylistField Returns the value of a selected key for the indicated playlist. Parameters are:
key=name Required. Indicates the key being accessed
playlist=namepath Required. Indicates the playlist for which the information is being retrieved.
1.8
setPlaylistField Assigns the key/value pair to the indicated playlists. Parameters are:
key=name Required. Indicates the key being assigned
playlist=namepath Required. Indicates the playlist for which the information is being assigned. Multiple playlists can be assigned by passing this parameter multiple times.
value=text Required. Indicates the value being assigned to the given key. Omit the text portion to delete a key.
1.8
getSongField Returns the value of a selected key for the indicated song. Parameters are:
key=name Required. Indicates the key being accessed
song=fullpath Required. Indicates the song for which the information is being retrieved.
1.5
setSongField Assigns the key/value pair to the indicated songs. Parameters are:
key=name Required. Indicates the key being assigned
playlist=namefullpath Assign the key/value pair to all songs in the given playlist
song=fullpath Indicates the song for which the information is being assigned. Multiple songs can be assigned by passing this parameter multiple times.
title=name Indicates the name of the song to assign the value to. 1.8
value=text Required. Indicates the value being assigned to the given key. Omit the text portion to delete a key.
1.5

MMMExecEdit

The mmmexec program is a helper utility which allows you to access the API from the command line (or other programs which may find it easier to execute programs than send HTTP requests).


MMM Exec 1.5 - Copyright (C) 2004-2005 Predixis Corporation
Usage: mmmexec command
 or
Usage: mmmexec [options] filename [file2, file3, ...]
Options:
  -get key          print value of key (one per line if multiple files)
  -p                filename is a playlist, operation on contents
  -port #           Use specified port (default is 10002)
  -r                filename is a folder, recursive folder
  -set key=value    assign a custom key/value pair
  -v                Show commands sent to API

Download for Windows: mmmexec.exe

User Power SearchesEdit

You can access custom tags using the following syntax: field keyThe field will be automatically treated as a string or number depending on context. Fields you will be using repeatedly should be added to your powerwords.txt file for convenience. Quotes around the key are optional unless the key is multiple words, has unusual characters, or is also defined as a keyword.==Examples== Example 1: Beats Per Minute

If your files have BPM stored from external tools, you could write a program to archive this info into the MusicIP Mixer cache. The URLs would look something like this: /api/setSongField?song=filename&key=bpm&value=120To use BPM in a Power Search, you can do this:field "bpm"Adding the following alias to your powerwords.txt file:bpm: field "bpm"will let you simply refer to this as bpm. Now you can do higher level queries like:120 < bpm and bpm < 130or define more Power Words:fast: bpm > 180which would let you search for "fast songs".Example 2: Mood Tags

If you want to define your own tags which describe the mood of certain tracks, (metadata based moods instead of acoustical ones), you could create a custom tag called "moods", and associated whatever moods you want. Using the mmmexec program, it would look like this: mmmexec -set mood=sad file.mp3To access this from a Power Search, use something like this:field "mood" contains "sad"The powerwords.txt definition would look like this:sad: field "mood" contains "sad"And now you can search for "sad songs".Further Ideas

Any metadata you can associate with your songs can be stored in your MusicIP Mixer cache. For instance, you could make accessible your Comments tags, your ReplayGain tags, Billboard Positions of songs, whatever you can imagine. By combining custom tags and Power Words, you can create your own personal search vocabulary, which you can share with others.

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.