[vlc-devel] QTVR in VLC?
vlc07 at sfina.com
Thu Dec 6 13:54:19 CET 2007
Dear VLC Developers,
First of all, thank you for this excellent media player.
This is my first post here. I hope I am at the right place here and that
I don't offend anybody. If I do, please accept my apologies and kindly
direct me to the right place for this topic.
This introduction is a bit long - if you just want to skip to "the
point", scroll down to THE QUESTION. However you might need some
background information to understand the question, which I provide below.
My intention is to contribute to VLC's development, even if strictly
speaking I am not a developer. My coding experience is very limited. I
am a media producer (hence my interest in VLC) and I was the admin for
this year's participation in the Google Summer of Code of the hugin /
I would like to discuss with you a particular type of media -
interactive panoramas or, in Apple's terminology, QTVR; and one of our
GSoC projects, FreePV
All media players I have seen so far, including VLC, that claim support
for QuickTime, don't support QTVR. Strictly speaking, QuickTime and
QuickTimeVR are two different animals that have been placed under the
same brand by Apple's marketing, with the consequence that they share
the same MIME Type, same OBJECT/EMBED HTML tag, and can not be
distinguished from one another when on a web page.
The result is a conflict between the VLC plugin and the FreePV plugin.
When you look at
- with FreePV installed, you will see the QTVR content on that page.
- with VLC installed, you will see a black screen (at least it was so
last time I tested, a few months ago).
on the other hand, if FreePV is installed, mainstream QuickTime content
will show a black screen, while VLC will display it properly.
To see what should be displayed without fiddling with the plugins, you
can go to
and click on the thumbnails. There are a few technologies to display VR
and chances are, that you have at least one of them on your box (Flash
or Java, though Java is low resolution due to heap memory limitations
and Flash is bumpier than QuickTime, especially on slower boxes).
If you click on the help link, you will have a choice out of the
detected plugin technologies to display that content.
Note that FreePV does more than just display QuickTimeVR. During this
summer of code it has been added with the ability to display SPi-V
panoramas, a competing VR technology based on Adobe's Shockwave.
Roughly speaking there are four major VR technologies / plugins:
- QuickTimeVR is the original. Over ten years old, still unbeaten,
particularly on weak CPUs. Available for Mac and Windows only :( lack of
availability on Linux motivated Pablo d'Angelo to start writing FreePV.
- Java. There is a whole bunch of Java-based VR applets. Most of them
are crap, with the exception of the OpenSourced ptviewer and the closed
sourced Immervision Pure Player. Java is no longer a serious contender
in the arena despite intense use by some industries. The problem is the
default heap memory limitation. It is also burdened with other problems,
particularly on the Mac.
- Shockwave/SPi-V - based on the Shockwave engine, SPi-V is probably the
first GPU-accelerated VR viewer, and it shows! Amazing stuff can be
done, unfortunately available for Windows only, and with some caveats
for Mac (the Intelmac version is still missing).
- Flash is the new kid on the block. Flash 8 introduced basic
functionalities and Flash 9 has improved on that. It is still far from
the smoothness of Shockwave/SPi-V and it eats much more CPU than
QuickTime, but it's ubiquity makes it a technology of choice.
Other technologies exist, but they are nearly irrelevant in terms of
audience. The latest statistics (September 2007) are
- 67% QuickTime
- 85% Java
- 58% Shockwave
- 99% Flash (98% > Flash 8)
Is it possible to support QTVR in VLC?
If so, what would be the best way to do it, avoiding duplication of
effort with the FreePV project and conflict between installed plugins?
Can the VLC plugin identify if a QuickTime content is a QTVR?
Can it somehow pass it on to FreePV for processing, e.g. integrate
FreePV as a library?
Could it also "take over" the OBJECT/EMBED tag for Shockwave content to
pass SPi-V panoramas to FreePV?
What would need to be done and who can do it?
Thank you for your attention.
Looking forward to help developing VLC and to see my content in VLC.
More information about the vlc-devel