liboggz  1.1.1
Typedefs | Enumerations
oggz_constants.h File Reference

General constants used by liboggz. More...

Go to the source code of this file.

Typedefs

typedef enum OggzStreamContent OggzStreamContent
 Definition of stream content types.
 

Enumerations

enum  OggzFlags {
  OGGZ_READ = 0x00, OGGZ_WRITE = 0x01, OGGZ_NONSTRICT = 0x10, OGGZ_AUTO = 0x20,
  OGGZ_PREFIX = 0x40, OGGZ_SUFFIX = 0x80
}
 Flags to oggz_new(), oggz_open(), and oggz_openfd(). More...
 
enum  OggzStopCtl { OGGZ_CONTINUE = 0, OGGZ_STOP_OK = 1, OGGZ_STOP_ERR = -1 }
 
enum  OggzFlushOpts { OGGZ_FLUSH_BEFORE = 0x01, OGGZ_FLUSH_AFTER = 0x02 }
 Flush options for oggz_write_feed; can be or'ed together. More...
 
enum  OggzStreamContent {
  OGGZ_CONTENT_THEORA = 0, OGGZ_CONTENT_VORBIS, OGGZ_CONTENT_SPEEX, OGGZ_CONTENT_PCM,
  OGGZ_CONTENT_CMML, OGGZ_CONTENT_ANX2, OGGZ_CONTENT_SKELETON, OGGZ_CONTENT_FLAC0,
  OGGZ_CONTENT_FLAC, OGGZ_CONTENT_ANXDATA, OGGZ_CONTENT_CELT, OGGZ_CONTENT_KATE,
  OGGZ_CONTENT_DIRAC, OGGZ_CONTENT_OPUS, OGGZ_CONTENT_VP8, OGGZ_CONTENT_UNKNOWN
}
 Definition of stream content types.
 
enum  OggzError {
  OGGZ_ERR_OK = 0, OGGZ_ERR_GENERIC = -1, OGGZ_ERR_BAD_OGGZ = -2, OGGZ_ERR_INVALID = -3,
  OGGZ_ERR_NO_STREAMS = -4, OGGZ_ERR_BOS = -5, OGGZ_ERR_EOS = -6, OGGZ_ERR_BAD_METRIC = -7,
  OGGZ_ERR_SYSTEM = -10, OGGZ_ERR_DISABLED = -11, OGGZ_ERR_NOSEEK = -13, OGGZ_ERR_STOP_OK = -14,
  OGGZ_ERR_STOP_ERR = -15, OGGZ_ERR_IO_AGAIN = -16, OGGZ_ERR_HOLE_IN_DATA = -17, OGGZ_ERR_OUT_OF_MEMORY = -18,
  OGGZ_ERR_BAD_SERIALNO = -20, OGGZ_ERR_BAD_BYTES = -21, OGGZ_ERR_BAD_B_O_S = -22, OGGZ_ERR_BAD_E_O_S = -23,
  OGGZ_ERR_BAD_GRANULEPOS = -24, OGGZ_ERR_BAD_PACKETNO = -25, OGGZ_ERR_COMMENT_INVALID = -129, OGGZ_ERR_BAD_GUARD = -210,
  OGGZ_ERR_RECURSIVE_WRITE = -266
}
 Definitions of error return values. More...
 

Detailed Description

General constants used by liboggz.

Enumeration Type Documentation

enum OggzError

Definitions of error return values.

Enumerator
OGGZ_ERR_OK 

No error.

OGGZ_ERR_GENERIC 

generic error

OGGZ_ERR_BAD_OGGZ 

oggz is not a valid OGGZ

OGGZ_ERR_INVALID 

The requested operation is not suitable for this OGGZ.

OGGZ_ERR_NO_STREAMS 

oggz contains no logical bitstreams

OGGZ_ERR_BOS 

Operation is inappropriate for oggz in current bos state.

OGGZ_ERR_EOS 

Operation is inappropriate for oggz in current eos state.

OGGZ_ERR_BAD_METRIC 

Operation requires a valid metric, but none has been set.

OGGZ_ERR_SYSTEM 

System specific error; check errno for details.

OGGZ_ERR_DISABLED 

Functionality disabled at build time.

OGGZ_ERR_NOSEEK 

Seeking operation is not possible for this OGGZ.

OGGZ_ERR_STOP_OK 

Reading was stopped by an OggzReadCallback returning OGGZ_STOP_OK or writing was stopped by an OggzWriteHungry callback returning OGGZ_STOP_OK.

OGGZ_ERR_STOP_ERR 

Reading was stopped by an OggzReadCallback returning OGGZ_STOP_ERR or writing was stopped by an OggzWriteHungry callback returning OGGZ_STOP_ERR.

OGGZ_ERR_IO_AGAIN 

no data available from IO, try again

OGGZ_ERR_HOLE_IN_DATA 

Hole (sequence number gap) detected in input data.

OGGZ_ERR_OUT_OF_MEMORY 

Out of memory.

OGGZ_ERR_BAD_SERIALNO 

The requested serialno does not exist in this OGGZ.

OGGZ_ERR_BAD_BYTES 

Packet disallowed due to invalid byte length.

OGGZ_ERR_BAD_B_O_S 

Packet disallowed due to invalid b_o_s (beginning of stream) flag.

OGGZ_ERR_BAD_E_O_S 

Packet disallowed due to invalid e_o_s (end of stream) flag.

OGGZ_ERR_BAD_GRANULEPOS 

Packet disallowed due to invalid granulepos.

OGGZ_ERR_BAD_PACKETNO 

Packet disallowed due to invalid packetno.

OGGZ_ERR_COMMENT_INVALID 

Comment violates VorbisComment restrictions.

OGGZ_ERR_BAD_GUARD 

Guard provided by user has non-zero value.

OGGZ_ERR_RECURSIVE_WRITE 

Attempt to call oggz_write() or oggz_write_output() from within a hungry() callback.

enum OggzFlags

Flags to oggz_new(), oggz_open(), and oggz_openfd().

Can be or'ed together in the following combinations:

  • OGGZ_READ | OGGZ_AUTO
  • OGGZ_WRITE | OGGZ_NONSTRICT | OGGZ_PREFIX | OGGZ_SUFFIX
Enumerator
OGGZ_READ 

Read only.

OGGZ_WRITE 

Write only.

OGGZ_NONSTRICT 

Disable strict adherence to mapping constraints, eg for handling an incomplete stream.

OGGZ_AUTO 

Scan for known headers while reading, and automatically set metrics appropriately.

Opening a file for reading with flags = OGGZ_READ | OGGZ_AUTO will allow seeking on Speex, Vorbis, FLAC, Theora, CMML and all Annodex streams in units of milliseconds, once all bos pages have been delivered.

OGGZ_PREFIX 

Write Prefix: Assume that we are only writing the prefix of an Ogg stream, ie.

disable checking for conformance with end-of-stream constraints.

OGGZ_SUFFIX 

Write Suffix: Assume that we are only writing the suffix of an Ogg stream, ie.

disable checking for conformance with beginning-of-stream constraints.

Flush options for oggz_write_feed; can be or'ed together.

Enumerator
OGGZ_FLUSH_BEFORE 

Flush all streams before beginning this packet.

OGGZ_FLUSH_AFTER 

Flush after this packet.

Enumerator
OGGZ_CONTINUE 

Continue calling read callbacks.

OGGZ_STOP_OK 

Stop calling callbacks, but retain buffered packet data.

OGGZ_STOP_ERR 

Stop calling callbacks, and purge buffered packet data.