libvorbis - datatype - vorbis_info

libvorbis documentation | libvorbis version 1.25 - 20000615

# vorbis_info

declared in "vorbis/codec.h"

The vorbis_info structure contains information about a vorbis bitstream. Most of the information in this struct is more complex and in-depth than we need for vorbisfile decoding. However, the info's there if we need or want it.

    typedef struct vorbis_info{
      int version;
      int channels;
      long rate;

      long bitrate_upper;
      long bitrate_nominal;
      long bitrate_lower;

      long blocksizes[2];

      int        modes;
      int        maps;
      int        times;
      int        floors;
      int        residues;
      int        books;
      int        psys;     /* encode only */

      vorbis_info_mode    *mode_param[64];
      int                  map_type[64];
      vorbis_info_mapping *map_param[64];
      int                  time_type[64];
      vorbis_info_time    *time_param[64];
      int                  floor_type[64];
      vorbis_info_floor   *floor_param[64];
      int                  residue_type[64];
      vorbis_info_residue *residue_param[64];
      static_codebook     *book_param[256];
      vorbis_info_psy     *psy_param[64]; /* encode only */

      /* for block long/sort tuning; encode only */
      int        envelopesa;
      double     preecho_thresh;
      double     preecho_clamp;

    } vorbis_info;

### Relevant Struct Members

version
  Vorbis encoder version used to create this bitstream.
channels
  Int signifying number of channels in bitstream.
rate
  Sampling rate of the bitstream.
bitrate_upper
  Specifies the upper limit in a VBR bitstream. If the value matches the bitrate_nominal and bitrate_lower parameters, the stream is fixed bitrate. May be unset if no limit exists.
bitrate_nominal
  Specifies the average bitrate for a VBR bitstream. May be unset. If the bitrate_upper and bitrate_lower parameters match, the stream is fixed bitrate.
bitrate_lower
  Specifies the lower limit in a VBR bitstream. If the value matches the bitrate_nominal and bitrate_upper parameters, the stream is fixed bitrate. May be unset if no limit exists.
blocksizes[2]
  Contains the sizes of the long and short blocks for this particular bitstream. These are variable and can be set by the encoder. Vorbis only supports two sizes, long and short.

copyright © 2000 vorbis team | Ogg Vorbis team@vorbis.org
vorbisfile documentation | vorbisfile version 1.25 - 20000615