FFmpeg
4.0
|
Direct Stream Transfer (DST) decoder ISO/IEC 14496-3 Part 3 Subpart 10: Technical description of lossless coding of oversampled audio. More...
#include "libavutil/avassert.h"
#include "libavutil/intreadwrite.h"
#include "internal.h"
#include "get_bits.h"
#include "avcodec.h"
#include "golomb.h"
#include "mathops.h"
#include "dsd.h"
Go to the source code of this file.
Data Structures | |
struct | ArithCoder |
struct | Table |
struct | DSTContext |
Macros | |
#define | DST_MAX_CHANNELS 6 |
#define | DST_MAX_ELEMENTS (2 * DST_MAX_CHANNELS) |
#define | DSD_FS44(sample_rate) (sample_rate * 8 / 44100) |
#define | DST_SAMPLES_PER_FRAME(sample_rate) (588 * DSD_FS44(sample_rate)) |
#define | F(x) filter[(x)][status[(x)]] |
Functions | |
static av_cold int | decode_init (AVCodecContext *avctx) |
static int | read_map (GetBitContext *gb, Table *t, unsigned int map[DST_MAX_CHANNELS], int channels) |
static av_always_inline int | get_sr_golomb_dst (GetBitContext *gb, unsigned int k) |
static void | read_uncoded_coeff (GetBitContext *gb, int *dst, unsigned int elements, int coeff_bits, int is_signed, int offset) |
static int | read_table (GetBitContext *gb, Table *t, const int8_t code_pred_coeff[3][3], int length_bits, int coeff_bits, int is_signed, int offset) |
static void | ac_init (ArithCoder *ac, GetBitContext *gb) |
static av_always_inline void | ac_get (ArithCoder *ac, GetBitContext *gb, int p, int *e) |
static uint8_t | prob_dst_x_bit (int c) |
static void | build_filter (int16_t table[DST_MAX_ELEMENTS][16][256], const Table *fsets) |
static int | decode_frame (AVCodecContext *avctx, void *data, int *got_frame_ptr, AVPacket *avpkt) |
Variables | |
static const int8_t | fsets_code_pred_coeff [3][3] |
static const int8_t | probs_code_pred_coeff [3][3] |
AVCodec | ff_dst_decoder |
Direct Stream Transfer (DST) decoder ISO/IEC 14496-3 Part 3 Subpart 10: Technical description of lossless coding of oversampled audio.
Definition in file dstdec.c.
#define DST_MAX_CHANNELS 6 |
Definition at line 37 of file dstdec.c.
Referenced by decode_frame(), and decode_init().
#define DST_MAX_ELEMENTS (2 * DST_MAX_CHANNELS) |
Definition at line 38 of file dstdec.c.
Referenced by read_map().
#define DSD_FS44 | ( | sample_rate | ) | (sample_rate * 8 / 44100) |
#define DST_SAMPLES_PER_FRAME | ( | sample_rate | ) | (588 * DSD_FS44(sample_rate)) |
Definition at line 42 of file dstdec.c.
Referenced by decode_frame().
#define F | ( | x | ) | filter[(x)][status[(x)]] |
Referenced by check_loopfilter(), decode_frame(), idct(), and loop_filter().
|
static |
|
static |
Definition at line 98 of file dstdec.c.
Referenced by decode_frame().
|
static |
Definition at line 121 of file dstdec.c.
Referenced by read_table().
|
static |
Definition at line 129 of file dstdec.c.
Referenced by read_table().
|
static |
Definition at line 139 of file dstdec.c.
Referenced by decode_frame().
|
static |
Definition at line 171 of file dstdec.c.
Referenced by decode_frame().
|
static |
Definition at line 177 of file dstdec.c.
Referenced by decode_frame().
Definition at line 198 of file dstdec.c.
Referenced by decode_frame().
Definition at line 203 of file dstdec.c.
Referenced by decode_frame().
|
static |
|
static |
Definition at line 44 of file dstdec.c.
Referenced by decode_frame().
|
static |
Definition at line 50 of file dstdec.c.
Referenced by decode_frame().
AVCodec ff_dst_decoder |