paraslash Paraslash Audio Streaming
About   News   Download   Documentation   Development

Macros | Variables
oggdec_filter.c File Reference

Paraslash's ogg vorbis decoder. More...

#include <regex.h>
#include <vorbis/vorbisfile.h>
#include "para.h"
#include "list.h"
#include "sched.h"
#include "buffer_tree.h"
#include "filter.h"
#include "error.h"
#include "string.h"

Macros

#define ENDIAN   0
 Determine byte sex. More...
 
#define OGGDEC_MAX_OUTPUT_SIZE   (96 * 1024)
 Suspend decoding if output queue size is larger than that. More...
 
#define OGGDEC_OUTPUT_CHUNK_SIZE   (32 * 1024)
 Allocate chunks of this size and produce at most one chunk of output per ->post_monitor() invocation. More...
 

Variables

const struct filter lsg_filter_cmd_com_oggdec_user_data
 

Detailed Description

Paraslash's ogg vorbis decoder.

Macro Definition Documentation

◆ ENDIAN

#define ENDIAN   0

Determine byte sex.

◆ OGGDEC_MAX_OUTPUT_SIZE

#define OGGDEC_MAX_OUTPUT_SIZE   (96 * 1024)

Suspend decoding if output queue size is larger than that.

◆ OGGDEC_OUTPUT_CHUNK_SIZE

#define OGGDEC_OUTPUT_CHUNK_SIZE   (32 * 1024)

Allocate chunks of this size and produce at most one chunk of output per ->post_monitor() invocation.

If the buffer could only be filled partially due to insufficient input being available, it is shrunk to the real output size and the resized buffer is fed into the output queue.

Variable Documentation

◆ lsg_filter_cmd_com_oggdec_user_data

const struct filter lsg_filter_cmd_com_oggdec_user_data
Initial value:
= {
.open = ogg_open,
.close = ogg_close,
.pre_monitor = ogg_pre_monitor,
.post_monitor = ogg_post_monitor,
.execute = oggdec_execute
}