Archive for January, 2005

1/30/2005: 1:42 am: RobertEntertainment, Intellectual Property, Speech

As seen recently on Slashdot, MGM recently settled a class action suit involving the image quality of DVDs they sold under the classification of “widescreen”. The claim is that the image width of the alleged widescreen versions was no different than for the standard versions. As per normal class action settlement verbiage, MGM denies any wrongdoing.

The website has a link to a five-page PDF containing a long list of the movies in question. If you purchased any of these movies between December 1998 and 8 September 2003, you can trade in each one for either $7.10 or a new DVD from a list of 325 titles. You have to submit a request for a claim form before you get to see the list of 325 titles.

I very quickly scanned the list and found at least four titles that I had purchased or received as a gift potentially during that time period - 24 Hour Party People, Powaqqatsi, Koyaanisqatsi, and This Is Spinal Tap. So, I called the toll free number to obtain a claim form. As I was calling, of course, I was thinking about how an automated speech application would be a perfect solution for collection the information for the claim request.

I wasn’t surprised to discover that the “claims administrator”, The Garden City Group, had come to the same conclusion. They have a call center in Sarasota, Florida, and have an IVR system or systems that they claim can handle 380 simultaneous calls. The website didn’t distinguish between how many were DTMF-only ports and how many were speech-enabled ports.

The app wasn’t that great, but they might not have that much experience building speech apps. Unless you’ve had the chance to build a lot of speech apps, it’s hard to develop the expertise required to design a highly conversational app. While there are a lot of good, experienced website designers available, there aren’t very many good, experienced speech application designers.

Back to the app. The good news is there was no need for text to speech, because of the fairly static nature of the app. Of course, the reason it was static is that it didn’t do very much. Only one part of the dialog used speech recognition - the part where are you asked to name a DVD you purchased that you believe is covered by the specifics of the settlement. Since the female voice talent was able to record all the DVD titles in advance, her response included her saying the name of the movie back to you. Unless of course, the movie title wasn’t on the list. Their strategies for handling no matches and mismatches left a lot to be desired.

After the app either recognized a movie you said as being on the list or gave up after three or so no matches or misrecognitions, it proceeded to collect your name and address. Unfortunately, it did this by recording you while you said and spelled the requested information. Presumably, they then had a person transcribe the info. While this is cheaper than having live agents waiting to handle calls 24×7 (especially if they then outsource the transcription to a low wage country), it would be even cheaper if they used the speech recognition engine and a suitable interface to a database of names and addresses. We’ve developed a system like that at work, and it works great for automating the transcription. Our solution is built right into the app, so we can do the transcription in realtime and play it back to the caller for confirmation. If a live agent is confused by the recording of the address (whether due to accent, a poor cell phone connection, dogs barking, etc.), the caller is no longer on the line to ask for confirmation. Also, while automated speech recognition isn’t perfect, human speech reco and transcription isn’t exactly perfect either. Whether the agent misunderstood what I said or merely made a typo when entering the info, many times I’ve had my name or address transcribed incorrectly by a live call center agent.

: 12:01 am: RobertTravel

Last week the San Francisco Chronicle had a nice article on traveling to Tasmania. Sandra and I spent a wonderful week a few years ago driving around the coast of Tasmania and through parts of the interior. I’ve had some photos from that memorable trip posted on this website practically from the day I first set it up. One of the highlights of the article is a fairly detailed description of the look, smell, sound, and behavior of the Tasmanian Devil, including a link to a haunting recording of a devil. Coming within a few feet of a couple devils was a highlight of our trip. I mean it’s not like I can just walk down to the neighborhood park and watch a couple of Tasmanian devils tear into some roadkill. Okay, I can understand how not everyone would view this as a highlight of a trip.

1/25/2005: 1:15 am: RobertIntellectual Property, Linux

I didn’t realize backing up my DVDs using Linux could be so easy. Time consuming as hell, but fairly easy.

