Ogg-LibOgg
view release on metacpan or search on metacpan
Void
-Output:
Memory address of Ogg Packet.
=cut
void
Ogg_LibOgg_make_ogg_packet()
PREINIT:
ogg_packet *memory;
PPCODE:
New(0, memory, 1, ogg_packet); // it always satisfies with what we have asked
XPUSHs(sv_2mortal(newSViv(PTR2IV(memory)))); // since i am using sv_2mortal, i don't have to worry about leaks
=head2 make_ogg_stream_state
Creates an Ogg Stream State.
-Input:
Void
-Output:
Memory address of Ogg Stream State.
=cut
void
Ogg_LibOgg_make_ogg_stream_state()
PREINIT:
ogg_stream_state *memory;
PPCODE:
New(0, memory, 1, ogg_stream_state);
XPUSHs(sv_2mortal(newSViv(PTR2IV(memory))));
=head2 make_ogg_page
Creates an Ogg Page.
-Input:
Void
-Output:
Memory address of Ogg Page.
=cut
void
Ogg_LibOgg_make_ogg_page()
PREINIT:
ogg_page *memory;
PPCODE:
New(0, memory, 1, ogg_page);
XPUSHs(sv_2mortal(newSViv(PTR2IV(memory))));
=head2 make_ogg_sync_state
Creates an Ogg Sync State.
-Input:
Void
-Output:
Memory address of Ogg Sync State.
=cut
void
Ogg_LibOgg_make_ogg_sync_state()
PREINIT:
ogg_sync_state *memory;
PPCODE:
New(0, memory, 1, ogg_sync_state);
XPUSHs(sv_2mortal(newSViv(PTR2IV(memory))));
=head1 Functions (Bitstream Primitives)
=cut
=head2 ogg_stream_init
Returns a pointer to the newly allocated buffer or NULL on error
=cut
void
Ogg_LibOgg_ogg_sync_buffer(oy, size);
int oy
int size
PREINIT:
ogg_sync_state *_oy;
char *buffer;
PPCODE:
_oy = INT2PTR(ogg_sync_state *, oy);
if((buffer = ogg_sync_buffer(_oy, size)) != NULL) {
XPUSHs(sv_2mortal(newSViv(PTR2IV(buffer))));
} else {
XSRETURN_UNDEF;
}
=head2 ogg_sync_wrote
( run in 1.698 second using v1.01-cache-2.11-cpan-5511b514fd6 )