![]() |
IMMS /
|
SearchWiki Recent Changes Edit Page Page History |
|
IMMS: Intelligent Multimedia Management System | ||||||
How do I know IMMS is working?
To observe IMMS in action, see ~/.imms/imms.log.
What the fork does all that stuff in the log mean?
There's some description of the notation on the Screen Shot page.
How do I use the information IMMS collected to get a list of "good" songs, for custom playlist, etc?
See Tips And Tricks, or check out IMFavorites
How can I raise the rating of a song that I like?
As mentionned in the Screen Shot section, jumped songs, i.e. songs that you directly select to be played, get an extra boost. So to raise the rating, just select the song and listen to it. If you can't stand listening to it, its rating shouldn't be raised anyways. Otherwise, if you are adventurous, you can directly modify the sqlite database, using the magic described in Tips And Tricks, but this is not advised for unexperienced users. - The Anarcat
How does IMMS interact with the Shuffle button in XMMS?
That depends on your version of XMMS. If you are using vanilla 1.2.10 or older, IMMS will force shuffle mode to off, and will always take over scheduling songs when enabled.
If, however, you are using 1.2.10 + queue control patch or CVS (and this includes newest versions of XMMS in Debian, Gentoo and prolly other distros), IMMS will obey the Shuffle button, letting you select between sequential and (intelligent) random modes. Ratings are tracked and adjusted in both modes.
I want XMMS Queue to work. I want xmms-crossfade to work. I want the shuffle button to work.
That's not really a question, now is it?
Well, this is not entirely up to IMMS, so you have two choices: either wait for XMMS 1.2.11 to officially come out, or grab a copy of XMMS CVS now, install it, and recompile IMMS 1.1 against it. Done and done.
Here's the actual patch. A lot of distributions including Debian, Gentoo and ALT Linux include this patch or a recent enough CVS version of XMMS.
What about m4a/flac/other-weirdo-formats that are not currently supported by SoX?
Correct solution: if there a library to decode them, add support for that format to sox. I hear it's not hard.
Cheap hack: create a wrapper script for sox that does something along the lines of:
if filename ends with .m4p
faad - filename | sox.real <options>
else
sox.real <options> filename
You will need to make sure you get 16-bit unsigned mono raw PCM signal @ 22KHz on the output end.
Why is IMMS distributed under the GPL? Ever heard about the GNU LGPL?
Luckily for you, I have "ever heard" of LGPL. The simple answer is that this issue just never came up before... Do you have a particular application in mind? --mag
./configure complains about some header/library is missing. What should I do?
Well first of course make sure you actually have that component installed. In fancy distos you often have to have package-dev and as package itself installed to get all the header files. Other than that look in config.log. It will tell you exactly what the configure script is trying to do, and what the error it fails with is.
I get an error about undefined macro: AC_MSG_ERROR. What's up?
The error message is misleading. The actual cause is that aclocal fails to pull in the definition for PKG_CHECK_MODULES. Make sure you have pkg-config installed.
Reconfigure IMMS with --enable-debug and recompile it. Before you start XMMS, run immsd under gdb. Proceed as usual (start XMMS, listen to music, etc) and when immsd crashes, save the output of 'backtrace full'. Also include the full (including the path!) filename of the file it crashed on.
Why does XMMS sometimes stop after playing a song, or gets stuck repeating the same song?
Make sure you do not have No Playlist Advance option enabled in XMMS.
I installed IMMS, but XMMS does not show it in the list of plugins. What's wrong?
The most likely cause of this is that some of the libraries IMMS depends on are not in your LD path (eg: sqlite installed in /usr/local, and /usr/local/lib not in LD path). Run XMMS from a console and check for messages about missing libraries, then add their location to ld.so.conf (and run ldconfig) or to LD_LIBRARY_PATH.
In playlists consisiting mostly of streaming songs IMMS always repeats the same song. Why?
Streaming playlists are not currently supported. IMMS needs read access to the files to do things like read their ID3 tags, checksum them, etc. While it might be possible to get the basic functionality working even for remote files, it is not a high priority on my To Do List because I do not use this functionality.
Does IMMS keep the score of a song when I move it to a different directory in my filesystem?
Yes, IMMS uses a partial checksum to identify files. Even if you move them and/or edit their tags, the files should still keep their ratings.
If XMMS plugin interface sucks so much as you say, why don't you improve it?
Well, first of all, you might notice that it is on my To Do List. That said, while doing so would certainly make IMMS much cleaner, there are several reason why I have not done it yet:
Why does IMMS force XMMS into sequential mode?
Update: I finally got around to writing a patch to XMMS, and as of XMMS version 1.2.11, IMMS will honour the Random toggle, along with a number of other nice features. If you're impatient, you can get XMMS from CVS now. Patch for BMP also exists, but BMP people appear to be equaly slow - I posted it on the mailing lists, but they never got back to me.
IMMS needs to differentiate between songs that were skipped just by hitting Next (which means that the current song should be modded down), and songs that were terminated prematurely because the user chose to jump to a different song (which means that the target song should be modded up). Since XMMS plugins interface does not provide a way to get this information directly (see [1]), the easiest way to do this is if XMMS is in sequential mode. Then hitting Next results in the new playlist position being the old playlist position plus 1.
Some people have suggested that IMMS should let XMMS use it's own shuffle if Shuffle becomes enabled, but I think that since it would not be obvious that one has to disable Shuffle for IMMS to work properly, doing this would just cause most users to become confused. So IMMS takes the safe route just forces it off.
Why is IMMS listed under Visualization plugins if it does not visualize anything??
Update: This is no longer the case as of IMMS 1.2
Visualization plugins get access to some additional information, such as frequency statistics. IMMS uses this data to calculate song frequency spectrum and BPM and automatically guess song similarity.
IMMS 1.1 randomly crashes at frequent intervals. What's up with that?
This happens when IMMS tries to read tags on files that don't exist.
IMMS 1.0.1 sometimes skips a song while playing. Can I disable auto-skip? What line do I change in the code?
I really could not tell you. 1.0.1 is ancient. Upgrade to something more recent :)
With IMMS 2.0 I get compile errors about "xmms_remote_playqueue" functions being undeclared.
You need to disable queuecontrol in configure like this:
How do I upgrade from IMMS 1.1 to 2.0.3+?
1.1 is rather old, so direct upgrade may not work correctly. Installing 2.0.1 as an intermediary step might help. Make sure you have sqlite and sqlite3 binaries installed, and run XMMS from console the first time around to see if there are any errors.