pphaneuf: (Angry Tongue)
[personal profile] pphaneuf
So I updated my version of Max (an excellent CD ripping application for Mac OS X) and tackled my music collection, which has been in a bit of disarray for far too long. No wonder I've been listening to so much Einstürzende Neubauten, all their tracks were there at least twice (because of the umlaut in the band name, plus possibly more copies in the song names themselves).

After some ponderings, I decided that I'd switch to a folder per album, without an intermediate folder for the artist. I'm still not sure about that, but that's probably the easiest to mess with.

The new version of Max, among other things, added support for album cover art. I thought "hey, why not? iTunes 7's cover art browser is pretty swanky, I like swanky", which proved to be a rather frustrating train of thoughts, when all was said and done. Bloody iTunes. Bloody Ogg Vorbis. Bloody everything.

While Ogg Vorbis does support embedding cover art, Max didn't do it. Not that it would have helped with iTunes, this probably not being part of the standard QuickTime meta-data (not that iTunes was worth ass at using QuickTime meta-data properly). But iTunes has its own database to index meta-data, including a folder where it caches cover art. I figured that I could just manually set the cover art in iTunes, and that it'd go there (don't worry, I wouldn't have done that by hand for my whole collection, iTunes can be scripted very easily, thankfully).

But no. It see QuickTime content, thinks "hey, I don't support cover art for those!", and just ignores any cover art you set (even though it let you set it in the "edit meta-data" dialog!). Bastards.

But I'm not completely pissed at iTunes (yet), since it still seems to be working better than Rhythmbox (which I use at work)! I deleted my existing music from the library, meaning only to remove it from the Rhythmbox database. Surely, it would ask my opinion before doing something that cannot be undone, right? iTunes does, so, I'm good, right? Nope, everything gets thrown in the wastebin, which didn't seem to offer an obvious enough "restore" option (but I've been known to miss obvious buttons before, so maybe I'm just cranky). Yeah, sure, the files aren't lost, but they're all together in a gigantic mess. Great.

Okay, so after having given up on that anyway, I looked again in the music directory, to find that it had left some files behind? That's kind of shoddy, isn't it? There's two explanations, and neither put Rhythmbox in good light: either it "missed them" while deleting them, or, more likely, didn't import them in the library in the first place.

The latter being especially fun, as the process to import music in Rhythmbox is as follow: use the "import folder" option, look at the number of songs in the status bar, use the "import folder" again, look at the number of songs again, repeat until the number stabilizes. Wow. Just think if find (or your backup system!) was this unreliable. I'm not worrying too much, this is only my music player, but still, that's pretty craptastic.

Not to mention that the "automatically import music in a certain folder" option in the preferences doesn't seem to do anything? Or anything noticeable anyway...

On top of this, for all iTunes' pre-Mac OS X suckiness in the plugins department (you can only make visualization plugins for it, period), Rhythmbox somehow manages to do worse, by not having plugins at all, and being only barely scriptable (as opposed to iTunes, that can be 100% controlled via AppleScript). Thankfully, they have incorporated Audioscrobbler support, because I'd have would have had to stab myself (by which I mean use XMMS, which is just about equivalent).

Bloody hell, welcome to the motherfuckin' 21st century...

Date: 2007-01-22 08:19 pm (UTC)
From: [identity profile] caffeinemonkey.livejournal.com
Dude, rhythmbox has plugins! They have had for several releases now. Maybe you're running an older version? You can even do plugins in Python, so there's some scriptability there, plus there's a DBUS interface.

On iTunes sucking, I generally agree. But you can do plugins other than visualisation for it because it uses QuickTime, so you can just add QuickTime plugins [that is how you can make iTunes play oggs]. And the main idea for album art is that you do nothing special, and iTunes downloads it on its own. That it doesn't support embeddable album art is sucky, but on the other hand embedding the same image in every file in an album is wasteful, so that's at least why they store it in a non-standard way in their DB.

I generally find rhythmbox pretty decent these days, I just wish they'd stop trying to pretend that XML is a good way to store a database. Banshee is kinda cool, but the mono VM eats a fair share of memory and the way Banshee does metadata is even more broken than iTunes or rhythmbox, because they keep it all in their own DB and don't synchronise back to your tags.

