FLV::File - Parse Flash Video files
This is a subclass of FLV::Base.
empty()
Prepare an empty FLV. This is only needed if you do not plan to call
the parse() method.
parse($filename)
parse($filehandle)
Reads the specified file. If the file does not exist or is an invalid
FLV stream, an exception will be thrown via croak().
There is no return value.
populate_meta()
Fill in various onMetadata fields if they are not already present.
serialize($filehandle)
Serializes the in-memory FLV data. If that representation is not
complete, this throws an exception via croak(). Returns a boolean
indicating whether writing to the file handle was successful.
get_info()
Returns a hash of FLV metadata. See File::Info for more details.
get_filename()
Returns the filename, if any.
get_meta($key);
These are convenience functions for interacting with an onMetadata
tag at time 0, which is a common convention in FLV files. If the zeroth
tag is not an the FLV::MetaTag manpage instance, one is created and prepended
to the tag list.
See also get_meta and set_meta in the FLV::Body manpage.
get_header()
get_body()
These methods return the FLV::Header and FLV::Body instance,
respectively. Those will be undef until you call either empty() or
parse().
The following methods are only used during the parsing phase.
get_bytes($n)
Reads $n bytes off the active filehandle and returns them as a
string. Throws an exception if the filehandle is closed or hits EOF
before all the bytes can be read.
get_pos()
get_pos($offset)
Returns a string representing the current position in the filehandle. This is intended for use in debugging or exceptions. An example of use: indicate that an input value five bytes behind the read head is erroneous.
die 'Error parsing version number at byte '.$self->get_pos(-5);
at_end()
Returns a boolean indicating if the FLV stream is exhausted. Throws an exception if the filehandle is closed.