Apple

HOWTO: Add comics from comics.org to Delicious Library

With Delicious Library 2 releasing sometime this holiday season, I may actually start using it for my library catalog. What has stopped me in the past was its lack of expandability - with no AppleScript support, I couldn't add in new data scraping functionality myself (though, if I were truly bothered, I'd've done custom imports). Thankfully, Delicious Library 2 fully supports AppleScript and I'm hoping I'll be able to hook into new item creation, as I'd love to store my comic and magazine collections (and maybe even weirder things like collectible card games, but that'd be ReAaALly stretchin' it).

With the prospect of doing comic importing "the right way" (meaning "type in a title and have it Work" vs. "prepare an external file for importing"), I decided to see if I could get the current release, version 1.6.6, doing "the right thing" the wrong way - getting it to Work via an amalgamation of hacks. I succeeded, but I'm not going to spend a lot of time walking through this: I'll assume you're willing to wait until version 2 is out and this all gets rewritten properly (hopefully... if it's not possible, this hack will be fleshed out in more quality-assured detail).

To get this going, you're going to need:

  • The ability to modify the normally hidden /etc/hosts file.
  • The built-in Apache web server enabled (via System Preferences > Sharing).
  • Leopard. There's a 99% chance it'll work on Tiger too, but I'm not checking.
  • The comic book ID you'd like to import from the Grand Comic Database.

Be forewarned: this is a hack in the earliest stages! I'm sure there are plenty of things that can go wrong (like DL loading up the wrong URL for grey arrow clicks, bad scrapes from GCD due to unexpected formatting, the ability to add in other "matching" items from other Amazon sites, release dates that expect the exact day, etc.). I'm hoping all this stuff can be cleaned up a bit more in DL2, but DL is pretty tightly tied to Amazon's Web Services, so pulling data from other sources may always be kludgey like this.

Step 1: Intercept Delicious Library Lookups

The first thing we're going to do is tell Delicious Library to use Amazon Japan for data lookups (in Library > Preferences > Load Details From). I chose the Japan site because I don't think I'll ever legitimately visit there (much less use its Web Services), and the first step of the hack involves redirecting all requests sent to that site from your computer back to your computer. This will trick Delicious Library into thinking it's communicating with Amazon Japan, but instead, it'll be communicating with a script we'll install down in step 2.

To redirect all our Amazon Japan traffic, you'll need to edit /etc/hosts with an authenticating text editor (like BBEdit, or sudo vi, or whatever). Add the following to the bottom of the file, making sure that the whitespace between the two columns is created with a tab:

  127.0.0.1       webservices.amazon.co.jp

Once you save the file, you should be able to access http://webservices.amazon.co.jp/ within your web browser and see that it is most definitely not the Amazon site - it should be whatever page you would normally see if you loaded http://127.0.0.1/ (by default, Apache's "Seeing this instead of the website you expected?").

Step 2: Responding to Delicious Library Lookups

Next, we have to install our script to respond to these lookups. If you attempted to add an item to your Library now, you'll notice that it should still work - it appears DL will default to Amazon US if there are no relevant results on your selected site (Japan, now being redirected back to your computer). The first step to responding correctly is creating a new directory at /Library/WebServer/Documents/onca/. Within this directory, we're going to create a text file called xml which will contain our custom script for loading comic books. This path mimicks the Amazon Web Services lookup that DL requests.

The new file will need to be set to 755 (chmod 755 /Library/WebServer/Documents/onca/xml) so that it is executable. We'll also tell Apache to let this script be executable from the web; to do so, add the following to /etc/apache2/users/username.conf and then restart the web server with sudo apachectl restart:

ScriptAlias /onca/ /Library/WebServer/Documents/onca/
Neat trick? Want me to keep going and get it working in DL2? Send me a buck or two!