BTW, have you tried Cowbell for tagging? I find it works really nicely.

Date: 2007-01-22 09:28 pm (UTC)
From: [identity profile] pphaneuf.livejournal.com
Ah, there's plugins now. You have to build them in-tree. I'll let you make wild guesses about how stable their ABI is. Oh, look, their first plugin is to embed a Python interpreter. It's most likely that it's not really that you can "even" do plugins in Python, but rather that it's the only way you can do them without getting screwed.

I was there when they switched the scriptability from CORBA to D-Bus. It was pretty laughable back then, including such wonders as only having a play-pause toggle, but no way to query whether it's playing or paused at the moment. Genius people, as you can see.

I can see that it's slowly getting there, but oh, my, the braindamage on the way. I also remember trying to hack the code, wasn't a pretty sight, maybe they improved on it (I just checked it out, I'll be sure to have a look). What's leaving most unimpressed is how the version in Ubuntu dapper still has these issues with importing tracks, where it, uh, won't to it, stop doing it in the middle, "forget" some tracks... Rather appalled.

iTunes does support embedded album art, but just in internally supported formats, and I put it in an MP3 straight from Max, without an iTMS account (eech!). I'm not too annoyed at having 200 KB (because I'm silly and used PNG) added to each of my 6 MB files.

I use "Tag" for tagging, works pretty well. Remember I'm using Mac OS X mostly, Rhythmbox is only for at-work eye-gouging.

Date: 2007-01-23 04:53 am (UTC)
From: [identity profile] caffeinemonkey.livejournal.com
Yeah, Rhythmbox is far from perfect. But I would say it's better than XMMS at this point. XMMS can't even read tags properly most of the time [only supports some ancient version of ID3] and uses gtk1 so making its tiny fonts more readable means they become hideously ugly. For what it's worth, most of the import errors in Rhythmbox are due to gstreamer, and they did recently improve it a lot so it just keeps going and ignores the files it can't read. Took them bloody long enough, that's true, but hey, they're trying.

Date: 2007-01-23 09:36 am (UTC)
From: [identity profile] pphaneuf.livejournal.com
Rhythmbox can't play some of my tracks, it would seems, while XMMS does. For two things both described as "music players", I think that I can draw a fairly objective, if rather simplistic comparison. That's what I'd call a "baseline, nominal functionality" for a music player.

Then, after that, there's other stuff, which is also important, and will make me pick between two music players, that, say, can actually play my music. The next part is stuff that I can notice with my ears only, because, to be fair, my music player isn't even visible to me most of the time. So gapless playback, say, that's cool. Clever IMMS type shuffle, that's cool.

I'd also like some clever features, such as watermark input file buffering (buffer up to a certain high watermark amount, but when it's reached, do not read anything until the low watermark minimal amount is reached, then read as much as possible again to the high watermark, possibly across multiple tracks), so that my laptop's hard drive can spin down as much as possible. iPods do that, but I don't know of any workstation player that does. Oh well.

But really, all my files come from the same ripper and encoder, ripped from my own CDs, and I'd have directories where there was just one file it didn't want to import. WTF?

Date: 2007-01-23 10:34 pm (UTC)
From: [identity profile] caffeinemonkey.livejournal.com
That's odd. I experience the opposite problem. There a number of files in my library that XMMS cannot play, but Rhythmbox can.

In other news, why when you click "reply" to reply to a comment in LJ, does it not show you the comment you're replying to?

Date: 2007-01-24 06:34 am (UTC)
From: [identity profile] pphaneuf.livejournal.com
Oggs or MP3s? Weird, never had that, but I had GStreamer admit a number of times that it wasn't happy with my Ogg Vorbis, usually some of the Bach, that had quite long Vorbis comments, which unsettled it or something? Been a while since I debugged this... XMMS would simply crash sometimes, but would play the file after restarting it, so it didn't seem to me to be the file itself?

And I see your comment, "reply" makes the reply box appear right in the page.

Date: 2007-01-24 07:55 am (UTC)
From: [identity profile] caffeinemonkey.livejournal.com
I have both oggs and mp3s that xmms fails to play but rhythmbox plays fine. I used to use xmms-alarm as an alarm clock, and after a while it would just crash (if this happened only a song or two after the alarm went off, I would often sleep through it). Now I just use cron with rhythmbox and it successfully wakes me up :P

