Support
Tech Note #3: Cubic Panoramas with Kinoma Player 3 EX
- Initial version: January 2005
Version 3.1 of Kinoma Player 3 EX introduces the ability to interact with standard QuickTime VR cubic panoramas. In most cases, no special processing of the panorama movie file needs to be done - you only need to copy the file to your handheld device. You can pan and tilt a full 360° round the scene, and you can zoom in to inspect a detail, or zoom out to get "the big picture".
Cylindrical panoramas can be viewed in Kinoma Player 3 EX by converting to cubic panorama movies.
Because PDAs have a limited amount of memory, it is not possible to handle very high resolution panoramas. You will need to reduce the resolution before transferring the panorama to your PDA. Kinoma Player 3 EX will attempt to dynamically reduce the resolution of an excessively high resolution panorama so that it can fit into the PDA's memory for display. The dynamic resolution reduction does have its limits, though, and can fail if the source resolution is too high. You will have more predictable results, and you will save precious space on your memory card, if you reduce the resolution of your panoramas before transferring them to your PDA. Cubic face sizes from 256x256 to 800x800 are reasonable.
On the Macintosh, you can use CubicConverter from Click Here Design to convert cylindrical or even spherical or mirrorball panoramas into cubic QuickTime VR movies, or you can change the resolution. On Windows or Linux, you can use PanoCubePlus from PanoShow.
Technical Discussion: Cubic Panoramas in Kinoma Player 3 EX
Restrictions on Format
Kinoma Player 3 EX has certain limitations on the kinds of QuickTime VR movies that it can handle. These are:
Cubic only
Only cubic QuickTime VR panoramas are accommodated. Cylindrical QuickTime VR panoramas are not supported directly, but can be converted into cubic panoramas with third party applications. Object movies are not supported at this time.
JPEG compression only
Kinoma Player 3 EX can only read cubic panoramas whose panorama video track is compressed with the Photo-JPEG codec. This is the dominant (if not exclusive) codec used for compressing panoramas, so this should not be a problem.
Some Tracks are ignored
Only the panorama ('pano') and panorama video ('vide') tracks are used in Kinoma Player 3 EX. In particular, Kinoma Player 3 EX ignores fast start, hotspots, overlays, wired sprites, and ambient sound. However, pan, tilt and zoom limits are respected. It doesn't hurt to have these extra tracks - they merely take up more disk space.
Resolution is limited by memory
The entire panorama must be read into memory and decompressed before it can be displayed. Therefore, the amount of memory available on a particular PDA limits the highest resolution panorama that can be viewed on a particular device.
Memory on a PDA is used in different ways than it is used on a personal computer. In particular, a PDA uses its memory in ways that a computer would use a hard disk. It stores applications and data files in the memory itself. That is why you can use the PDA even though you have removed the memory card. The amount of available memory is inversely related to the number of items you have stored on the PDA.
Kinoma Player 3 EX stores panoramas in 16 bit pixels, which require 2 bytes of memory per pixel. With six faces per cube, the amount of memory required to store a cubic panorama with six r x r faces is:
M = r * r 2 * 6 = 12 * r2
So that the maximum resolution that can be stored in M bytes of memory is:
r = sqrt ( M / 12 )
For example, many PDAs have 16 MB of memory. Of this, 10 MB is likely the most memory available for panoramas on many handhelds, because the Kinoma Player 3 EX application, Palm OS, and data files occupy space in memory. Plugging 10 MB into the equation above, we get:
r = sqrt ( 10 * 1048576 / 12 ) = 934 pixels on a side
Your particular device may have more or less available memory than this, and many will have less.
Some people prefer to make the dimensions of cube faces and tiles to be a multiple of 16, which meshes well with the JPEG codec, but this is not necessary. If you do like multiples of 16, you might choose a maximum resolution of 928 for 1x1 or 2x2 tiling, 912 for 3x3 tiling (with 304x304 tiles), or 896 for 4x4 tiling (with 224x224 tiles). Since panoramas are viewed directly on the device (they do not need to be downloaded from the Internet), there is not much of an advantage to tiling each face any finer than 1x1, though there is probably an imperceptible increase in rendering speed with tiles sized about 200x200.
Here are some suggested resolutions: 800x800, 768x768, 640x640, 512x512, 384x384, 256x256. Of course, other resolutions are possible, but we discourage you from using resolutions higher than 800x800 so that you can have the best experience on most devices. We suggest that you start out with a resolution of 512x512, and adjust this as you feel necessary, to accommodate storage constraints or zoomability.
How Kinoma Player 3 EX Accommodates Excessively High Resolution
As noted above, PDAs have considerably less memory than personal computers, so they cannot store panoramas that have excessively high resolution. Rather than returning an error message, though, Kinoma Player attempts to display the panorama by reducing the resolution by factors of 1/2, 1/4, or 1/8. If the panorama will not fit into memory at 1/8 resolution, it will post an error message.
If we use the maximum resolution of 934 calculated above for 10 MB available memory, we determine that it would be impossible for Kinoma Player 3 EX to display panoramas exceeding 7472x7472 pixel cubic faces (where 7472 = 934 * 8) on a device with 10 MB of available memory.
Suppose that 934x934 faces is the maximum allowable by our device, but that we instead try to display a panorama with 944x944 faces. Since there is not enough memory to store the entire panorama, Kinoma Player 3 EX will reduce the resolution by 1/2 in each dimension, yielding faces with 472x472 resolution. This is half the resolution expected, and might be embarrassing when attempting to show the detail to a client. If the source resolution were instead 928x928, the detail would be virtually identical to the original 944x944, and Kinoma Player 3 EX would not need to reduce the resolution in order to display it.
As a practical matter, it is wise to not work so close to the limits. If you make your cubic panoramas with faces no larger than 800x800, you are likely to be able to view the full resolution on any device.
Authoring Considerations
The two primary considerations for preparing panoramas to be viewed with Kinoma Player 3 EX are:
- Avoid resolution reduction
- Minimize file size
The first consideration has been addressed above. The second is important because the memory cards have limited capacity. Most people do not zoom way in to a panorama in order to inspect the details. They mostly pan and zoom around in order to get a good feel for the space in the environment. So it is preferable to have more panoramas and other media rather than a few high resolution panoramas. Of course, you will probably want to have one high resolution panorama just to show your client what is possible.
Besides using a modest resolution for the panorama, there are other authoring decisions that affect the file size of a panorama. Essentially, you would want to eliminate from the file anything that Kinoma Player 3 EX doesn't look at.
In particular, we suggest that you:
- Do not use a fast start preview. Kinoma Player 3 EX does not look at it at all. The preview track is mostly useful when viewing panoramas over the Internet. Since Kinoma Player 3 EX assumes that the panorama is local, there is no need to display the preview track, since the highest resolution track is already available.
- Do not use a hot spot track. Kinoma Player 3 EX does not recognize hot spots, and can neither display them nor take action when they are clicked.
- Do not use a sound track. Sound tracks are usually pretty large and can significantly increase the size of a panorama. Kinoma Player 3 EX ignores them, so it is best to save space by not including sound.
- Do not use an overlay track. Some people like to have their logo or a frame superimposed over the panorama. This usage is not accommodated by Kinoma Player 3 EX. Generally, though, such a track is small and size impact negligible.
- Do not use wired sprites. Some people like to customize their viewer by adding stylized buttons that control pan, tilt and zoom through the use of wired actions. Though wired sprite tracks are generally small, they are ignored by Kinoma Player 3 EX.
Equirectangular Spherical Image Sources
What if your source is an equirectangular spherical image? You can still view them on your PDA with Kinoma Player 3 EX if you convert it to a cubic QuickTime VR movie. The relationship between the circumference of an equirectangular spherical image and the size of the faces of a cubic panorama is:
c = p * (w - 1)
Where c is the circumference of the equirectangular image, and w is the width of a face in the cube. p, of course, is pi, and is approximately equal to 3.14159. We've computed these below for several popular values, rounding the circumference to an even number since the height of an equirectangular image is typically 1/2 that of the width.
| cubic face size | 256 | 384 | 480 | 512 | 640 | 768 | 800 |
| equirectangular circumference | 800 | 1200 | 1500 | 1610 | 2010 | 2410 | 2510 |
If you want to produce a 512x512x6 cubic QuickTime VR, you would first shrink your equirectangular image to a 1610x805 equirectangular, then convert to a cubic. If you are reducing the resolution a significant amount, you should make sure that your image resizer takes wraparound into account, otherwise you will be able to see the seam. Reality Pixels has a command line tool called sizimg, for both Macintosh and Windows, which will wrap around appropriately.
You can convert an equirectangular image to a cubic panorama on a Macintosh with either MakeCubic, available from Apple, or Cubic Converter from Click Here Design, or PanoCubePlus from PanoShow on Windows or Linux.Legal
No license or other agreement with Kinoma, Inc. is necessary to use the information provided in this technical note.
Kinoma Player may not be redistributed without a license from Kinoma. For further information on licensing Kinoma Player for distribution, please send email to licensing@ inoma.com.

