by Andrew Kirkpatrick

 Comments (5)


March 8, 2007

This post is subject to Adobe's Terms of Use.

WGBH’s National Center for Accessible Media (NCAM) is providing a new component that allows Flash developers to add captions to video in Flash. “cc for Flash” is a free download and is available at the NCAM web site ( This component helps developers use captions in QuickTime’s QTtext format or in the new W3C Timed Text format called DFXP.
MAGpie's export menu, showing the DFXP output option.
Also announced is an update to MAGpie, NCAM’s free closed captioning tool. This update adds a new export item to MAGpie’s export menu to allow for the output of DFXP caption files.
To use MAGpie to caption an FLV, you’ll need to use a file in a media type that is supported by QuickTime, so if your video starts out as an MPG or MOV just use that for the captioning, and then use the XML file generated by MAGpie. It won’t matter as long as the timeline for the FLV is the same as the timeline for the original video. If you create the FLV from a portion of a larger file you’ll want to get a QT-compatible file that has the same timeline for the captioning.
I’m really excited about this new development – send links to captioned video if you use cc for Flash. Thanks to NCAM for the great work!


  • By dananova - 2:23 PM on March 14, 2007  

    The subject of accessible FLV playback UI components: The project that I am tasked with is building a video player for educational use. It uses FLV Playback and UI components which makes it easy to caption. The difficulty is with the component playback buttons which are required to be keystroke enabled. Wishing that there was a class to assign FLV playback UI components with a keystroke while maintaining states. I am able to add the keyListener/onKeyDown method to a component. The caveat is that this then negates the default button states of the component. To work around that, I am writing many lines of AS to reassign button states for every event: onKeydown and mouse events with all of their respective states.

  • By AWK - 5:03 PM on March 14, 2007  

    The NCAM component is not focused on the UI, but the FLVPlayback captioning skins ( have screen reader and keyboard support built in. If you want to add additional keyboard shortcuts, Michael Jordan (who developed the captioning skins) suggests adding a listener object independent of the FLVPlayback component.
    For example:
    // create a listener object
    var keyListener_obj:Object = new Object();
    // store a reference to the flvPlayback_flvp instance on the Stage keyListener_obj.fp = flvPlayback_flvp;
    // set up an onKeyDown event handler
    keyListener_obj.onKeyDown = function(e:Object){
    // you may want to do some state checking here depending on the
    // complexity of your application.
    // You wouldn’t want a keyboard event to start playing a video
    // when you’re trying to do something else.
    // which key was pressed?
    var k:String = String.fromCharCode(Key.getCode());
    // for play/pause it’s easy
    // just pause if flvPlayback is playing
    // otherwise pause.
    case “P” :
    } else {;
    // mute button we have to dig into private properties
    // of FLVPlayback component
    case “S” :
    var uiMgr = this.fp._uiMgr;
    var muteOn_mc:MovieClip =
    var muteOff_mc:MovieClip =
    if(muteOn_mc && muteOn_mc._visible){
    } else if(muteOff_mc && muteOff_mc._visible){
    // captionDisplay has to access skin_mc property
    case “C” :
    var captionDisplay = this.fp.skin_mc.captionDisplay;
    captionDisplay.toggled = !captionDisplay.toggled;
    // register keyListener_obj as a listener Key.addListener(keyListener_obj);

  • By Lost - 6:42 PM on April 4, 2007  

    I’m looking for two presentation files offered at the March 07 CSUN conference. Andrew Fitzpatrick co-presented on PDF and Flash accessibility and indicated the presentation files would be available here. I’m probably just missing them.
    Can someone point me in the right direction?

  • By Vetrov - 7:33 AM on May 21, 2007  


  • By Daily News - 7:42 AM on March 24, 2008  

    This was exactly what i was after – Thanks