Dvd::rip is a front end to a big pile of libraries that do the good deeds. One of the key libraries is transcode, but there’s a lot of other great software underneath the covers that a lot of talented open source developers have contributed to the cause. While dvd::rip presents enough options to make your head spin, you can back up one of your DVDs to a pretty good quality AVI or MPG file with just a couple of mouse clicks. Okay, maybe ten or twenty clicks, but I’m going to tell you which ones.

If you prefer to install from rpms, the rpm you want for dvd:rip is perl-Video-DVDRip. I installed perl-Video-DVDRip-0.50.18-0.lvn.2.2 on my FC 2 system and it works just fine. I tried to use a newer version 0.52.2, but ran into a problem with a dependency I couldn’t resolve.

Fortunately, I quickly found on the web a well-written, albeit somewhat outdated, tutorial for using dvd:rip and transcode written by Moritz Bunkus. This tutorial provided a lot of background info that helped me to quickly understand why the various options had the effects that they did.

I ended up going with XviD4 compression to an AVI file. Depending on the complexity of the video and quality of the audio, I chose targeted sizes of anywhere from 700 MB to 1.4 GB. I may try compressing some other files with an MPEG 2 codec. I also used a “smart deinterlacing” filter. That cut the encoding speed in half, but it seemed to significantly improve the quality of the final video.

Here’s the speed path through dvd::rip for a basic ripping and encoding with no subtitles:

  1. Create a new project and give it a clear name
  2. Move to the RIP Title tab and click Read DVD table of contents
  3. Select the largest entry (other entries are individual scenes, previews, trailers, interviews, etc.) and click RIP selected title(s)/chapters(s)
  4. Make prank phone calls for 45 minutes
  5. When ripping is finished, move to the Clip & Zoom tab. Yes, it’s normal for the images to be upside down and backwards.
  6. Unless the third image is cropped poorly, leave this tab as is. The default preset will have converted a normal 720×480 DVD video to 640 x 336
  7. Skip to the transcode tab
  8. Change video codec to xvid (xvid setting currently defaults to XviD4) and make sure 2-pass encoding is selected (slow, but worth it)
  9. Change deinterlace mode to smart deinterlacing
  10. Determine the final size and quality in one of the following ways:
    • If you want to copy the video to a CD, set Target Media to the number of CDs you want to use. Look at your CD-R blanks to determine how much each can hold.
    • Specify an exact Target Size. If you are encoding only a part of the video, check the Use Range box. I often do this when testing different algorithms on small bits of the video.
    • Enter an exact bitrate. Click manual to overide the bitrate generated by the previous two options.
  11. In the Target Track section, click MP3 and change the sample rate to 192 kbps. Change quality to 2.
  12. Click Transcode. If you had chosen to multiple Target Media (i.e., multiple CDs), click Transcode & Split.
  13. Go to sleep. Actually, this step took about 4 hours on average on my machine

Obviously, there are a lot of other options, but the above steps are a pretty good compromise for video quality, audio quality, file size, and encoding time. You might want to try out other deinterlacing options (choose none if you’re sure you don’t need it) or antialiasing options if there are a lot of sharp, high contrast transitions in the video. If you want to keep the Dolby digital and surround sound and are willing to use more space for audio, stick with AC3 over MP3.

If you want to do a quick test encoding, set the range to a few hundred or so frames somwhere in the movie where something interesting is happening. You will have to disable Use PSU core. Click the Yes radio button next to Preview window. Click Transcode. You will send a window pop up and the encoded video will start to play as it is encoded. Depending on the options you chose, the video could be close to real time. If you want to hear the audio too, click View AVI after the range of frames you specified have been encoded.

If you want to backup your newly encoded video to a CD, move on to the Burn tab. You can use a lot of other tools to accomplish this, but dvd::rip makes it pretty convenient.

I think I started backing up my DVDs not a moment too soon. The first one I backed up had a weird glitch 2/3 of the way through. The problem seemed to be in the vob files on the DVD, since it reappeared no matter how I tried to encode the video. The glitch is just barely apparent when playing the DVD with a regular DVD player. I ended up having to split the encoded video into two files. The next two DVDs I tried were fine.

