libavcodec/shorten.c File Reference
Shorten decoder.
More...
#include <limits.h>
#include "avcodec.h"
#include "bytestream.h"
#include "get_bits.h"
#include "golomb.h"
Go to the source code of this file.
|
Data Structures |
struct | ShortenContext |
Defines |
#define | MAX_CHANNELS 8 |
#define | MAX_BLOCKSIZE 65535 |
#define | OUT_BUFFER_SIZE 16384 |
#define | ULONGSIZE 2 |
#define | WAVE_FORMAT_PCM 0x0001 |
#define | DEFAULT_BLOCK_SIZE 256 |
#define | TYPESIZE 4 |
#define | CHANSIZE 0 |
#define | LPCQSIZE 2 |
#define | ENERGYSIZE 3 |
#define | BITSHIFTSIZE 2 |
#define | TYPE_S16HL 3 |
#define | TYPE_S16LH 5 |
#define | NWRAP 3 |
#define | NSKIPSIZE 1 |
#define | LPCQUANT 5 |
#define | V2LPCQOFFSET (1 << LPCQUANT) |
#define | FNSIZE 2 |
#define | FN_DIFF0 0 |
#define | FN_DIFF1 1 |
#define | FN_DIFF2 2 |
#define | FN_DIFF3 3 |
#define | FN_QUIT 4 |
#define | FN_BLOCKSIZE 5 |
#define | FN_BITSHIFT 6 |
#define | FN_QLPC 7 |
#define | FN_ZERO 8 |
#define | FN_VERBATIM 9 |
#define | VERBATIM_CKSIZE_SIZE 5 |
#define | VERBATIM_BYTE_SIZE 8 |
#define | CANONICAL_HEADER_SIZE 44 |
Functions |
static av_cold int | shorten_decode_init (AVCodecContext *avctx) |
static int | allocate_buffers (ShortenContext *s) |
static unsigned int | get_uint (ShortenContext *s, int k) |
static void | fix_bitshift (ShortenContext *s, int32_t *buffer) |
static int | init_offset (ShortenContext *s) |
static int | decode_wave_header (AVCodecContext *avctx, const uint8_t *header, int header_size) |
static void | interleave_buffer (int16_t *samples, int nchan, int blocksize, int32_t **buffer) |
static int | decode_subframe_lpc (ShortenContext *s, int command, int channel, int residual_size, int32_t coffset) |
static int | read_header (ShortenContext *s) |
static int | shorten_decode_frame (AVCodecContext *avctx, void *data, int *got_frame_ptr, AVPacket *avpkt) |
static av_cold int | shorten_decode_close (AVCodecContext *avctx) |
Variables |
static const uint8_t | is_audio_command [10] = { 1, 1, 1, 1, 0, 0, 0, 1, 1, 0 } |
| indicates if the FN_* command is audio or non-audio
|
static const int | fixed_coeffs [3][3] |
AVCodec | ff_shorten_decoder |
Detailed Description
Shorten decoder.
- Author:
- Jeff Muizelaar
Definition in file shorten.c.
Define Documentation
#define CANONICAL_HEADER_SIZE 44 |
#define DEFAULT_BLOCK_SIZE 256 |
#define MAX_BLOCKSIZE 65535 |
#define OUT_BUFFER_SIZE 16384 |
#define V2LPCQOFFSET (1 << LPCQUANT) |
#define VERBATIM_BYTE_SIZE 8 |
#define VERBATIM_CKSIZE_SIZE 5 |
#define WAVE_FORMAT_PCM 0x0001 |
Function Documentation
static int decode_subframe_lpc |
( |
ShortenContext * |
s, |
|
|
int |
command, |
|
|
int |
channel, |
|
|
int |
residual_size, |
|
|
int32_t |
coffset | |
|
) |
| | [static] |
static int decode_wave_header |
( |
AVCodecContext * |
avctx, |
|
|
const uint8_t * |
header, |
|
|
int |
header_size | |
|
) |
| | [static] |
static void fix_bitshift |
( |
ShortenContext * |
s, |
|
|
int32_t * |
buffer | |
|
) |
| | [static] |
static unsigned int get_uint |
( |
ShortenContext * |
s, |
|
|
int |
k | |
|
) |
| | [inline, static] |
static void interleave_buffer |
( |
int16_t * |
samples, |
|
|
int |
nchan, |
|
|
int |
blocksize, |
|
|
int32_t ** |
buffer | |
|
) |
| | [static] |
static av_cold int shorten_decode_close |
( |
AVCodecContext * |
avctx |
) |
[static] |
static int shorten_decode_frame |
( |
AVCodecContext * |
avctx, |
|
|
void * |
data, |
|
|
int * |
got_frame_ptr, |
|
|
AVPacket * |
avpkt | |
|
) |
| | [static] |
static av_cold int shorten_decode_init |
( |
AVCodecContext * |
avctx |
) |
[static] |
Variable Documentation