Zoetrope: Create Motion from Pictures on Windows 8
I just published Zoetrope a Windows Store app that makes it super easy to create movies from still photographs. My inspiration for this app is seeing my boys build and play with LEGO and create adventures with their creations. I wanted to make it easy for them to create movies with devices like the Surface RT which, with its back-facing camera, can serve as a perfect camera and film studio all-in-one device.
Here is a move that my son Alex (age 11) just made with a Microsoft LifeCam Cinema attached to my PC
The Engine Behind this App – Media Foundation
To make this app work, I needed a way to create a video from a series of still images. I started with this sample, creating a C++ WinRT component that had a simple interface where I pass an empty video file, a collection of image files, a width, height and frames per second:
IAsyncActionWithProgress<double> WriteAsync( IRandomAccessStream videoStream, Array<StorageFile> imageFiles, unsigned int width, unsigned int height, double framesPerSecond)
Once I did that, creating a Windows Store app around it was easy.
If you have an app that creates or manages pictures and it shares those pictures (PNG, JPEG, ICO, GIF, or TIF) as a collection of StorageItems, Zoetrope can use those as a share target – giving your app an easy way to make stop-frame animations or slide show videos.
Zoetrope can also act as a sharing source to share the movie that you are creating with someone via email, to SkyDrive, to your Windows Phone, or any other app that is a share target for .mp4 videos.
Using the PeerFinder, you can very easily make a connection to nearby PCs running the same app. In Zoetrope, I wanted to make it easy to use another PC to simultaneously capture photos and then send photos or videos between the two PCs. The PeerFinder works over TCP/IP, Bluetooth or Wi-Fi Direct and supports the following scenario once the connection is established:
- Pressing the photo button on the controlling PC takes a photo on the controlled PC.
- After photos are take, the user can select individual photos and then press Send to send the photos to the other PC or create a movie and send that to the other PC.
In Zoetrope, I only work with a single pair of PCs, but from looking at the API, I could have simultaneous connections between multiple PCs – that could get pretty interesting.
Printing a Zoetrope
Ever since I was a child, I’ve loved creating things with paper and wanted to come up with a way to print out the images to make a cut-out Zoetrope device – this is a work-in-progress and any feedback would be appreciated. Like all Windows Store apps, open the Devices charm and select a printer
If you have a DLNA-compliant TV and want to use it as supplemental monitor when making a Zoetrope movie – whichever image you select is sent to the wirelessly connected TV.
Zoetrope is available in all markets worldwide but is only in English today. I have globalized the app and I’m ready to add language-specific resources to it. If anyone is fluent in other languages and would like to translate a resource file for me, please send me a message – I will add you to the app credits if it works out!
Share The Movies That You Create
In my career, my passion has been in crafting tools to support creative design processes and for me this is the next step in that journey. If you create a movie with Zoetrope, please post it as a response to Alex’s movie here.