onMetaData (NetStream.onMetaData handler)

onMetaData = function(infoObject:Object) {}

Invoked when the Flash Player receives descriptive information embedded in the FLV file being played.

The Flash Video Exporter utility (version 1.1 or greater) embeds a video's duration, creation date, data rates, and other information into the video file itself. Different video encoders embed different sets of metadata.

This handler is triggered after a call to the NetStream.play() method, but before the video playhead has advanced.

In many cases the duration value embedded in FLV metadata approximates the actual duration but is not exact. In other words it will not always match the value of the NetStream.time property when the playhead is at the end of the video stream.

Availability: ActionScript 1.0; Flash Player 7

Parameters

infoObject:Object - An object containing one property for each metadata item.

Example

The code in this example starts by creating new NetConnection and NetStream objects. Then it defines the onMetaData() handler for the NetStream object. The handler cycles through each named property in the infoObject object and prints the property's name and value.

var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);

ns.onMetaData = function(infoObject:Object) {
    for (var propName:String in infoObject) {
        trace(propName + " = " + infoObject[propName]);
    }
};

ns.play("http://www.helpexamples.com/flash/video/water.flv");

This causes the following information to be displayed:

canSeekToEnd = true
 videocodecid = 4
 framerate = 15
 videodatarate = 400
 height = 215
 width = 320
 duration = 7.347

The list of properties will vary depending on the software that was used to encode the FLV file.

See also

time (NetStream.time property), play (NetStream.play method), NetConnection


Flash CS3