1/20/2005: 1:03 am: RobertBlogging and RSS, Software

Sam Ruby has already posted a simple patch to MoinMoin that implements Google’s proposal for a new link type for the rel attribute for the HTML anchor tag. The HTML specification supports the definition of new link types, as long as the author implements a profile. Google has proposed a “nofollow” link type, which will instruct the googlebot website crawler not to follow links with that link type.

The reason for the new link type is that spammers are taking wanton advantage of weblogs, wikis, and other types of websites that allow anyone to post text that either includes embedded HTML or is converted to HTML. While there is obviously some value to the spammers in spreading their message via simple text form (otherwise, why would they send out all those emails), the primary value is in creating inbound links to their porn, pharmacy, whatever sites. Search engines crawl the links on the blogs and wikis back to the spammers’s sites. Since many search engines, and especially Google’s, use the number of inbound links to assign a rank to a web page in relation to certain keywords, the spammers views weblogs and wikis as fertile ground for boosting their search engine rankings. Most people don’t go past the first couple of pages of search results, so it can make a huge difference for a spammer if they can make it to near the top of the search results for commonly searched on keywords.

I’ve held off on linking from this blog to information on my Wiki out of fear that spammers will find my wiki and attack it. Though applying Sam’s patch to my wiki certainly won’t dissuade a spammer’s robot from attacking it, at least they will get less value out of it. And that has to count for something.

Sam Ruby: Adding rel=”nofollow” to MoinMoin

1/19/2005: 12:37 am: RobertArts and Education

Art by Mark Faigenbaum

Mark Faigenbaum, an old friend of my wife’s, is having an exhibition and reception January 21 (5-9 pm) and 22 (1-5 pm) at SF Recycling & Disposal, Inc., “also known as The Dump”, with two other artists. Mark is currently an artist-in-residence at the Norcal Waste Art Studio & Gallery. The pieces he will be exhibiting were all made from recycled materials obtained on location.

We’ve gone to several of Mark’s openings, and his work is absolutely mesmerizing. He previously did a residency with the Fine Arts Museums of San Francisco. He was in the Artist Studio/Artist Demo Program at the Legion of Honor.

More info about Mark from other websites:

1/18/2005: 12:39 am: RobertEverything Else

And in a somewhat less productive use of my time, I earned the “Wicked Sick!” announcement in an Unreal Tournament 2004 Team DeathMatch tonight.

: 12:01 am: RobertEverything Else

Today’s Oakland Tribune has two good articles on computer reuse.

One of the articles describes how Oakland Technology Exchange-West, or OTX, has supplied over 5,000 computers to families who would have otherwise found it very difficult to afford a computer. While much of the benefit to these families is financial, I suspect that a first computer purchase is also very intimidating. I can easily imagine a first time buyer being worried about whether they were getting something their family could really use. Even if they could afford the purchase, they might be afraid that they would be overpaying with money that could have been better spent on other things. By OTX giving these families computers, a lot of that intimidation is removed.

The other article talks about the benefits of reuse over recycling. While there is a big push to recycle computer parts (although surprisingly not so much at Apple, at least according to people interviewed for the article), recycling items that contain heavy metals is very expensive. If at all possible, reuse is the better choice. Of course, there will always be some equipment that is either unrepairable or just so out of date that recycling is the only option to the landfill.

While the printed version of the Tribune contains a useful listing of Qualified Bay Area Microsoft Authorized Refurbishers, I couldn’t find the same listing online. That’s too bad, because it would be a great resource. Below are a few of the places that were listed. I tried to pick a few from each area.

  • Alameda Unified School District - 2130 Clement Street, Alameda - (510) 337-2442
  • Oakland Technology Exchange-West - 1680 14th St., Oakland - (510) 893-4822
  • PC Community - 419 61st St., Oakland - (510) 652-1726
  • Western Addition Beacon Center - 1430 Scott St. No. 8, San Francisco - (415) 749-2714
  • Indigenous Society - 940 Sutter St., Suite 216, San Francisco - (415) 726-1926
  • Resource Area for Teachers - 1355 Ridder Park Drive, San Jose - (408) 451-1420
  • Street Tech - 2300 El Portal Drive, Suites F&G, San Pablo - (510) 234-1300 x1
  • Silicon Vallet StRUT - 3000 Mission College Blvd, Santa Clara - (408) 316-0746
  • Computer Recycling Center - 525 Los Coches St, Milpitas - (209) 992-6207
  • Industrial Surplus Foundation - 7059-C Commerce Circle, Pleasanton - (925) 463-1430