Comics.org will be our comic book data source. We'll return data only if we actually find a comic book on that site... otherwise, we'll return nothing, which will force Delicious Library to use Amazon US for your regular scanning needs. Replace your xml file with this final version (renamed to xml), then run through the steps below:

  • Find your comic on the Grand Comic Database.
  • Get the comic ID from the URL (such as 13825 for Batman #111).
  • Add a new item to DL, and add the comic ID to the "Find by #" field.
  • Preface the comic ID with "B0" and then a series of "x"s until it turns into "Find by ASIN".
  • For Batman #111 (13825), you'd use B0xxx13825.
  • Click the "Find by ASIN" button.

If everything works, you should see something like:

Delicious Library importing from comics.org

There's plenty more to be done; I just hope I can do it better in DL2.

Tags:

Wireless Video Streaming with the Mvix MX-760HD

[This has also been posted at MacDevCenter.com].

In response to Wireless Video Streaming from OS X to your TV?, fearless reader Scott noted the Mvix MX-760HD as offered by ThinkGeek. Out of all the possibilities posted, this seemed the most relevant: wireless, internal hard drive (which is entirely optional), USB connectivity, DivX and XviD playback, and composite video connectoids (along with others). After talking with Rich Knitter, MvixUSA's Director of Marketing, he agreed to send me a review unit with the hope that I also get step-by-step sharing instructions for (the as-yet-tested) OS X.

Welp, I gotta tell ya, I'm pretty happy with this little thing.

Hardware setup was easy - the unit comes with a stand (which seemed a little loose until I found the center sweet spot), USB and composite video cables, a driver CD (which you won't ever need), remote control (a block of plastic with a central keypad similar to, but not as good as, a TiVo), the requisite power cables, and a 5dBi antenna. While the unit does support HD and progressive scan and all those other high-falutin' feel-goods, you'll need to supply your own cables. For this review, I've only used composite video because that's all I (care to, at the moment) have.

I first tested without installing a hard drive (the not-included but provided Maxtor 300GB is one of a few sizes available if you order directly from MvixUSA.com) because my focus was wireless streaming - I wanted my bevy of disks upstairs to combine into one voltronic horde of video bliss. Thus, after a quick load screen (in which DivX was misspelt as "Dvix"), I hopped into the Setup menu and started tweaking the network options. The UI isn't ugly (see the online PDF manual for some examples), though it does seem a bit syrupy at times, but not enough to be annoying.

What was annoying is its sole support for WEP as a wireless encryption standard. I don't look forward to reconfiguring all my game consoles, laptops, and handhelds away from the WPA I had been using before. After tweaking my network (as provided by a D-Link DGL-4300), the MX-760HD connected to it just fine, without having to manually specify IPs, routers, DNS, etc.

That left me with just nailing down the actual file sharing. First (tested under 10.4.8), enable OS X's Samba server by clicking "Windows Sharing" under Apple Menu > System Preferences... > Sharing. OS X will force you to choose which user account can use Windows Sharing but this won't actually matter to the MX-760HD - it doesn't send authentication so we'll need to specifically customize our server to allow guests. We'll also want to tweak exactly what directories we're sharing, as opposed to the enabled user's entire Home directory (note: even if that is what you want, you'll still need to configure it as "guests ok", something you'll probably want to reconsider for security reasons).

There are two different ways to configure the Samba server: by editing the /etc/smb.conf manually or by using a helper application like the donationware SharePoints. SharePoints has an advantage because it will display the read/write permissions of the directories you're sharing: "everyone" must have "read" access for the files to be shared properly. Before we continue, you may want to disable the default "share the entire home directory" option under SharePoint's SMB Properties > Home Directories. This is entirely optional.

To share a directory of movies, make sure you're on the "Normal Shares" tab, create a "Share Name" and "Browse..." to the right Directory. You'll also want to set the "Windows (SMB) Sharing" dropdown to "Shared (+)". Finally, click the magical circle to the right of "Show File System Properties". This drawer will offers an "Allow Windows Guests", which we'll need to enable for anything we want the MX-760HD to access. Under "Permissions", make sure "Everyone" can "r" (read) the directory, otherwise it'll will appear empty when browsed (note: this WILL change the literal permissions on disk - it's not just a Samba thing). If you haven't protected your wireless network with encryption (even if it's simply WEP, as required here), I'd heartily suggest you do so now. You'll be asked for your OS X Administrator password to effect any changes you make here. Your final screen should look something like:

Head back over to the MX-760HD and have it "Refresh" its Movie file listing. Should everything go as smoothly as it did for me, they'll be a bit of a pause as it scans (and caches) the share, but your movie files should be displayed; anything not a recognized movie file is not shown. One of the things I continue to appreciate is the long file name listings: you can actually see more than six or eight characters, and pausing on any one title will scroll the rest of the title in place. I don't understand why they didn't use this same interface for the "Recent Items" screen, which is utterly useless in its current icon-based incarnation. Choose what you'd like to watch, and depending on the size of the video, it'll start streaming to you wirelessly in 10 to 30 seconds. Awesome.

Installation of the optional hard drive is also easy: no tools are required though I did have some troubles getting the single case screw back into place, and it took a few tries of concerted jiggling to align it just right. Once the hard drive is in and connected via USB 2.0 to your Mac, format it with Disk Utility as an "MS-DOS File System" and you'll be good to go. Mounting the MX-760HD's hard drive does require its power adapter which can cause a bit of frustration when it's entangled into the mass of cables behind your entertainment center. Having a laptop in the living room is one solution; a separate internal drive enclosure for drive swapping is another. MvixUSA recently reported that a firmware update will allow mounting over the network as a NAS/NDAS device, but no ETA on this support has been provided.

Of the 20 or so ancient but much-cherished Britney Spears music videos I threw at it, all showed signs of bad cropping - some had a healthy 20 to 30 pixel column missing from the left hand side. Modern day movie rips encoded at 16:9 receive this same chopping on the right side too. This is disheartening but my previous standby, a Philips DVP-642, also suffered the same problem. Digital video software really needs take these files, figure out what dimensions they are at runtime, then display them shrunk to fit into the TV screen with a surrounding border. Either that, or a Zoom Out (nearly everything has Zoom In, why not Out? Cheap solution!) Some folks have suggested this may be due to my use of composite cables, and I cheerful admit my ignorance and luddism.

Codec and playback support was strong: after testing the first few minutes of nearly 150 movies stored on the hard drive, only two or three gave the unit problems. QPEL support is missing, nor can the unit handle the MS-MPEG4v2 codec which all the DAP's MST3K videos are ripped as, though they admit this is a problem:

However, MS-MPEG4v2 is not without it's faults, the most obvious of which being that it is a proprietary codec that is no longer in development and is not likely to make its way into settop boxes or consumer electronics anytime soon. While technically a derivative of the MPEG-4 standard, MS-MPEG4v2 does not produce an ISO compliant video stream. What that means from a practical cross-platform standpoint is that when MPEG-4 capable DVD players do start becoming available (or the rumored MPEG-4 based HD-DVD spec), getting MS-MPEG4v2 files to play on them will be a non-trivial task necessitating at the very least transcoding to an ISO compliant codec and the quality loss associated.

There are no current plans to support these codecs in a future firmware upgrade.

I did not test the Photo or Music playing capabilities to any persnickety degree, but the smallest increment of time for image slideshows is three seconds, which turns into roughly six or seven if you're wirelessly streaming 2 MB digital camera files. It'd be nice if the unit could start caching and requesting early so that a more smoother and faster slideshow transition is possible. There does seem to be some issues with the "Recent Items" function in relation to photos or missing media or perhaps amount of media: after looking at roughly 50 images of a 500 image directory, I deleted that share leaving me with just movies to be watched. However, browsing through the media list to get to the "Setup" menu caused a freeze on the "Photo" item, which showed "Recent Items" that no longer exist. I don't know the cause, but it was about 90 seconds before I regained control. There doesn't appear to be any way to delete the "Recent Items" so, at the moment, I'm just avoiding that menu item entirely and used the "Setup" button on the remote. A day later, I am unable to reproduce this particular freeze.

Apparent "freezes" like this happened a little more often than I would like, and it always seemed related to the unit's rebuilding of a file list that I know has changed. After adding 100 GBs of movies to one directory, a new access to the hard drive (which I've coquettishly named "Innards") caused the unit to appear unresponsive for nearly six minutes, nearly two minutes after I gave up clicking the "Down" arrow to check to see if it was working. Another down arrow finally teased a response, but my original request, to browse the contents of Innards, never happened. Accessing it again gave the lickety-split response I was hoping for and, save for these initial first requests after file modifications, access to large directories continues without incident. With that said, I dare not throw my 22,000 track MP3 library at it anytime soon (nor would I ever, as my sole desire is video watching).

I was unable to test subtitle support heavily, but there do seem to be problems with .sub and .idx files. Though it claims support for them, a Mvix help document suggests converting them to .srt instead; I was unable to get the files I had working (nor did I try to convert them). Another .srt file loaded with no problems, but the subtitles were in Italian so I am unable to confirm if they matched up with the video properly. There is support for timeshifting the subtitles backwards or forwards, and you can also change their position on screen. Finally, the color of the lettering can be changed from the default white to some others, but the font has black borders which should prevent any one color from being washed out by the current scene.

While there are problems here and there with the UI, I'm quite happy to have the MX-760HD as a central part of my video entertainment: I no longer intend to burn DVD-Rs anymore, and the wireless support removes the need for any other moving parts. Hopefully, future firmware updates will hammer out the remaining bugs, but until then, I'm quite happy to route around them: the advantages and other qualities make this combination of hard drive, streaming, and video too powerful to ignore.

Tags:

Wireless Video Streaming from OS X to your TV?

[This has also been posted at MacDevCenter.com].

The short story is that I bought a house and, with it, a new wireless router (the D-Link DGL-4300, quite nice) to penetrate the walls my previous apartment never had. With a strong wireless network on the second floor connecting to my entertainment on the first, I've my game consoles and laptop satisfied, but would like to focus on video streaming. In short: I want to wirelessly stream movies (of MPEG, DivX, and XviD persuasion) to my TV.

My current workflow is to burn digital movie files onto DVD-Rs and then play them through my Philips DVP-62, which is a cheapie throw-away player that supports all the formats I care about. This has slowly become costly and inefficient: with over 100 DVD-Rs now burnt, it's a pain to find the right movie on the right disc (and heaven-forbid I'd like to watch a marathon spanning multiple discs), much less pay the cost for media (which is roughly the same amount as the player itself).

Recently, an update to the Xbox 360 promised the ability to stream video from sources other than Windows Media Center machines and, while possible on OS X (with the help of shareware Connect 360), you need to convert your files to WMV/WMA, a feat that only Flip4Mac can currently accomplish. VLC can apparently do it on Windows, but doesn't support WMA encoding on OS X in my tests.

With over 100 DVD-Rs containing six or seven movies a piece, and Flip4Mac encoding times taking roughly the duration of the file itself, this isn't entirely ideal either. I've yet to find a live transcoding solution (i.e., convert at time of play request) for OS X, though a few exist on Windows (TVersity's latest version has specific support for this, but doesn't run on OS X).

Yes, I do have Parallels on my MacBook Pro. Yes, I have BootCamp too. Do I want to run my laptop for 15+ hours to support a movie marathon? Do I REALLY want to pipe video through my Xbox 360, or use a non-Mac solution? No. Could I save myself a lot of effort if I just settle for second best? Absolutely, but it'll take me a few more weeks to resolve myself to that.

So, of late, I've been looking around for "digital media receivers", which are boxes that specifically support what I'm looking for (again: wireless streaming video of MPEG, DivX, or XviD from my Mac upstairs to my television downstairs). Unfortunately, I haven't found a lot of satisfying results that'd fill me with such confidence that I'm ready to plunk down "definitely" as opposed to "experimental" money.

  • The KiSS DP-600 plays all the formats I'm looking for, has a clean interface, and specifically supports OS X with its (ugh, brushed-metal) MacLink application. Unfortunately, it doesn't appear to be available in the US, and I'm not entirely willing to make this my first (non-PayPal, more than $100) overseas transaction. It is also a DVD player which seems to (though I've yet to get perfect confirmation on this) do the same thing as my current Philips box - play files stored on a DVD-R. Unfortunately, the site isn't entirely "robust" and hasn't reported any news since late 2005 (though new firmware has recently been released). Has anyone used this? If it's a DVD player, what region is it encoded for? Are there any American distributors that I've missed?
  • TwonkyMedia is a general purpose UPnP server for videos, photos, and music. The software is available for Mac, Linux, and Windows and they list a number of supported systems, such as the D-Link DSM-520 and the Zensonic Z500, which both have their pros and cons. The Z500 is an unsexy DVD player (which I don't really need) and has a horrific interface, while the DSM-520 (the better of the two, IMO) has had various reviews saying its interface was slow (though some have suggested this is due to their shipped Windows-only media server, which I wouldn't be using) or that the newest firmware has broken some types of XviD and DivX playback. Both come in around the "experimental" $200 mark.
  • Apple's planned iTV is a non-starter - without S-Video or composite video, I can do nothing with it (unless I buy a new TV, which isn't going to happen anytime soon), and iTunes cheerfully ignored any of the DivX and XviD files I dropped over it (and yes, these same files playback fine in QuickTime). Whilst I'm sure enterprising hackers will either add extra formats to iTunes or otherwise route around those particular requirements, I still don't plan to replace my TV when other potentially cheaper alternatives may exist.

