Hi!
On 05.08.05, Dag Wieers wrote:
On Mon, 1 Aug 2005, Doug Friend wrote:
Thought I'd introduce myself. Just installed PyTone 2.2.4 & have it running after a couple of tries. On initial set up I pointed it to 120GB of music which caused some fairly severe performance issues. Anyone have experience with PyTone & a large music collection?
I'm using pytone together with a 70GB music repository comprising 14k songs. pytone, together with snackamp, are the only players that can practically work with this amount of files (all the others I've tried just choke on the metadata management and use hundreds of megabytes just in order to be able to play.
Let me just add another data point. Last weekend, I had the pleasure to use PyTone on the yearly reincarnation of the party it was originally written for. We used two databases, one on a local disk with around 7500 songs and one on a NFS share with around 15000 songs. In total this amounted to more than 22500 songs in the "merged" database. The machine is powered by a quite ancient AMD with 700Mhz and has 256MB of RAM. All in all, the perforance was excellent, except for a few issues:
- From time to time, there was a dropout in the audio output when PyTone made a database access - During a complete update of the repository these dropouts were quite frequent. Furthermore the log-files sometimes growed to more than 1GB. I had to abort the initial scan of the remote database. - The memory usage of PyTone was initially quite ok (around 140MB), but it was growing slowly and we had to restart PyTone every 12-18 hours (the party ran for about 72 hours).
Debugging of the issues is, however, a non-trivial task...
That said, updating your repository is hard and I always try to avoid it by going to the filesystem view and updating specific directories (that have been added/changed). The first time, however, you can't do it otherwise.
Yes, updating single directories would also be what I'd suggest.
I'm new to Python, have been coding with Perl for the last 5 years or so. I have been planning to write a playlist generator which will take additional parameters than what is currently in PyTone (tempo, texture, music style among others). Just starting to get into the code now, so any words of wisdom would of course be more than welcome :)
I'm very interested in what you're going to do. I would be interested in the following features/scenarios:
- Handling of favorite songs (stars) as I don't think pytone uses this information for its playlist yet. Of course the hard part is finding an algorithm that does what vaious people would expect. What do people expect ?
Oh, it uses the rating, but please don't look at the code. Again, please don't look: it's ugly and probably doesn't do anything reasonable.
- Auto-tagging files to match genres with songs. I'd love to select 10 songs and have pytone only play similar songs than the ones selected based on the song itself, not a manually added genre-tag.
That's a tough problem which I think is beyond what PyTone can offer. Either you would need a very good tagging scheme and correspondingly good data. There are companies which offer you this kind of service, but it's obvious that this kind of information is not really cheap to get. Alternatively, one could make use of something like AudioScrobbler, which relies on the playback data supplied by the users. But AFAIK there is no interface to get this kind of information for a given set of songs. It even takes a few days to initially generate a recommendation of related artists from your playlist.
This fixes the problem where you have mixed genre CD's or where the genres are simply too general for most of the music.
I agree that genres are not very useful. But a more complex classification scheme may even be less useful if it requires that the user does the classification manually. In general, you are lucky if at least artist/album/title tags are correct, not speaking about tracknumber and year.
Jörg