A few years ago I was talking about computer use in schools with a friend of mine who teaches at a public elementary school in Oakland. I asked him about what type of software or hardware donations Oakland schools might need. He said that while material donations are always appreciated, that really wasn’t their biggest need. Even at a poorly funded school in Oakland, he said they actually had more computer tools than they could use. The problem was that the teachers didn’t know how to effectively use what little they already had.

He said that most donations were provided with no accompanying training or support. If they received a scanner and it “just worked”, that was great. If it wasn’t really plug and play, though, then it was no more useful than the box it came in. His school didn’t have anyone with the time or expertise to figure out how to get a lot of the donated equipment to work. As a result, they ended up feeling bad about having a big pile of stuff that either didn’t work at all or that they couldn’t figure out how to use properly.

So, if you’re in the computer business and you’re looking for a way to help out, even better than donating equipment is donating your time and expertise. My friend said that in addition to training or support, many schools could use advice on what hardware and software they should buy. While some schools are lucky enough to have a few teachers who keep up to date on computer product reviews, a lot of schools don’t have anyone with enough free time to do that. He said that at a lot of schools they would even appreciate just getting a second opinion on a planned purchase.

Michael M., if you happen to read this, I would love to hear your opinion on how computer geeks like myself could most help out schools.

1/8/2005: 3:36 pm: RobertThe Unusual and the Weird

Well, not the entire car, but apparently enough of the essential wiring to kill the battery and various other essential engine components. Apparently an industrious set of mice made a nest in the engine compartment of my Audi TT while I was on vacation and proceeded to chew through some of the wiring and miscellaneous insulation. If I had known that cheese-flavored wiring would have brought about this mishap, I would never have selected that option when I purchased the car. Who knew?

When I started the car on December 27 after over a week of no operation while I was away on vacation, the Check Engine light came on and stayed on. Otherwise, though, the car showed no indication of a problem. On the advice of the Audi service department at the dealership, I made an appointment for January 13 and continued to drive it.

On January 4, the engine hunted for idle by jumping from 500 to 1500 rpm once per second, so I didn’t drive it to work. When I tried to start it that evening, the battery was dead. The next day I had it towed in to the dealership, assuming the warranty would cover whatever the problem might be.

After charging the battery, one of the junior service techs plugged it into a diagnostic computer and determined that the problem was more complex than what he had been trained to handle. When the head tech finally looked at it Friday afternoon, he found a mice nest in the engine compartment. When I last talked to him, he hadn’t investigated enough to determine if there were still mice in it.

Though Acts of Small Rodents are not covered by the otherwise extensive Audi 4-year warranty, the comprehensive part of my auto insurance covered it, so I should be out only the $250 deductible. Well, that and at least a week without my car. The State Farm insurance claims rep whom I spoke with was very helpful and sympathetic. He said he couldn’t believe it when he got his first case like this one. After about the hundredth one he’s seen come through their regional office, though, it became fairly routine.

Without the benefits of a CSI investigator and DNA testing, I probably won’t be able to identify the source of the rodent. There is a big field next to the parking lot at work, and I park about fifty feet from the field. I have seen a rabbit, a cat, and a mouse in that field (obviously, not at the same time having afternoon tea). Assuming he/she/they could survive the 20 minute drive home, I could well have brought home my car’s nemesis. Of course, the damage might have been completed in a single day’s work while my car was parked at the office.

