libogg documentation | libogg release 1.3.6 - 20250616

# ogg_stream_iovecin

declared in "ogg/ogg.h";

This function submits packet data (in the form of an array of ogg_iovec_t, rather than using an ogg_packet structure) to the bitstream for page encapsulation. After this is called, more packets can be submitted, or pages can be written out.

In a typical encoding situation, this should be used after filling a packet with data. The data in the packet is copied into the internal storage managed by the ogg_stream_state, so the caller is free to alter the contents of os after this call has returned.

    int ogg_stream_iovecin(ogg_stream_state *os, ogg_iovec_t *iov, int count, long e_o_s, ogg_int64_t granulepos);

### Parameters

os
  Pointer to a previously declared ogg_stream_state struct.
iov
  Length-encoded buffers held in an array of ogg_iovec_t.
count
  Length of the iov array.
e_o_s
  End of stream flag, analogous to the e_o_s field in an ogg_packet.
granulepos
  Granule position value, analogous to the granpos field in an ogg_packet.

### Return Values

> - 0 returned on success. -1 returned in the event of internal error.

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