Capture Your Memories in 3D!

3D HDTV is coming...  Get prepared for it now

So, you're curious about making your own 3D camcorder?  Or having me come out and do a recording in 3D?  You've come to the right place.  This solution offers the clearest full-color playback of any affordable 3D technology.  It's perfect for weddings, recitals, and other special events.  The setup was shown in the 2008 Bay Area Maker's Faire, and a few thousand people came by to take a look.  If you're one of those that stopped by the booth then thanks for checking it out!

The idea is to film using two identical high definition cameras, firmly mounted on a board, like this:

During playback the video from the left and right cameras will eventually make its way back to your left and right eye, respectively.  Hopefully with as much quality as possible.  The end result is very realistic 3D.

After recording with both cameras, there is a fair amount of post-processing that must be done, including these steps:

  • Synchronize the two video streams by removing extra frames from one side or the other.  I use VirtualDub for this, but any other NLE will also work fine.
  • Deshake the video using Gunnar Thalin's amazing Deshaker filter.  This is fairly time-consuming, and takes 2 passes.  The results are very much worth the effort.
  • Deinterlace the video using Gunnar Thalin's Deinterlace Smooth filter.  You will end up with 60fps progressive output.  For HDV video, the resolution is still 1440x1080, but now at 59.94 fps instead of 29.97 fps.
  • Crop the video so that the content of the left and right images are very closely matched.  This can be done with internal filters found in VirtualDub.  You need to test several frames to make sure it lines up because differences in positioning between the two streams can be introduced from the deshake operation.  Also sometimes at this stage you need to perform slight image rotation if your cameras were not lined up at the same angle.
  • Resize the video to 1280x492.
  • Using AVISynth, stack the two video streams on top of each other, with the left eye content on the top and the right eye content on the bottom.  Place a black strip between the two that is 40 pixels tall.  This will end up off the screen after the vertical refresh is doubled.
  • Compress the output of all the above using your favorite lossy codec.  I use the MPEG-4 codec found in ffdshow, at 8 Mbps.  The important thing is to use something that can decompress quickly.  You'll be playing back a 1280x1024 video at 60fps.

For every minute of footage, the steps above take me 45 minutes of processing time, and the resulting image looks (and is sized) like this:



After the video file is created, to play it back you need a pretty fast computer.  I use a Core 2 Duo 2.5 GHz machine.  Also an old CRT display, and shutter glasses.  The 1280x1024 video should be played back full-screen, with the vertical refresh set to 60Hz.  A little circuit board from the shuttle glasses needs to be put inline with the VGA output.  This doubles the vertical refresh from 60 Hz to 120 Hz, and in the process also stretches out the left and right eye images to the full height of the screen.  The shutter glasses also attach to this board, and it controls how they oscillate.

What kind of scenes give the best results?
Areas where there are groups of people milling around or other complex objects provide the most impressive results.  For instance, from the middle of a hall looking over an audience of people at a performer on stage is very effective, as is walking through a garden past trees, flowers, and other foliage.  Whatever you see in real life can come to life on the screen.

How close does the videographer have to be to the subjects?
In order to have a good 3D effect with our most common configuration, the videographer should be no more than 30 feet from the subject.  This is somewhat unlike standard video or photography in which you can easily zoom to create a good quality image from a distance.  While you can zoom when filming in 3D, it is tricky to make sure both cameras stay lined up well enough to end up with really usable footage.  Generally it requires changing the angle of the two cameras.

If the subject is far away, the two cameras can be placed further apart (greater "inter-ocular distance") to get a good 3D effect on distant objects.  Here is a chart of distances and camera widths:

Minimum distance for 3D effect (anything closer will appear in just one eye and not both, and thus be totally annoying to the viewer)Furthest distance for good 3D effect (things can be further away, they'll just start to blend in with everything else on the horizon.  Not a bad thing.)Width of camera configuration for the shot
2.5 ft (80 cm)56 ft (17 m)3.5" (9 cm)
21 ft (6.4 m)446 ft (136 m)2' 4" (72 cm)
42 ft (12.8 m)892 ft (272 m)4' 8" (144 cm)
60 ft (18.4 m)1/4 mile (0.4 km)6' 9" (207 cm)

3D realization of subjects even further away is possible with wider mounts.  This is lots of fun because normally as we view distant things, there is no opportunity to even be aware of depth and perspective.  But with these wider parallax setups, the playback comes alive.

Can you take existing video and make it 3D?
Not really.  Although many people (like TDV) would want you to think that there is a usable converter out there, the fact of the matter is that these gimmicks don't really work that well.  Check out this review by Christoph Bungert for more details.  Hands-down the best way to get true 3D video is to capture in 3D in the first place.

Technology

The magic is in having two camcorders, positioned the same as your left and right eyes would be.  Even though these two recordings end up looking very similar, when played back properly there are subtle differences that your brain interprets as depth and perspective.

Upon playback the real trick is figuring out how to get the proper detail for each eye to be seen only by that eye.  If the left eye saw the right eye's information or vice-versa, the 3D effect would be destroyed.  So during playback, currently a special pair of shutter glasses is used so that the correct information gets to each eye.

Contact Lorin

If you're ever in Phoenix, email and come by sometime for a demo.  I think you'll be amazed at the clarity of high definition 3D video.  Here's the email: