LMMS
Loading...
Searching...
No Matches
plugins
CarlaBase
carla
source
modules
juce_audio_formats
codecs
oggvorbis
libvorbis-1.3.7
lib
bitrate.h
Go to the documentation of this file.
1
/********************************************************************
2
* *
3
* THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
4
* USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
5
* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6
* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
7
* *
8
* THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
9
* by the Xiph.Org Foundation https://xiph.org/ *
10
* *
11
********************************************************************
12
13
function: bitrate tracking and management
14
15
********************************************************************/
16
17
#ifndef _V_BITRATE_H_
18
#define _V_BITRATE_H_
19
20
#include "
../../codec.h
"
21
#include "
codec_internal.h
"
22
#include "
os.h
"
23
24
/* encode side bitrate tracking */
25
typedef
struct
bitrate_manager_state
{
26
int
managed
;
27
28
long
avg_reservoir
;
29
long
minmax_reservoir
;
30
long
avg_bitsper
;
31
long
min_bitsper
;
32
long
max_bitsper
;
33
34
long
short_per_long
;
35
double
avgfloat
;
36
37
vorbis_block
*
vb
;
38
int
choice
;
39
}
bitrate_manager_state
;
40
41
typedef
struct
bitrate_manager_info
{
42
long
avg_rate
;
43
long
min_rate
;
44
long
max_rate
;
45
long
reservoir_bits
;
46
double
reservoir_bias
;
47
48
double
slew_damp
;
49
50
}
bitrate_manager_info
;
51
52
extern
void
vorbis_bitrate_init
(
vorbis_info
*vi,
bitrate_manager_state
*bs);
53
extern
void
vorbis_bitrate_clear
(
bitrate_manager_state
*bs);
54
extern
int
vorbis_bitrate_managed
(
vorbis_block
*vb);
55
extern
int
vorbis_bitrate_addblock
(
vorbis_block
*vb);
56
extern
int
vorbis_bitrate_flushpacket
(
vorbis_dsp_state
*vd,
ogg_packet
*op);
57
58
#endif
vorbis_bitrate_managed
int vorbis_bitrate_managed(vorbis_block *vb)
Definition
bitrate.c:63
vorbis_bitrate_flushpacket
int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd, ogg_packet *op)
Definition
bitrate.c:229
vorbis_bitrate_init
void vorbis_bitrate_init(vorbis_info *vi, bitrate_manager_state *bs)
Definition
bitrate.c:28
vorbis_bitrate_addblock
int vorbis_bitrate_addblock(vorbis_block *vb)
Definition
bitrate.c:73
vorbis_bitrate_clear
void vorbis_bitrate_clear(bitrate_manager_state *bs)
Definition
bitrate.c:58
codec.h
codec_internal.h
os.h
bitrate_manager_info
Definition
bitrate.h:41
bitrate_manager_info::avg_rate
long avg_rate
Definition
bitrate.h:42
bitrate_manager_info::min_rate
long min_rate
Definition
bitrate.h:43
bitrate_manager_info::reservoir_bias
double reservoir_bias
Definition
bitrate.h:46
bitrate_manager_info::max_rate
long max_rate
Definition
bitrate.h:44
bitrate_manager_info::slew_damp
double slew_damp
Definition
bitrate.h:48
bitrate_manager_info::reservoir_bits
long reservoir_bits
Definition
bitrate.h:45
bitrate_manager_state
Definition
bitrate.h:25
bitrate_manager_state::short_per_long
long short_per_long
Definition
bitrate.h:34
bitrate_manager_state::minmax_reservoir
long minmax_reservoir
Definition
bitrate.h:29
bitrate_manager_state::avg_bitsper
long avg_bitsper
Definition
bitrate.h:30
bitrate_manager_state::max_bitsper
long max_bitsper
Definition
bitrate.h:32
bitrate_manager_state::avg_reservoir
long avg_reservoir
Definition
bitrate.h:28
bitrate_manager_state::choice
int choice
Definition
bitrate.h:38
bitrate_manager_state::vb
vorbis_block * vb
Definition
bitrate.h:37
bitrate_manager_state::managed
int managed
Definition
bitrate.h:26
bitrate_manager_state::avgfloat
double avgfloat
Definition
bitrate.h:35
bitrate_manager_state::min_bitsper
long min_bitsper
Definition
bitrate.h:31
ogg_packet
Definition
ogg.h:89
vorbis_block
Definition
codec.h:87
vorbis_dsp_state
Definition
codec.h:58
vorbis_info
Definition
codec.h:27
Generated on
for LMMS by
1.16.1