For commenting, I suspect it only does the inline thing if you're already logged in, which is stupid. It just did it to me again where I wanted to reply and it took me to a completely new page where I only get to see the original post.

Date: 2007-01-24 08:22 am (UTC)
From: [identity profile] pphaneuf.livejournal.com
But could you reproduce it with particular files? My experience with XMMS is that it's generally buggy, in a way that seems to be affected by its environment. On one particular version of a certain distro, it'll be just fine and almost never crash, and on the other, it'll be crashy as hell, for no particular reason.

On my Ubuntu dapper at work, it seems to be "medium crashy", where it'll sometimes freeze/crash on song change, maybe two or three times a day, but restarting it and going back to the track that made it crash, it then plays it just fine. Probably some uninitialized pointer somewhere that's read on track change, I don't know.

But GStreamer, there was some files it just didn't want anything to do with. I recall making some of them work by chopping a long line in the meta-data (ah, fixed length buffers!).

On commenting, I also don't have the "getting logged off all the time" you reported, so it's quite possible I just never saw this. I did experience this getting logged off recently, though, but just the one time.

Date: 2007-01-22 08:45 pm (UTC)
From: [identity profile] tygrbabe.livejournal.com
awww i missed your rants about itunes, .ogg and other music-playing-on-a-mac related things making you want to stab yourself :P

Date: 2007-01-22 09:29 pm (UTC)
From: [identity profile] pphaneuf.livejournal.com
Yeah, sure!

Date: 2007-01-23 11:04 am (UTC)
From: [identity profile] pphaneuf.livejournal.com
Oh, and to be clear: it's not just on a Mac. It sucks and makes me want to stab myself everywhere, Linux and Windows included.

Date: 2007-01-22 11:32 pm (UTC)
From: [identity profile] cpirate.livejournal.com
Ah, ranting about music and its players. A topic near and dear to my heart. But hark! I have found some amount of happiness in this formerly bleak landscape!

First of all, I commend you on your choice of directory-per-album. I've tried it with dir-per-artist, and it ended up annoying me. Even in the (relatively rare) case I want to do something to an entire artist's collection, it's easy enough to shift-click or refer to Artist\ Name* to get it all. I haven't found a downside yet, though I don't own any music from irritating artists who might have dozens and dozens of albums.

Second of all, Rhythmbox truly is designed to make one want to stab. I actually preferred XMMS. And I really hate XMMS. But as I mentioned before, Amarok really does work well, with a minimum of stabbery. Well, it's a KDE app, so you might want to stab a bit when you first install it and it asks if you want to use MySQL, PostgreSQL, or SQLite and other mind-numbingly useless questions. But they're getting better at that part. I normally hate KDE apps in general for this sort of reason, but once you get past the initial install, it's really quite good. Maybe because it ignores most of the KDE UI guidelines. It even has pretty good tagging support, and reasonable album art support. 1.3.9 is in Dapper, which I don't think is too bad, but 1.4.3 is in dapper-backports and has the unmissable album-shuffle feature.

Wow. I can't believe I'm actually happy with the state of music playing in Linux. What a time to be alive.

Date: 2007-01-23 04:54 am (UTC)
From: [identity profile] caffeinemonkey.livejournal.com
Isn't amarok that thing that exec()'s xmms to play music? Sounds kinda awful...

Date: 2007-01-23 09:44 am (UTC)
From: [identity profile] pphaneuf.livejournal.com
As far as I'm concerned, it could use mpg123 and ogg123, as long as it bloody worked.

Date: 2007-01-23 12:24 pm (UTC)
From: [identity profile] cpirate.livejournal.com
Er, no, not at all. Being a KDE app, in one panel of one of its four (!) configuration dialogs, you get to pick which sound output engine you want, e.g. xine, arts, etc. You know, because I care deeply, and don't want it to just pick one that fricking works and leave me alone. Sigh.

