NAME

FLV::Body - Flash video file data structure

LICENSE

Copyright 2006 Clotho Advanced Media, Inc., <cpan@clotho.com>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

METHODS

This is a subclass of FLV::Base.

$self->parse($fileinst)

Takes a FLV::File instance and extracts the FLV body from the file stream. This method throws exceptions if the stream is not a valid FLV v1.0 or v1.1 file.

There is no return value.

$self->serialize($filehandle)

Serializes the in-memory FLV body. If that representation is not complete, this throws an exception via croak(). Returns a boolean indicating whether writing to the file handle was successful.

$self->get_info()

Returns a hash of FLV metadata. See File::Info for more details.

$self->get_tags()

Returns an array of tag instances.

$self->get_video_frames()

Returns the video tags (FLV::VideoTag instances) in the FLV stream.

$self->get_video_keyframes()

Returns just the video tags which contain keyframe data.

$self->get_audio_packets()

Returns the audio tags (FLV::AudioTag instances) in the FLV stream.

$self->get_meta_tags()

Returns the meta tags (FLV::MetaTag instances) in the FLV stream.

$self->last_start_time()

Returns the start timestamp of the last tag, in milliseconds.

$self->get_meta($key);
$self->set_meta($key, $value, ...);

These are convenience functions for interacting with an onMetadata tag at time 0, which is a common convention in FLV files. If the 0th tag is not an FLV::MetaTag instance, one is created and prepended to the tag list.

See also get_value and set_value in FLV::MetaTag.

$self->merge_meta()

Consolidate zero or more meta tags into a single tag. If there are more than one tags and there are any duplicate keys, the first key takes precedence.

AUTHOR

Clotho Advanced Media Inc., cpan@clotho.com

Primary developer: Chris Dolan