Mercurial > hg > sv-dependency-builds
view src/libvorbis-1.3.3/lib/bitrate.h @ 169:223a55898ab9 tip default
Add null config files
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Mon, 02 Mar 2020 14:03:47 +0000 |
parents | 98c1576536ae |
children |
line wrap: on
line source
/******************************************************************** * * * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * * * * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 * * by the Xiph.Org Foundation http://www.xiph.org/ * * * ******************************************************************** function: bitrate tracking and management last mod: $Id: bitrate.h 13293 2007-07-24 00:09:47Z xiphmont $ ********************************************************************/ #ifndef _V_BITRATE_H_ #define _V_BITRATE_H_ #include "vorbis/codec.h" #include "codec_internal.h" #include "os.h" /* encode side bitrate tracking */ typedef struct bitrate_manager_state { int managed; long avg_reservoir; long minmax_reservoir; long avg_bitsper; long min_bitsper; long max_bitsper; long short_per_long; double avgfloat; vorbis_block *vb; int choice; } bitrate_manager_state; typedef struct bitrate_manager_info{ long avg_rate; long min_rate; long max_rate; long reservoir_bits; double reservoir_bias; double slew_damp; } bitrate_manager_info; extern void vorbis_bitrate_init(vorbis_info *vi,bitrate_manager_state *bs); extern void vorbis_bitrate_clear(bitrate_manager_state *bs); extern int vorbis_bitrate_managed(vorbis_block *vb); extern int vorbis_bitrate_addblock(vorbis_block *vb); extern int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd, ogg_packet *op); #endif