Monthly Archives: June 2009

Pooch Redux

In their memorable hit single from 2000, the Baha Men asked, “Who Let the Dogs Out?” Their lesser-known follow-up album, “We’re Pretty Sure Dauger Research Let the Dogs Out,” focused less on woofing and more on Message-Passing Interfaces (MPIs). It was panned by audiences and critics alike as “too cerebral,” “confusing,” and — most injurious to the Baha Men — “dorky.”

What so inspired the Bahamian pop group was a parallel computing application called Pooch, which allows for the formation of ad hoc computer clusters over Ethernet. Each cluster is composed of “nodes,” individual Macs running the Pooch application, which communicate through the aforementioned Message-Passing Interface. Pooch takes a given input, separates it into smaller chunks, then farms out the job to all available nodes in the network. In terms of video compression, this means partitioning the render along the timeline, giving segments of it to three or more CPUs to compress, then reassembling the finished product at a user-specified destination. In other words, you give Pooch a minute-long video and 10 identical CPUs, and Pooch assigns each CPU 6 seconds of the video to encode. Then it drops the finished file on your hard drive. Pretty straightforward.

Particularly useful for our Clip Capture purposes is the Pooch QuickTime Exporter Component, which parallelizes the video export function without the need for any coding on the user’s part. It’s compatible with QuickTime-based Apple programs like iMovie and Final Cut Studio, and has a pretty simple interface. It also provides surprising increases in speed.

I took a one-minute DV clip from an episode of Planet Earth and exported it to H.264 using 0 nodes (in other words, no Pooch), 2 nodes, then 3 nodes. Here are the results:

Table of Pooch Compression Results

Using the 0-node compression as a benchmark, it’s clear that Pooch provides a pretty substantial boost in processing speed.

In terms of quality, the Pooch x264 output was pretty similar to a regular x264 compression (see still frames of the original DV file, the regular compression, and the Pooch compression). As usual, the x264 codec made everything a little bit darker, an effect that was exacerbated in the Pooch version. Also, the Pooch compression seems a little . . . compressed. As in squished. There’s a tiny strip of black on the left side of the video that isn’t there in the original or the 0-node compression. Maybe not jaw-droppingly, gut-wrenchingly awful — but definitely something to be aware of.

In terms of system requirements, Pooch is pretty low-maintenance. It can manage clusters of computers with different processor speeds, different RAM, even different versions of Mac OS. One thing that I did discover, and this is very important: all nodes must have the same video codecs installed. You can’t expect a computer without the x264 codec to do an x264 compression.

Pros Cons
Faster video compression at no added expense “Best quality” (e.g., two-pass) encodes not possible
User-friendly interface Additional MPI scripting needed for applications other than QuickTime
Queuing capability Possible inconsistencies in compressions
Multiple file destinations from a single compression job Difficult to implement when nodes are receiving regular use
Annoying woofing sound (though not as annoying as that of the Baha Men) pooch-woof

Pooch is used by such prestigious organizations as NASA’s Jet Propulsion Lab, the MGM hotels in Las Vegas, the Biological Engineering Division at MIT, and William Shatner.

It is available for free download at the Dauger Research Pooch page.

Easy Media Sharing with multiply.com

Multiply.com may not be a pioneer of new and original media sharing features, but its compilation of utilities is integrated into a user friendly interface that can be a great tool for both personal and professional/academic communication. Users of the site create their own page on which they can post whichever media they would like to share: blogs, photos, or videos. However, for each post the user can choose which of his/her contacts will be able to view the post. The contacts that are authorized to view the post then receive a notification pointing them to that post, where they can view the media and even post comments on it.

So far this seems to be almost another version of facebook that focuses only on the media sharing element: wonderful for personal use but not a great academic tool. However, Multiply also allows users to create groups, and the group function can be an ideal tool for media sharing in professional or academic circles. The groups can be created with varying degrees of privacy so that a professor could create a group that would be only accessible to himself and to students in the class, or so that any team working on a project could create a group accessible to only members of the team. Media would be posted on this group’s page, and each of the members of the group would receive a notification each time new media was posted. This could be an ideal way for any team working on a project involving media to be able to constantly collaborate, and it could be an ideal way for students in a class to view and comment on each other’s work, especially using the blog function.

Contacts can also be organized into categories, making the sharing of media only with specific groups of people (friends, family, professional contacts, etc.) very simple. However, the limitation of this feature is that contacts can only be sorted into the categories provided by the website, and selected from a drop-down menu. This diminishes the versatility of the contact organization tool, but the worst case scenario is that when sharing media a user has to simply select each contact he/she would like to share with from a list rather than selecting a pre-organized group.

The Active Web

With all of the hype over the Semantic web, I feel a necessity to re-iterate that there is a technology already before us. This technology which we have dubbed “Web 2.0″ in its present state of development, is alive and ever-changing. It allows us to communicate, collaborate, and express ourselves with others in ways previously unimaginable. But, as a digital humanist, I have been bothered by the frustratingly passive nature of the web. Despite the omniscience of Wikipedia, among us mortals knowledge is still power. Man cannot yet, and perhaps never should, depend entirely on digital technology to retain information. Our minds, equipped with higher reason and logic than that behind a server, must be enhanced through technology, not replaced by it.

What I mean when I say that the web is passive is that, for the most part, it requires our effort and constant instruction in order to give us information. Of course there are exceptions, such as email, when we get input and information from people and websites without really doing anything besides staying signed into Gmail. But if I wanted to know that the second Emperor of Rome was Tiberius, I would need to wiki “roman emperors” and look for the successor of Augustus. Now my issue isn’t simply in having to search myself, which is what the Semantic web addresses. My problem is having to conceive the thought: “Hmm. I wonder who the second Roman Emperor was.” As a classical civilization major, that is a critical point of information, but honestly who goes around thinking about Imperial succession?

I want to receive information critical to me, without having to specify each fact first. Think of it this way: web technology is like any other assistant that we employ. Sometimes we have assistants to help us, for example, make a website. We have to tell them what we want on the site, how it should look, and give them feedback when they’ve put something together. In such a situation, we are mostly active agents, while the assistant receives instructions passively and performs them.

Professors at universities are also assistants whom we employ, but we employ them to perform a very active role. My professor has been instructed to teach me Latin, and with that simple prerogative he teaches me Latin grammar and style in minute detail. When web applications perform similar roles, I think of them as part of the Active Web. For instance, I can go to nytimes.com and tell it that I’m interested in classical civilization. Whenever a new article is published that is related to that interest, the NYTimes sends me a notification, or updates my RSS reader. Twitter alerts me when a friend has an interesting thought. Facebook sends me a txt when a close friend gets engaged to someone. These are things that I want to know, and do not have to go to Facebook and query, almost clairvoyantly, “John engagement Sarah,” to find out. The Active Web brings information to me, no matter what I am doing, and increases my overall awareness.

I think this sector of Web 2.0 needs to be developed much more vigorously. “Mobile technologies” and the like are allowing the Active Web to move past sending emails to my inbox, and towards sending messages to my pocket. This type of interactivity, which I am using at the moment to intercept important gossip, should be used by more educational applications to help students, and mankind in general, to become more knowledgeable.