libogg documentation | libogg release 1.3.5 - 20210603

# ogg_sync_buffer

declared in "ogg/ogg.h";

This function is used to provide a properly-sized buffer for writing.

Buffer space which has already been returned is cleared, and the buffer is extended as necessary by the size plus some additional bytes. Within the current implementation, an extra 4096 bytes are allocated, but applications should not rely on this additional buffer space.

The buffer exposed by this function is empty internal storage from the ogg_sync_state struct, beginning at the fill mark within the struct.

A pointer to this buffer is returned to be used by the calling application.

    char *ogg_sync_buffer(ogg_sync_state *oy, long size);

### Parameters

oy
  Pointer to a previously declared ogg_sync_state struct.
size
  Size of the desired buffer. The actual size of the buffer returned will be this size plus some extra bytes (currently 4096).

### Return Values

> - Returns a pointer to the newly allocated buffer or NULL on error

copyright © 2000-2021 Xiph.Org Foundation | Ogg Container Format
libogg documentation | libogg release 1.3.5 - 20210603