Monday, December 24, 2007

How long does it take your book to boot?

Mine takes about 5 minutes, because my book is a Sony Reader PRS-500.

Overall, it's a nice device, and I use it all the time, except it can sometimes be very, very slow. I have about 600 books on an SD card, which is what could be the problem - they must have some N**2 algorithms hidden in there somewhere.

The quality of the electronic-ink screen is really decent, and once it boots, the device is reasonably responsive. The biggest problem with it is there is no way to maintain hierarchy of the books - in my case all 600 of them are shown in one big list. You can page through it, but it's 60 pages. You can sort these 60 pages by author, title, or the date the book was transferred to the device.

Even if they have had a one-level hierarchy based on authors, or genre, or anything, using the device with a lot of books on it would have been much easier. As it stands, the fact that it can take a 2GB SD card is not very useful.

The ideal solution, of course, would be to just support a file system, with user-defined folder hierarchy. And this brings me to one of my favorite rants about all media playback devices and software that I have seen so far - the fact that they all support hard-coded hierarchies based on file metadata exclusively.

Configuring metadata is a pain. There's no easy way to set, let's say, a genre for a lot of files. Supposedly, there are internet databases that the ripping software can (and does) use to query metadata when it rips the CDs. In reality, these databases are extremely inconsistent. On CD of a series could have genre "Classical", and the next would be "Opera". There are 3 spellings for audiobooks - Audio book, AudioBook, and audiobook. And let's not even go into various ways people misspell the artist names.

That is, if you're lucky enough to have all your music in English. But if some of it is in Russian, Japanese, Chinese, or any other non-latin-based alphabet, then there will be albums with author names in 2-3 different encodings, and 5 types of transliterations, making finding anything completely impossible.

On the other hand, putting files in directories is easy - everybody knows how to do it, operating on large groups of files is easy, and the user is in ultimate control. I have no idea why not use an old, proven model of a file system instead of inventing a new model, setting up databases, creating synchronization protocols - and all that is to make user's life harder.

So what I ended up doing at home is write a program using Windows Media SDK that allows setting metadata from a command line, putting all music on server in the following hierarchy: genre\author\album_name, and writing a script that enumerates all the files (it took quite a bit to write it in CMD batch language - I wish I knew python back then :-)), and sets the metadata to the respective directory names.

It took a day or so to set up, but at least now my hardware devices sort of cooperate.


Dmitry Alekseenko said...

Old proven file system model is pretty straightforward for us 'cause we have been working with it since our childhood.

I am not quite sure that all these files and folders are what everybody wants to see. What people actually worry about is their data -- songs, pictures, video, text messages but not some weird concept of files.

At the same time I agree that there should be some hierarchy for the devices such as your book reader. May be like in iPod -- one can choose an artist, an album, a genre and so forth. And one shouldn't be bothered about how all this stuff is being stored on the device.

Илья Казначеев said...

There is software that fixes tag encodings, software for tagging, software for retagging and for laying into directories.

My preference are id3iconv, easytag, amarok and amarok.

Anonymous said...

Who can write s/w that will help me to find time to read these 600 books ?