QuickTime, text fields, closed captioning

Richard Gaskin ambassador at fourthworld.com
Wed Oct 1 13:58:01 EDT 2003


Toma Tasovac wrote:

> Is it possible to have a transparent text field on top of a quicktime
> movie, the way we can put a text field layer over an image?  if not --
> is there any way in revolution to fake closed captioning?  (i know i
> can do this in, say, LiveStage Pro, but I want to implement closed
> captioning in such a way that the user can stop the movie at any frame,
> and click on any words in the subtitle -- which Revolution should then
> take care of, translate etc...
> 
> Is this absolutely hopeless?

You can turn on the alwaysBuffer of the player, but that disables the
controller. :(

Better would be to write a SMIL file and use that instead of your QT movie
as the filename.  SMIL lets you synchronize multiple media elements using a
simple XML tile.  Rev player objects can handle SMIL 1.0 plus the additional
QT-specific syntax options noted at
<http://www.apple.com/quicktime/authoring/qtsmil.html>.

The SMIL 1.0 spec is at <http://www.w3.org/TR/REC-smil/>.

A good tutorial is at
<http://www.helio.org/products/smil/tutorial/toc.html>.

I started work on a GUI SMIL editor in Rev some time ago, but alas it's been
collecting dust on my hard drive in favor of more pressing projects.  So
while I don't have a handy tool to pass to you yet, I can offer some
encouragement in the meantime:  SMIL may seem daunting at first, but you can
pick it up in an afternoon and it's as easy to write as HTML.

To give you an idea of the format, here's an example from the
above-referenced tutorial:

<smil >
<head >
  <layout >
  <root-layout width ="300" height ="200" background-color ="white" />
  <region id ="vim_icon" left ="75" top ="50" width ="32" height ="32" />
  <region id ="soja_icon" left ="150" top ="50" width ="100" height ="30" />
  </ layout >
</ head >
<body >
 <par >
  <img src ="vim32x32.gif" alt ="The vim icon" region ="vim_icon"
   dur ="6s" /> 
  <img src ="madewithsoja.gif" alt ="Made with SOJA" region ="soja_icon"
   dur ="6s" /> 
 </ par >
</ body >
</ smil >


As a side note, you can also use QT 6's support for 3GPP to dynamically
create text tracks (see
<http://developer.apple.com/documentation/QuickTime/QT6_3/index.html>), but
it requires QT 6.3 and so it's not nearly as widely supported yet as SMIL,
which should cover what you need.

-- 
 Richard Gaskin 
 Fourth World Media Corporation
 ___________________________________________________________
 Ambassador at FourthWorld.com       http://www.FourthWorld.com
 Tel: 323-225-3717                       AIM: FourthWorldInc




More information about the use-livecode mailing list