Any readers have any of their own experience or thoughts to report?

Tags:

Settling in with Boot Camp

I've been fiddling with Boot Camp on a MacBook Pro 2GHz since its release, and I'm ready to settle in: I can just expect games to work with all their gee-whizardry enabled and the highest widescreen resolution. Half-Life 2, Dungeon Siege II, Tomb Raider: Legend, and Oblivion: all working wonderfully. The one question remains: which of the zillion MMORPGs whose doors are now opened do I want to explore? (Yes, I play World of Warcraft, and yes, I do so only under OS X).

I've given up on the wireless connection for anything but casual online browsing or downloads (such as small patches) - various folks have suggested Windows XP's wireless capabilities are "flaky", and I've no real desire to fix it when I can wire into my router easily enough. Last night, I started a free trial of R.O.S.E. Online (which is at least entertaining enough to want me to play for a second day), and I'm debating City of Villains and this week's Auto Assault (though, fie!, do I wish there were demos).

My final notes on the Boot Camp experience (see my previous posts for more):

  • remapkey.exe, a utility that will allow you to remap keys (so that you can "Delete" on a MacBook Pro, where the existing Delete mimicks Backspace), isn't actually included in Windows XP, as I originally assumed. Instead, it's part of some Windows utility/resource pack, along with a bunch of other junk. Worried about hard drive space (see below), it's relatively easy to find a standalone copy of the .exe on Google, and I can confirm it does what it professes.
  • I originally chose 25 GB for the size of my Windows partition, so that I could read and write to it from OS X (where I'd be downloading demos and so forth whilst I accomplished real work). With three recent games installed, however, I'm already down to only 10 GB left, which is a bit less than I had hoped for. Granted, "how many games can you play at once?" and all, but still, a bit disconcerting. Hopefully Leopard has some way of writing NTFS filesystems.
  • Oddly, when I plug in my headphones to the MacBook Pro running Windows XP, sound will continue to spit out of the laptop speakers. I discovered this accidentally when I was kicked out of the local Borders - apparently, audio erotica is not appropriate whilst enjoying a tasty cheesecake at their cafe. Explanations that I was working on my memoirs, How I Learned Romance From Big Brown Riding Hoof, persuaded them little.

Any questions?

Tags:

Boot Camp and Tomb Raider: Legends

With Boot Camp and Windows XP running fine on my MacBook Pro 2GHz, the next step was testing out a recent game. Before I ran out and dropped some hard-earned money on, say, Elder Scrolls 4: Oblivion, I headed over to Download.com to look for a demo of something "worthy". I found that in the Tomb Raider: Legend demo - not that I expected it to be a "worthy" play, but because it was new and, presumably, graphically demanding.

Now, realize I am a console gamer (and occasionally OS X) and by no means a mastah of Windows tweakage of any kind. With that said, the Tomb Raider: Legend demo ran jim-dandily under Windows XP on my MBP, defaulting to a resolution of 640x480. Gameplay was fluid, immediate, and didn't "look" bad. The real test was enabling every "gee whiz" graphics feature, increasing the resolution all the way up, and enabling widescreen. I can report that, with a maximum resolution of 1440x900, the game continued to run nicely with a refresh rate of 60hz (the only option available). I have a nagging feeling that 1360x768, the next highest resolution, "feels" better, though I lack the technical terms and know-how to describe it accurately (if I were to try, I'd say that it felt like frames were dropping and that movement didn't seem as "smooth", even though there were no actual hiccups of play).

Satisifed at my little test, I'm heading out today to pick up Oblivion and possibly Dungeon Siege II.

Besides games, some other notes:

  • There is no right click emulation under Windows XP. While you can certainly continue to do everything you need to do, if you'd like to do it faster, you should consider an external mouse. The Logitech USB mouse I use on my primary Mac worked immediately when plugged into Windows.
  • The Delete key on the laptop seems to actually be a Backspace key - thus, you have no ability to Ctrl-Alt-Del (which can be important if you need to login) or to enable Lara Croft's flashlight. The OnMac.net project has already reported on this, and a workaround: ... go to Start: Run. Enter remapkey. A nice GUI utility pops up to let you remap keys on your keyboard. You can use it to remap the delete key. I recommend using the Right Windows key (Right Command on MacBook Pro keyboards). After saving, reboot and you'll be able to use Ctrl-Alt-(Right Command) to do a Ctrl-Alt-Delete and logon to Windows domains and other useful things. I've not actually done this yet.
  • My wireless Airport connection seems flaky - besides not being able to use WEP, it seems to connect for 10 minutes, drop out for a minute or so, reconnect, ad infinitum. This isn't that big of a deal for an offline gaming experience, but not so much if I wanted to play City of Heroes (I do). I haven't tested a regular wired connection. Anyone else seeing this? It doesn't happen when I'm booted into OS X.
  • After Windows XP installation, updates, and the TRL demo, I have 20 GB remaining of my 25 GB partition. Not knowing the regular install sizes of Windows games, should that be alright? I don't expect to be running 30 games at once, but I do expect to be downloading user-created mods and so forth.

More on the Oblivion install later.

Apple's Boot Camp Running Smoothly

Installed Apple's Boot Camp on my MacBook Pro 2GHz machine today, and everything went swimmingly: Windows XP and the Mac drivers (ATI video card, wireless, sound card, etc.) installed, and no difficulties along the way. I had some initial problems connecting to my wireless network, but that seems related to the WEP key - if I disable WEP encryption from the shared Airport connection, I can connect with little problem. I've grown used to doing this anyways when I connect via my PSP or Nintendo DS. Dunno why, and don't really care - if I walk outside I can't reach the network, so I'm not too concerned about interlopers and it'd only be off for a very limited time anyways.

And, really, that's the sole reason I've got Windows XP installed now: gaming. While I had every intention of attempting the same feat when the OnMac.net project hacked together a video driver, Apple just plumb ol' made them irrelevant. Since I'll still (naturally) be using OS X for Everything Else, I only set the WinXP partition size to 25 GB, which allowed me to format it as FAT32, which means OS X can read and write to it. And that it does: once I rebooted back into Tiger, there was the new partition already mounted, to which I started copying some files I had been downloading just for the occasion.

Games ahoy!

Tags:

Primary Machine: Laptop or Desktop?

Received the MacBook Pro yesterday, and have had no hardware problems whatsoever. I do have a question, one I didn't think much about it when ordering: for people with a laptop AND a desktop machine, how are you handling which is the "primary" and which isn't? Where are all your files? Where do you keep your gigs of music (for me, having over 100 gigs of music, they'd have to remain on the desktop, but then I get all fashimmered about how I can't set ratings or increment playcounts from an iTunes share)? Do you keep everything on one machine, and work on the shared files when you're local to the network? Do you rsync back and forth? What if you don't have .Mac and thus can't use iSync? Are all your work files on the laptop, as logic would dictate they'd have to be when you're at a remote location? Do you ever care about syncing them back to the desktop machine? When you're home and you wake up in the morning to check your email, which machine do you go to? Do you have a desk for your laptop?

Tags:

MacBook Pro 2GHz: 0wned

I just ordered a new MacBook Pro 2GHz laptop from Amazon.com. Same price as from Apple ($2499), but there's a $150 mail-in rebate. I also have a Chase/Amazon.com credit card, which means I get three reward points for each dollar: 7500 reward points. 2500 reward points are redeemable for a $25 gift certificate. Total cost of MacBook Pro 2GHz? $2349, with $75 worth of credit usable at Amazon.

Oh, and right, I'm quitting my job. More on that later. Hire me!

Tags:

Subscribe to RSS - Apple