However, I suspect the damage was done in my garage, since I found some shredded insulation and plastic on the floor below where the engine would normally be. I also found a couple rodent turds. The size and shape indicates a house mouse. While all this stuff could have been transported home before falling off the engine in the garage, it’s more likely that these artifacts were created there during the attack.

You might be wondering, “but what about those giant cats of yours that you write about“? Either they aren’t natural mousers or I haven’t been letting them go into the garage often enough. The cats go down there for about an hour every evening, but the mice probably hear them bounding down the stairs, thus allowing them plenty of time to scurry for cover before the lads can score a dessert.

Update 3/5/2005: Read the exciting conclusion to my tale of woe and lamentation! See if you guess how many thousands of dollars my insurance company paid to have my car fixed. I can almost guarantee your guess will be too low!

Update 5/13/2007:Last week I received some info on rodent control and cleanup from the Alameda County Vector Control Services Department as part of a ballot for increasing their funding. Obviously, I voted for increasing their funding.

The tips for preventing infestation were fairly obvious:

  • Seal up holes inside and outside the home to keep rodents out
  • Trap rodents around the home to help reduce the population

The info on cleaning up after an infestation was more detailed.

Before cleaning a space, ventilate the area by opening the doors and windows for at least 30 minutes to allow fresh air to enter the area and to remove potentially contaminated air from the area. Use cross-ventilation and leave the area during the airing-out period.

When you begin cleaning, it is important that you do not stir up dust by sweeping or vacuuming droppings, urine, or nesting materials.

  • Wear rubber, latex, or vinyl gloves.
  • Wear a respiratory protection device such as an approved half-faced mask
  • Spray the urine and droppings with a disinfectant and let soak 5 minutes.
  • Use a paper towel to pick up the urine and droppings, and dispose of the waste in the garbage
  • Clean and disinfect the whole area.
  • Remove gloves, and thoroughly wash hands with soap and water.

And here’s a tip for finding out how they get in to your car and where they go. Sprinkle baby powder where ever you think a mouse might walk, then check for paw prints in the morning. Also, if you find a hole that they are coming through, then depending on the surface and the visibility of the hole (i.e., do you care if people see the patch job), steel wool is very good for flexibly patching a hole so a mouse can’t come through.

Update 10/27/2007: A post on Boing Boing titled “Clever non-lethal mousetraps” includes a photo of a scaled down version of a mouse trap described by one of the commenters below. As several of the commenters wrote, the glass in the picture is much too small to prevent a mouse from jumping out. The most useful info in that Boing Boing post is in the comments, so I recommend browsing through all of them.

References: Is There a Mouse in Your House?, How to Get Rid of Mice, Control of Mice.

: 1:32 am: RobertEverything Else

DreamHost, the company that hosts my website, never fails to amaze me. Since I started with them nearly three years ago, they have increased the amount of disk space and bandwidth for my account by a huge factor, while increasing the annual charge for my account by exactly $0.00. They just tripled the disk space on my account, and they recently tripled the bandwidth. For less than $20/month, I now get 7680 MB of disk space and 192 GB of bandwidth/month.

1/7/2005: 12:06 am: RobertBlogging and RSS

If it’s not one kind of spam, it’s another. A mouth breather recently figured out to spam WordPress-powered blogs via the trackback mechanism. The first spam trackback I got was a bunch of pseudo-random letters. The next ten or so were nasty porn spam. I had to temporarily rename the trackback script to stop the vermin.

If you don’t care about trackback, the easiest way to stop the spam is to delete wp-trackback.php or to rename it. Alternatively, you can moderate trackbacks using a hack posted at WordPress.org.

If I start getting a lot of moderation emails, though, I’m going to hack the scripts using the same technique that allows comments to work with a script file with a non-default name. So far, that technique has worked perfectly for me with respect to preventing spam comments.

Update: Perhaps I did something wrong, because trackbacks aren’t being moderated. So, I’ve reverted to disabling trackbacks all together. Of course, since I got 115 spam trackbacks in less than 24 hours, moderation wouldn’t have been a great solution, either.