Skip to content
Creation of a quartz project to transform live theta s feed from dual fisheye to panoramic
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

CamTwist Effect Plugin to Convert Theta-S Live Video from Fisheye to Equirectangular via Quartz

An experiment to use OS X Quartz Composer to transform Ricoh Theta S live feed dual fisheye to equirectangular.


JUN 2016: Ricoh has since released native OS drivers to accomplish this:

Goal is to create a Quartz composition that can be used in camtwist or other live video streaming software to adjust live the output of the theta-s to be suitable for using in a 360' web panorama plugin. The flow will be something like this:

  • Theta S via USB or HDMI > Computer
  • Computer to use this Quartz composition from within Camtwist > Media encoder > HLS (via cloud encoding service) > web front-end
  • Web front-end needs equirectangular image, see this example:

Current state - Proof of concept works

  • theta-fish2sphere.qtz - this "routes" camtwist through Paul Bourke's custom quartz patch project (see references below)
  • @kosso modified version added : theta-fish2sphere_K.qtz with reference images to play with.
  • @justibro modified version with blended edges added : theta-fish2sphere_blending.qtz

Reference Input Image

Reference Input Image

Test Output Snapshot

Example Output Image .. so far

Example images:

To use:

  • Download camtwist, install to applications
  • Add theta-fish2sphere.qtz (or other qtz files you want to try) to Applications > CamTwist > Effects
  • Open CamTwist
  • Step 1: View > Main Window, Double click "Webcam" and choose RICOH THETA S
  • Step 2: Choose filter theta-fish2sphere
  • Step 3: Modify settings if you'd like, not sure it'll make much of a difference yet. Make sure to press enter after you enter new values.

How to modify:

  • Download quartz composer from Apple's developer site by searching for "Graphics Tools for Xcode"
  • Open theta-fish2sphere.qtz file in quartz composer
  • Change input image source to theta s on USB or HDMI input live stream, or use sample image from this git project's root dir

Dev notes for Quartz Composer

  • For testing / developing in QC, you'll need to unhook the "Image (Required)" patch and use instead the image patch "image-example of 720p theta-s stream"
  • Ideally in QC during dev one could use video input patch to use as reference for modifying settings, but it is not consistent with behavior when ran inside of camtwist

Some helpful docs

You can’t perform that action at this time.