Geoffrey Leach
and 1 contributors


Audio::TagLib::Ogg::File - An implementation of Audio::TagLib::File with some helpers for Ogg based formats


This is an implementation of Ogg file page and packet rendering and is of use to Ogg based formats. While the API is small this handles the non-trivial details of breaking up an Ogg stream into packets and makes these available (via subclassing) to the codec meta data implementations.


Destroys the instance of File.

ByteVector packet(UV $i)

Returns the packet contents for the i-th packet (starting from zero) in the Ogg bitstream.

WARNING The requires reading at least the packet header for every page up to the requested page.

void setPacket(UV $i, ByteVector $p)

Sets the packet with index $i to the value $p.

PageHeader firstPageHeader()

Returns the PageHeader for the first page in the stream or undef if the page could not be found.

PageHeader lastPageHeader()

Returns the PageHeader for the last page in the stream or undef if the page could not be found.

BOOL save()

Saves the file.


None by default.


Audio::TagLib File


Dongxu Ma, <>


Geoffrey Leach


Copyright (C) 2005-2010 by Dongxu Ma

Copyright (C) 2011 - 2012 Geoffrey Leach

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.7 or, at your option, any later version of Perl 5 you may have available.