Apple’s iPad-to-VGA Dock Connector adapter hasn’t exactly been a home run for consumer end users, who have been disappointed to discover that applications don’t mirror to the output automatically and DRM-ed content won’t play. That has caused the device’s ratings to plummet on the Apple Store, and Engadget had this to say:
But for visualists, it’s something beautiful: it turns the iPad into a usable visual performance device. And even if you’re not a fan of the iPad, this is reason for hope: it sends a clear message to other platforms (cough, Google) that mobile devices need video out APIs for developers. It should also send the message to developers to support this feature.
How does the video output work? Joshue Ott shows his application Thicket, developed with musician Morgan Packard, in the video at top. Instead of just being a novelty or toy, their audiovisual app becomes something they could literally take to a gig and perform with live.
If you’re an Apple developer, you’ll find APIs that provide access to this feature. Check out the UIScreen class; specifically, the available screens method:
UIScreen > screens [Apple Developer Documentation]
Apple isn’t keeping this a secret, either; despite the fact that developers seem not to have given it a try in the iPad’s early days, it is something that advertise in the introduction to iPad programming. And you even get 720p support:
Support for External Displays and Projectors
An iPad can now be connected to an external display through a supported cable. Applications can use this connection to present content in addition to the content on the device’s main screen. Depending on the cable, you can output content at up to a 720p (1280 x 720) resolution. A resolution of 1024 by 768 resolution may also be available if you prefer to use that aspect ratio.
To display content on an external display, do the following:
Use the screens class method of the UIScreen class to determine if an external display is available.
If an external screen is available, get the screen object and look at the values in its availableModes property. This property contains the configurations supported by the screen.
Select the UIScreenMode object corresponding to the desired resolution and assign it to the currentMode property of the screen object.
Create a new window object (UIWindow) to display your content.
Assign the screen object to the screen property of your new window.
Configure the window (by adding views or setting up your OpenGL ES rendering context).
Show the window.
iPad Programming Guide [scroll down]
This of course means the time is right, as well, for HD mixing hardware that doesn’t cost a fortune. With the iPad and plenty of other cameras, tablets, netbooks, and mobile hardware with output via HDMI or VGA, and the simple convenience of being able to mix live, it’s about time for mobile visuals and alternative form factors to take off. (I covered the parallel evolution on Create Digital Music.) It doesn’t have to mean tossing your laptop, either, but why not connect a laptop and a camera or a laptop and a tablet? Why should tablets be relegated to dumb control devices in performance (dumb in the sense of not doing anything else)? Why not use that computing power to output visuals, too?
I suppose that’s a rhetorical question. Stay tuned.