Date: 2007-01-23 10:44 am (UTC)
From: [identity profile] pphaneuf.livejournal.com
I figure that with directory-per-album, I can finally make sense of albums like soundtracks, compilations and such, that don't really have a proper artist for the whole album. I was diddling around with a "Various Artists" and a "Soundtrack" directory, but it always nagged me (here's my music OCD at work!). I also sometimes trade music, and as I do so per-album, I was finding that I was going up and down directories a lot. Since I didn't remember clearly why I picked "Artist/Album" in the first place, off it went. :-)

Another point of stabbitude with Rhythmbox I just experience is with queued songs. When one is playing, what does the "jump to playing song" command do? It puts the focus to the song in the queued song area, which, of course, is always the song at the very top, and I can find that in mere milliseconds should I ever want to (which I never do). Smart.

Maybe I should give Exaile a try. I already feel strapped for memory, loading up KDE's shared libraries for a single application seems a bit nasty.

Or maybe I'll just break down and write myself a fucking player. Remember that you promised you'd beat me up or something if I did that. Maybe my chance is now, since I'm out of reach! ;-)

Date: 2007-01-23 12:28 pm (UTC)
From: [identity profile] cpirate.livejournal.com
True, Amarok does take a bunch of memory. OTOH, isn't your will to live worth going out and buying a bit more RAM?

Exaile looks pretty reasonable, maybe I'll give it a try once it's had more time to catch up to Amarok. Writing your own player would be a pretty good way to get me to fly over and stab you :)

Date: 2007-01-23 12:36 pm (UTC)
From: [identity profile] pphaneuf.livejournal.com
Well, the thing is, it's my work machine, and this would involve making a requisition, forms, and fighting a world-class bureaucracy machine that also crushes my will to live. So, you see, it's tricky.

I'm not too convinced of a significant program written in Python, though, as in my experience, this generally ends up providing stack dumps on its stderr.

If I'd write something, it would probably have a Mac OS X slant, with just enough portability to take it to work so I can avoid killing myself. That said, I could sure enjoy your visit, if I can avoid your stabs. ;-)

Date: 2007-01-22 11:34 pm (UTC)
From: [identity profile] morethanreal.livejournal.com
Your mistake is using OGG... iTunes does put on a pretension of user friendliness, but only if you do things the way they want you to. And iTunes care about OGG about as much as it cares about using iPods with Linux.

I used to fight the current with my OCD music organizing, but recently I've given up more or less and just do it the way iTunes wants me to, at least when I'm at work, and have given up on album art. (the cover flow feature is pretty lame IMO...) I still tag all music by hand though... I hate it when tools get it wrong or not-quite-right.

Date: 2007-01-23 11:01 am (UTC)
From: [identity profile] pphaneuf.livejournal.com
My precise question to the iTunes team would be this: why don't you guys care about bloody QuickTime? Maybe, even, say, stop maintaining duplicated codecs left (QuickTime), right (CoreAudiO) and centre (iTunes)?

Do you suggest I give up on Ogg Vorbis? I wrestle with this moral conundrum every once in a while (I did this weekend)... I was looking at the MP3 codec settings in Max, thinking that its latest-generation LAME encoder at the "transparent" level ought to be close enough to Ogg Vorbis at quality 6 like I usually do... Hmm...

I actually find iTunes in general rather pleasant. What I hate about it is how it comes so very close, but misses some very tiny details (for example, insisting on blacking out my main screen when I put the visualization on my second output). If it'd be open source, I'd just fix it and laugh all night long. But as it is, it's an exercise in frustration, being oh-so-close, but knowing it will never be "it", because Apple hates my anarchist Vorbis-using guts.

By the way, the newest version of Max uses MusicBrainz instead of FreeDB, and I find that it's markedly better. I used to just turn off the automatic meta-data fetching, and just type it all myself, since it was so often wrong, but now, it seems good enough. I still review and correct stuff, but it's not as systematically wrong as FreeDB seemed to be.

Date: 2007-01-23 12:32 am (UTC)
From: [identity profile] dread-queen.livejournal.com
I use a discman.

Date: 2007-01-23 09:39 am (UTC)
From: [identity profile] pphaneuf.livejournal.com
You're smarter than you think.

February 2016

S M T W T F S
 123456
7891011 1213
14151617181920
21222324252627
2829     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 7th, 2025 05:48 am
Powered by Dreamwidth Studios