The New York Times: Stanza: “The iPhone or iPod Touch can act as an electronic book reader.”
Tip of the Week: Turn Your iPhone Into an e-Book

Bulk Moving of Ebooks from PC/Mac to iPod via Stanza

While I've got your attention, I wanted to address another long-term problem - that of moving large numbers of books to the iPod without spending an unreasonable amount of time to do so. Up until recently, we really didn't have much of a viable mechanism for doing so - the introduction of the "Download All" capability opens the door to a certain extent for a solution.

Now that the "Download All" option exists on the iPod, the biggest stumbling block is actually on the PC side. The problem there is that Stanza for the PC (not too sure about the Mac - don't have one to test) has a rather nasty habit of exporting multiple entries to the "Shared Books" section of the library on the iPod - one for each book that is opened. This totally negates the value of the "Download All" feature on the iPod, as the "Download All" button only operates within a single shared library.

Now, before you point out that you can get multiple entries into a single shared library by opening a single book, selecting File->Open File-> etc., then daisy-chaining your way along until you get all the books opened, let me point out that this is *extremely* cumbersome, time consuming, and requires a great deal of navigation (especially if you have literally thousands of ebooks to look through). This, unfortunately, makes this option not particularly useful.

The alternative solution is to set up an association in Windows such that StanzaPC is the default program for opening up files that have ebook filetypes (LIT, PDB, etc.), then bring up an instance of Windows Explorer displaying your library of ebooks. You can simply walk down the list, double clicking on any books you want to move, or even selecting entire blocks of ebooks (as in all of a series) and then selecting an "Open" action. Once Stanza gets all the books opened up (could be a little while - I try to limit it to about 20 books at a time), you should theoretically be able to go to the iPod and "Download All" - and life would be good. Alas, it doesn't work that way.

What happens is that when Stanza exports these ebooks via the wifi interface, they show up in the "Shared Books" screen on the iPod as multiple libraries (not too sure of the terminology you're using), of the form Books on PCNAME, Books on PCNAME(2), Books on PCNAME(3), etc. Each of these shared "libraries" contains one (and only one) ebook - and since the "Download All" doesn't appear to work across these "libraries" it is largely ineffectual. You still have to go through them one at a time.

Without examining the code base for StanzaPC it is difficult to be certain exactly what is happening to cause this behavior, but I suspect that it is something along the line of this:
1) If you launch Stanza then go through the File->Open File process iteratively, then it appears that Stanza is creating child tasks within the same JVM. If that is the case, then one copy of the "library server/catalog server" (or whatever you call it internally) can be shared among multiple books easily - and they all show up as one Shared Library.
2) If Stanza is launched multiple times by Windows Explorer (or a batch file, or other utility), it looks as though there are multiple parallel processes (and JVMs) launched, each one having its own instance of the library server - and then we have a problem.

Now that I've bored everyone to tears, and laid the figurative groundwork, let me get to my point. Have you ever considered setting the "Library Server" component of Stanza PC up as an external service that can be shared by multiple parallel copies of Stanza? It shouldn't take too much to make that happen, and it would greatly improve the usability of the product. Failing that, can StanzaPC be set up to accept an extended list of fileids to open rather than just one? Doing this one at a time is a really cumbersome, annoying process. You could even enhance the iPod version of Stanza to do an "Update All", in which it would compare the file size/date/etc. of all the files in the shared library, then automatically download (and potentially replace) all those that have been added and/or changed.

I hope that this will generate some discussion among the community, and that we can get some kind of viable bulk transfer system implemented soon. If anyone has any better ideas, I'd certainly be interested to hear them.

Michael

Plans?

Are there any plans in the near future to have the ability to bulk load books into mobile device through the desktop app? This is a very important feature for me and, I would imagine, for a lot of others.

Thanks.

Although at the moment the

Although at the moment the Desktop version of Stanza does not support bulk transfer of files to the iPhone, some of the other transfer methods mentioned in the FAQ do support this.

I did try Calibre - and it

I did try Calibre - and it still falls short. In order for Calibre to be viable in this context, a few things would have to happen.

1) Calibre would have to GREATLY improve its ability to translate ebooks from other formats into epubs, as it is showing a remarkable tendency
to stall out in conversion of a substantial percentage of my ebooks - ebooks that StanzaPC opens without a problem.
2) What I'm looking to do here is develop a mechanism by which I can select 1-n ebooks quickly and with minimum fuss, make those books (and ONLY those books) available to the iPod for download, and then download them in a single step (as in "Download All"). Calibre's ebook migration scheme appears to be based upon the idea of sharing the complete library, expecting the iPod user to then pick and choose from the list for download (one at a time). The two models, while having some infrastructure needs in common, are notably different. For Calibre's model to be viable, it would need to be updated to support a mechanism by which a designated subset of the library could be shared on demand - much the same concept as a playlist can be shared to an mp3 player without having to share your entire music library. This subset (call it a readlist for convenience) must be very easy and quick to create and populate, and must be easy to manipulate. Pattern matching search capability, block copy, block delete, etc., much in the same model as Windows Explorer's ability to copy, move, and manipulate files and directories would be ideal. And while Calibre certainly could eventually grow to support such a model, I haven't seen anything in it to suggest that kind of functionality today.

Though experimentation, I have discovered that Stanza will accept wildcards and pattern matching in the command line interface. An invocation of the form "Stanza c:\ebooks\HarryPotter*.LIT" will attempt to open all files matching the pattern provided. What's more, it will do so within a single JVM, exporting all the ebooks under a single shared library entry - which makes the "Download All" ability something that might actually do some good. This command line interface appears to be undocumented (at least, I haven't found any documentation of it), but this ability could give me the answer I've been looking for. What I'd have to do is to create a "readlist" folder, use Windows Explorer (or a similar tool) to copy the ebooks I want to transfer into that folder, then open them all in StanzaPC with "Stanza c:\ebooks\readlist\*.*" or some variant thereof. Once the files were all opened under Stanza (better keep the number of ebooks pretty low), I should be able to download them all to the iPod via the "Download All" option. It is somewhat of a Rube Goldberg scheme, but I think that it will work.

The only other options I've been able to identify would entail bulk converting all the various ebooks I wanted to move into epub format, then setting up a utility to create a Shared Catalog for them. They could then be "Shared" to StanzaiPod via a webserver running on the PC. This is perhaps viable for a power user, but it is probably beyond the reach of the average ebook reader. I suppose that I could just Add all the epub versions to Calibre and let it deal with publishing the Catalog and hosting the download process, but with support for only one Library I'd have to just treat Calibre's library as if it were a folder, effectively recreating it each time I wanted to move books.

support's picture

Your analysis is correct on

Your analysis is correct on most points. Stanza Desktop does currently suffer a number of limitations in its processing of multiple files, and so is not suitable (or, at least, very tedious to use) for large-scale batch conversion. The best suggestion we can offer would be to get all your books into EPUB (possibly by using the command-line batch conversion included with Calibre), and then transfer them all over to your device via USB as per http://www.lexcycle.com/faq/how_to_get_books_onto_stanza_iphone#sharing_....

I suspect you could quite

I suspect you could quite easily do what you want in Calibre by making use of the Tags facility to create/maintain your lists (as virtual lists).

Also you mention that you are using a PC? I created the calibre2Web utility that runs under Windows and allows you to host a structured catalog on a Web Server. I use this to avoid having to load too many books at a time onto Stanza as I can load them on-demand over the air. I believe that the latest release of Calibre has a similar facility supported by its embedded web server but I have not yet checked that out.

Try Calibre.

Try Calibre.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.