FFmpeg
|
#include <string.h>
#include "libavutil/avassert.h"
#include "libavutil/channel_layout.h"
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "avcodec.h"
#include "codec_internal.h"
#include "decode.h"
Go to the source code of this file.
Data Structures | |
struct | VmdAudioContext |
Macros | |
#define | BLOCK_TYPE_AUDIO 1 |
#define | BLOCK_TYPE_INITIAL 2 |
#define | BLOCK_TYPE_SILENCE 3 |
Functions | |
static av_cold int | vmdaudio_decode_init (AVCodecContext *avctx) |
static void | decode_audio_s16 (int16_t *out, const uint8_t *buf, int buf_size, int channels) |
static int | vmdaudio_decode_frame (AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, AVPacket *avpkt) |
Variables | |
static const uint16_t | vmdaudio_table [128] |
const FFCodec | ff_vmdaudio_decoder |
Sierra VMD audio decoder by Vladimir "VAG" Gneushev (vagsoft at mail.ru) for more information on the Sierra VMD format, visit: http://www.pcisys.net/~melanson/codecs/
The audio decoder, expects each encoded data chunk to be prepended with the appropriate 16-byte frame information record from the VMD file. It does not require the 0x330-byte VMD file header, but it does need the audio setup parameters passed in through normal libavcodec API means.
Definition in file vmdaudio.c.
#define BLOCK_TYPE_AUDIO 1 |
Definition at line 47 of file vmdaudio.c.
#define BLOCK_TYPE_INITIAL 2 |
Definition at line 48 of file vmdaudio.c.
#define BLOCK_TYPE_SILENCE 3 |
Definition at line 49 of file vmdaudio.c.
|
static |
Definition at line 72 of file vmdaudio.c.
|
static |
Definition at line 106 of file vmdaudio.c.
Referenced by vmdaudio_decode_frame().
|
static |
Definition at line 135 of file vmdaudio.c.
|
static |
Definition at line 56 of file vmdaudio.c.
Referenced by decode_audio_s16().
const FFCodec ff_vmdaudio_decoder |
Definition at line 231 of file vmdaudio.c.