|
FFmpeg
|
WMA Voice decoding context. More...
Data Fields | |
Global values specified in the stream header / extradata or used all over. | |
| GetBitContext | gb |
| packet bitreader. More... | |
| int8_t | vbm_tree [25] |
| converts VLC codes to frame type More... | |
| int | spillover_bitsize |
| number of bits used to specify spillover_nbits in the packet header = ceil(log2(ctx->block_align << 3)) More... | |
| int | history_nsamples |
| number of samples in history for signal prediction (through ACB) More... | |
| int | do_apf |
| whether to apply the averaged projection filter (APF) More... | |
| int | denoise_strength |
| strength of denoising in Wiener filter [0-11] More... | |
| int | denoise_tilt_corr |
| Whether to apply tilt correction to the Wiener filter coefficients (postfilter) More... | |
| int | dc_level |
| Predicted amount of DC noise, based on which a DC removal filter is used. More... | |
| int | lsps |
| number of LSPs per frame [10 or 16] More... | |
| int | lsp_q_mode |
| defines quantizer defaults [0, 1] More... | |
| int | lsp_def_mode |
| defines different sets of LSP defaults [0, 1] More... | |
| int | min_pitch_val |
| base value for pitch parsing code More... | |
| int | max_pitch_val |
| max value + 1 for pitch parsing More... | |
| int | pitch_nbits |
| number of bits used to specify the pitch value in the frame header More... | |
| int | block_pitch_nbits |
| number of bits used to specify the first block's pitch value More... | |
| int | block_pitch_range |
| range of the block pitch More... | |
| int | block_delta_pitch_nbits |
| number of bits used to specify the delta pitch between this and the last block's pitch value, used in all but first block More... | |
| int | block_delta_pitch_hrange |
| 1/2 range of the delta (full range is from -this to +this-1) More... | |
| uint16_t | block_conv_table [4] |
| boundaries for block pitch unit/scale conversion More... | |
Packet values specified in the packet header or related to a packet. | |
A packet is considered to be a single unit of data provided to this decoder by the demuxer. | |
| int | spillover_nbits |
| number of bits of the previous packet's last superframe preceding this packet's first full superframe (useful for re-synchronization also) More... | |
| int | has_residual_lsps |
| if set, superframes contain one set of LSPs that cover all frames, encoded as independent and residual LSPs; if not set, each frame contains its own, fully independent, LSPs More... | |
| int | skip_bits_next |
| number of bits to skip at the next call to wmavoice_decode_packet() (since they're part of the previous superframe) More... | |
| uint8_t | sframe_cache [SFRAME_CACHE_MAXSIZE+AV_INPUT_BUFFER_PADDING_SIZE] |
| cache for superframe data split over multiple packets More... | |
| int | sframe_cache_size |
| set to >0 if we have data from an (incomplete) superframe from a previous packet that spilled over in the current packet; specifies the amount of bits in sframe_cache More... | |
| PutBitContext | pb |
| bitstream writer for sframe_cache More... | |
Frame and superframe values | |
Superframe and frame data - these can change from frame to frame, although some of them do in that case serve as a cache / history for the next frame or superframe. | |
| double | prev_lsps [MAX_LSPS] |
| LSPs of the last frame of the previous superframe. More... | |
| int | last_pitch_val |
| pitch value of the previous frame More... | |
| int | last_acb_type |
| frame type [0-2] of the previous frame More... | |
| int | pitch_diff_sh16 |
| ((cur_pitch_val - last_pitch_val) << 16) / MAX_FRAMESIZE More... | |
| float | silence_gain |
| set for use in blocks if ACB_TYPE_NONE More... | |
| int | aw_idx_is_ext |
| whether the AW index was encoded in 8 bits (instead of 6) More... | |
| int | aw_pulse_range |
| the range over which aw_pulse_set1() can apply the pulse, relative to the value in aw_first_pulse_off. More... | |
| int | aw_n_pulses [2] |
| number of AW-pulses in each block; note that this number can be negative (in which case it basically means "zero") More... | |
| int | aw_first_pulse_off [2] |
| index of first sample to which to apply AW-pulses, or -0xff if unset More... | |
| int | aw_next_pulse_off_cache |
| the position (relative to start of the second block) at which pulses should start to be positioned, serves as a cache for pitch-adaptive window pulses between blocks More... | |
| int | frame_cntr |
| current frame index [0 - 0xFFFE]; is only used for comfort noise in pRNG() More... | |
| int | nb_superframes |
| number of superframes in current packet More... | |
| float | gain_pred_err [6] |
| cache for gain prediction More... | |
| float | excitation_history [MAX_SIGNAL_HISTORY] |
| cache of the signal of More... | |
| float | synth_history [MAX_LSPS] |
| see excitation_history More... | |
Postfilter values | |
Variables used for postfilter implementation, mostly history for smoothing and so on, and context variables for FFT/iFFT. | |
| AVTXContext * | rdft |
| AVTXContext * | irdft |
| contexts for FFT-calculation in the More... | |
| av_tx_fn | rdft_fn |
| av_tx_fn | irdft_fn |
| postfilter (for denoise filter) More... | |
| AVTXContext * | dct |
| AVTXContext * | dst |
| contexts for phase shift (in Hilbert More... | |
| av_tx_fn | dct_fn |
| av_tx_fn | dst_fn |
| transform, part of postfilter) More... | |
| float | sin [511] |
| float | cos [511] |
| 8-bit cosine/sine windows over [-pi,pi] range More... | |
| float | postfilter_agc |
| gain control memory, used in adaptive_gain_control() More... | |
| float | dcf_mem [2] |
| DC filter history. More... | |
| float | zero_exc_pf [MAX_SIGNAL_HISTORY+MAX_SFRAMESIZE] |
| zero filter output (i.e. excitation) by postfilter More... | |
| float | denoise_filter_cache [MAX_FRAMESIZE] |
| int | denoise_filter_cache_size |
| samples in denoise_filter_cache More... | |
| float | tilted_lpcs_pf [0x82] |
| aligned buffer for LPC tilting More... | |
| float | denoise_coeffs_pf [0x82] |
| aligned buffer for denoise coefficients More... | |
| float | synth_filter_out_buf [0x80+MAX_LSPS_ALIGN16] |
| aligned buffer for postfilter speech synthesis More... | |
WMA Voice decoding context.
Definition at line 132 of file wmavoice.c.
| GetBitContext WMAVoiceContext::gb |
packet bitreader.
During decoder init, it contains the extradata from the demuxer. During decoding, it contains packet data.
Definition at line 137 of file wmavoice.c.
| int8_t WMAVoiceContext::vbm_tree[25] |
converts VLC codes to frame type
Definition at line 141 of file wmavoice.c.
| int WMAVoiceContext::spillover_bitsize |
number of bits used to specify spillover_nbits in the packet header = ceil(log2(ctx->block_align << 3))
Definition at line 143 of file wmavoice.c.
| int WMAVoiceContext::history_nsamples |
number of samples in history for signal prediction (through ACB)
Definition at line 146 of file wmavoice.c.
| int WMAVoiceContext::do_apf |
whether to apply the averaged projection filter (APF)
Definition at line 150 of file wmavoice.c.
| int WMAVoiceContext::denoise_strength |
strength of denoising in Wiener filter [0-11]
Definition at line 152 of file wmavoice.c.
| int WMAVoiceContext::denoise_tilt_corr |
Whether to apply tilt correction to the Wiener filter coefficients (postfilter)
Definition at line 154 of file wmavoice.c.
| int WMAVoiceContext::dc_level |
Predicted amount of DC noise, based on which a DC removal filter is used.
Definition at line 156 of file wmavoice.c.
| int WMAVoiceContext::lsps |
number of LSPs per frame [10 or 16]
Definition at line 159 of file wmavoice.c.
| int WMAVoiceContext::lsp_q_mode |
defines quantizer defaults [0, 1]
Definition at line 160 of file wmavoice.c.
| int WMAVoiceContext::lsp_def_mode |
defines different sets of LSP defaults [0, 1]
Definition at line 161 of file wmavoice.c.
| int WMAVoiceContext::min_pitch_val |
base value for pitch parsing code
Definition at line 164 of file wmavoice.c.
| int WMAVoiceContext::max_pitch_val |
max value + 1 for pitch parsing
Definition at line 165 of file wmavoice.c.
| int WMAVoiceContext::pitch_nbits |
number of bits used to specify the pitch value in the frame header
Definition at line 166 of file wmavoice.c.
| int WMAVoiceContext::block_pitch_nbits |
number of bits used to specify the first block's pitch value
Definition at line 168 of file wmavoice.c.
| int WMAVoiceContext::block_pitch_range |
range of the block pitch
Definition at line 170 of file wmavoice.c.
| int WMAVoiceContext::block_delta_pitch_nbits |
number of bits used to specify the delta pitch between this and the last block's pitch value, used in all but first block
Definition at line 171 of file wmavoice.c.
| int WMAVoiceContext::block_delta_pitch_hrange |
1/2 range of the delta (full range is from -this to +this-1)
Definition at line 175 of file wmavoice.c.
| uint16_t WMAVoiceContext::block_conv_table[4] |
boundaries for block pitch unit/scale conversion
Definition at line 177 of file wmavoice.c.
| int WMAVoiceContext::spillover_nbits |
number of bits of the previous packet's last superframe preceding this packet's first full superframe (useful for re-synchronization also)
Definition at line 189 of file wmavoice.c.
| int WMAVoiceContext::has_residual_lsps |
if set, superframes contain one set of LSPs that cover all frames, encoded as independent and residual LSPs; if not set, each frame contains its own, fully independent, LSPs
Definition at line 193 of file wmavoice.c.
| int WMAVoiceContext::skip_bits_next |
number of bits to skip at the next call to wmavoice_decode_packet() (since they're part of the previous superframe)
Definition at line 198 of file wmavoice.c.
| uint8_t WMAVoiceContext::sframe_cache[SFRAME_CACHE_MAXSIZE+AV_INPUT_BUFFER_PADDING_SIZE] |
cache for superframe data split over multiple packets
Definition at line 202 of file wmavoice.c.
| int WMAVoiceContext::sframe_cache_size |
set to >0 if we have data from an (incomplete) superframe from a previous packet that spilled over in the current packet; specifies the amount of bits in sframe_cache
Definition at line 205 of file wmavoice.c.
| PutBitContext WMAVoiceContext::pb |
bitstream writer for sframe_cache
Definition at line 210 of file wmavoice.c.
LSPs of the last frame of the previous superframe.
Definition at line 221 of file wmavoice.c.
| int WMAVoiceContext::last_pitch_val |
pitch value of the previous frame
Definition at line 223 of file wmavoice.c.
| int WMAVoiceContext::last_acb_type |
frame type [0-2] of the previous frame
Definition at line 224 of file wmavoice.c.
| int WMAVoiceContext::pitch_diff_sh16 |
((cur_pitch_val - last_pitch_val) << 16) / MAX_FRAMESIZE
Definition at line 225 of file wmavoice.c.
| float WMAVoiceContext::silence_gain |
set for use in blocks if ACB_TYPE_NONE
Definition at line 227 of file wmavoice.c.
| int WMAVoiceContext::aw_idx_is_ext |
whether the AW index was encoded in 8 bits (instead of 6)
Definition at line 229 of file wmavoice.c.
| int WMAVoiceContext::aw_pulse_range |
the range over which aw_pulse_set1() can apply the pulse, relative to the value in aw_first_pulse_off.
The exact position of the first AW-pulse is within [pulse_off, pulse_off + this], and depends on bitstream values; [16 or 24]
Definition at line 231 of file wmavoice.c.
| int WMAVoiceContext::aw_n_pulses[2] |
number of AW-pulses in each block; note that this number can be negative (in which case it basically means "zero")
Definition at line 237 of file wmavoice.c.
| int WMAVoiceContext::aw_first_pulse_off[2] |
index of first sample to which to apply AW-pulses, or -0xff if unset
Definition at line 240 of file wmavoice.c.
| int WMAVoiceContext::aw_next_pulse_off_cache |
the position (relative to start of the second block) at which pulses should start to be positioned, serves as a cache for pitch-adaptive window pulses between blocks
Definition at line 242 of file wmavoice.c.
| int WMAVoiceContext::frame_cntr |
current frame index [0 - 0xFFFE]; is only used for comfort noise in pRNG()
Definition at line 248 of file wmavoice.c.
| int WMAVoiceContext::nb_superframes |
number of superframes in current packet
Definition at line 250 of file wmavoice.c.
| float WMAVoiceContext::gain_pred_err[6] |
cache for gain prediction
Definition at line 251 of file wmavoice.c.
| float WMAVoiceContext::excitation_history[MAX_SIGNAL_HISTORY] |
cache of the signal of
previous superframes, used as a history for signal generation
Definition at line 252 of file wmavoice.c.
Definition at line 255 of file wmavoice.c.
| AVTXContext* WMAVoiceContext::rdft |
Definition at line 265 of file wmavoice.c.
| AVTXContext * WMAVoiceContext::irdft |
contexts for FFT-calculation in the
Definition at line 265 of file wmavoice.c.
| av_tx_fn WMAVoiceContext::rdft_fn |
Definition at line 266 of file wmavoice.c.
| av_tx_fn WMAVoiceContext::irdft_fn |
postfilter (for denoise filter)
Definition at line 266 of file wmavoice.c.
| AVTXContext* WMAVoiceContext::dct |
Definition at line 267 of file wmavoice.c.
| AVTXContext * WMAVoiceContext::dst |
contexts for phase shift (in Hilbert
Definition at line 267 of file wmavoice.c.
| av_tx_fn WMAVoiceContext::dct_fn |
Definition at line 268 of file wmavoice.c.
| av_tx_fn WMAVoiceContext::dst_fn |
transform, part of postfilter)
Definition at line 268 of file wmavoice.c.
| float WMAVoiceContext::sin[511] |
Definition at line 269 of file wmavoice.c.
| float WMAVoiceContext::cos[511] |
8-bit cosine/sine windows over [-pi,pi] range
Definition at line 269 of file wmavoice.c.
| float WMAVoiceContext::postfilter_agc |
gain control memory, used in adaptive_gain_control()
Definition at line 271 of file wmavoice.c.
| float WMAVoiceContext::dcf_mem[2] |
DC filter history.
Definition at line 273 of file wmavoice.c.
| float WMAVoiceContext::zero_exc_pf[MAX_SIGNAL_HISTORY+MAX_SFRAMESIZE] |
zero filter output (i.e. excitation) by postfilter
Definition at line 275 of file wmavoice.c.
| float WMAVoiceContext::denoise_filter_cache[MAX_FRAMESIZE] |
Definition at line 276 of file wmavoice.c.
| int WMAVoiceContext::denoise_filter_cache_size |
samples in denoise_filter_cache
Definition at line 277 of file wmavoice.c.
| float WMAVoiceContext::tilted_lpcs_pf[0x82] |
aligned buffer for LPC tilting
Definition at line 279 of file wmavoice.c.
| float WMAVoiceContext::denoise_coeffs_pf[0x82] |
aligned buffer for denoise coefficients
Definition at line 281 of file wmavoice.c.
| float WMAVoiceContext::synth_filter_out_buf[0x80+MAX_LSPS_ALIGN16] |
aligned buffer for postfilter speech synthesis
Definition at line 283 of file wmavoice.c.
1.8.17