static cvar_t cl_capturevideo_ogg_theora_sharpness = {CF_CLIENT | CF_ARCHIVE, "cl_capturevideo_ogg_theora_sharpness", "0", "sharpness (0 to 2); lower is sharper"};
static cvar_t cl_capturevideo_ogg_vorbis_quality = {CF_CLIENT | CF_ARCHIVE, "cl_capturevideo_ogg_vorbis_quality", "3", "audio quality (-1 to 10); higher is better"};
-// ogg.h stuff
-typedef int16_t ogg_int16_t;
-typedef uint16_t ogg_uint16_t;
-typedef int32_t ogg_int32_t;
-typedef uint32_t ogg_uint32_t;
-typedef int64_t ogg_int64_t;
-
typedef struct {
long endbyte;
int endbit;
int *lacing_vals; /* The values that will go to the segment table */
- ogg_int64_t *granule_vals; /* granulepos values for headers. Not compact
+ int64_t *granule_vals; /* granulepos values for headers. Not compact
this way, but it is simple coupled to the
lacing fifo */
long lacing_storage;
of a logical bitstream */
long serialno;
long pageno;
- ogg_int64_t packetno; /* sequence number for decode; the framing
+ int64_t packetno; /* sequence number for decode; the framing
knows where there's a hole in the data,
but we need coupling so that the codec
(which is in a seperate abstraction
layer) also knows about the gap */
- ogg_int64_t granulepos;
+ int64_t granulepos;
} ogg_stream_state;
long b_o_s;
long e_o_s;
- ogg_int64_t granulepos;
+ int64_t granulepos;
- ogg_int64_t packetno; /* sequence number for decode; the framing
+ int64_t packetno; /* sequence number for decode; the framing
knows where there's a hole in the data,
but we need coupling so that the codec
(which is in a seperate abstraction
static int (*qogg_stream_init) (ogg_stream_state *os,int serialno);
static int (*qogg_stream_clear) (ogg_stream_state *os);
-static ogg_int64_t (*qogg_page_granulepos) (ogg_page *og);
+static int64_t (*qogg_page_granulepos) (ogg_page *og);
// end of ogg.h stuff
long nW;
long centerW;
- ogg_int64_t granulepos;
- ogg_int64_t sequence;
+ int64_t granulepos;
+ int64_t sequence;
- ogg_int64_t glue_bits;
- ogg_int64_t time_bits;
- ogg_int64_t floor_bits;
- ogg_int64_t res_bits;
+ int64_t glue_bits;
+ int64_t time_bits;
+ int64_t floor_bits;
+ int64_t res_bits;
void *backend_state;
} vorbis_dsp_state;
int mode;
int eofflag;
- ogg_int64_t granulepos;
- ogg_int64_t sequence;
+ int64_t granulepos;
+ int64_t sequence;
vorbis_dsp_state *vd; /* For read-only access of configuration */
/* local storage to avoid remallocing; it's up to the mapping to
static int (*qvorbis_block_clear) (vorbis_block *vb);
static void (*qvorbis_dsp_clear) (vorbis_dsp_state *v);
static double (*qvorbis_granule_time) (vorbis_dsp_state *v,
- ogg_int64_t granulepos);
+ int64_t granulepos);
/* Vorbis PRIMITIVES: analysis/DSP layer ****************************/
* other paramters and good default settings for the encoder parameters.
*/
typedef struct {
- ogg_uint32_t width; /**< encoded frame width */
- ogg_uint32_t height; /**< encoded frame height */
- ogg_uint32_t frame_width; /**< display frame width */
- ogg_uint32_t frame_height; /**< display frame height */
- ogg_uint32_t offset_x; /**< horizontal offset of the displayed frame */
- ogg_uint32_t offset_y; /**< vertical offset of the displayed frame */
- ogg_uint32_t fps_numerator; /**< frame rate numerator **/
- ogg_uint32_t fps_denominator; /**< frame rate denominator **/
- ogg_uint32_t aspect_numerator; /**< pixel aspect ratio numerator */
- ogg_uint32_t aspect_denominator; /**< pixel aspect ratio denominator */
+ uint32_t width; /**< encoded frame width */
+ uint32_t height; /**< encoded frame height */
+ uint32_t frame_width; /**< display frame width */
+ uint32_t frame_height; /**< display frame height */
+ uint32_t offset_x; /**< horizontal offset of the displayed frame */
+ uint32_t offset_y; /**< vertical offset of the displayed frame */
+ uint32_t fps_numerator; /**< frame rate numerator **/
+ uint32_t fps_denominator; /**< frame rate denominator **/
+ uint32_t aspect_numerator; /**< pixel aspect ratio numerator */
+ uint32_t aspect_denominator; /**< pixel aspect ratio denominator */
theora_colorspace colorspace; /**< colorspace */
int target_bitrate; /**< nominal bitrate in bits per second */
int quality; /**< Nominal quality setting, 0-63 */
/* encode only */
int dropframes_p;
int keyframe_auto_p;
- ogg_uint32_t keyframe_frequency;
- ogg_uint32_t keyframe_frequency_force; /* also used for decode init to
+ uint32_t keyframe_frequency;
+ uint32_t keyframe_frequency_force; /* also used for decode init to
get granpos shift correct */
- ogg_uint32_t keyframe_data_target_bitrate;
- ogg_int32_t keyframe_auto_threshold;
- ogg_uint32_t keyframe_mindistance;
- ogg_int32_t noise_sensitivity;
- ogg_int32_t sharpness;
+ uint32_t keyframe_data_target_bitrate;
+ int32_t keyframe_auto_threshold;
+ uint32_t keyframe_mindistance;
+ int32_t noise_sensitivity;
+ int32_t sharpness;
theora_pixelformat pixelformat; /**< chroma subsampling mode to expect */
*/
typedef struct{
theora_info *i;
- ogg_int64_t granulepos;
+ int64_t granulepos;
void *internal_encode;
void *internal_decode;
static void (*qtheora_clear) (theora_state *t);
static void (*qtheora_comment_init) (theora_comment *tc);
static void (*qtheora_comment_clear) (theora_comment *tc);
-static double (*qtheora_granule_time) (theora_state *th,ogg_int64_t granulepos);
+static double (*qtheora_granule_time) (theora_state *th,int64_t granulepos);
static int (*qtheora_control) (theora_state *th,int req,void *buf,size_t buf_sz);
// end of theora.h stuff
=================================================================
*/
-#ifdef _MSC_VER
-typedef __int64 ogg_int64_t;
-#else
-typedef long long ogg_int64_t;
-#endif
-
typedef struct
{
size_t (*read_func) (void *ptr, size_t size, size_t nmemb, void *datasource);
- int (*seek_func) (void *datasource, ogg_int64_t offset, int whence);
+ int (*seek_func) (void *datasource, int64_t offset, int whence);
int (*close_func) (void *datasource);
long (*tell_func) (void *datasource);
} ov_callbacks;
long body_fill;
long body_returned;
int *lacing_vals;
- ogg_int64_t *granule_vals;
+ int64_t *granule_vals;
long lacing_storage;
long lacing_fill;
long lacing_packet;
int b_o_s;
long serialno;
long pageno;
- ogg_int64_t packetno;
- ogg_int64_t granulepos;
+ int64_t packetno;
+ int64_t granulepos;
} ogg_stream_state;
typedef struct
long W;
long nW;
long centerW;
- ogg_int64_t granulepos;
- ogg_int64_t sequence;
- ogg_int64_t glue_bits;
- ogg_int64_t time_bits;
- ogg_int64_t floor_bits;
- ogg_int64_t res_bits;
+ int64_t granulepos;
+ int64_t sequence;
+ int64_t glue_bits;
+ int64_t time_bits;
+ int64_t floor_bits;
+ int64_t res_bits;
void *backend_state;
} vorbis_dsp_state;
int pcmend;
int mode;
int eofflag;
- ogg_int64_t granulepos;
- ogg_int64_t sequence;
+ int64_t granulepos;
+ int64_t sequence;
vorbis_dsp_state *vd;
void *localstore;
long localtop;
{
void *datasource;
int seekable;
- ogg_int64_t offset;
- ogg_int64_t end;
+ int64_t offset;
+ int64_t end;
ogg_sync_state oy;
int links;
- ogg_int64_t *offsets;
- ogg_int64_t *dataoffsets;
+ int64_t *offsets;
+ int64_t *dataoffsets;
long *serialnos;
- ogg_int64_t *pcmlengths;
+ int64_t *pcmlengths;
vorbis_info *vi;
vorbis_comment *vc;
- ogg_int64_t pcm_offset;
+ int64_t pcm_offset;
int ready_state;
long current_serialno;
int current_link;
static int (*qov_open_callbacks) (void *datasource, OggVorbis_File *vf,
char *initial, long ibytes,
ov_callbacks callbacks);
-static int (*qov_pcm_seek) (OggVorbis_File *vf,ogg_int64_t pos);
-static ogg_int64_t (*qov_pcm_total) (OggVorbis_File *vf,int i);
+static int (*qov_pcm_seek) (OggVorbis_File *vf,int64_t pos);
+static int64_t (*qov_pcm_total) (OggVorbis_File *vf,int i);
static long (*qov_read) (OggVorbis_File *vf,char *buffer,int length,
int bigendianp,int word,int sgned,int *bitstream);
typedef struct
{
unsigned char *buffer;
- ogg_int64_t ind, buffsize;
+ int64_t ind, buffsize;
} ov_decode_t;
static size_t ovcb_read (void *ptr, size_t size, size_t nb, void *datasource)
return len / size;
}
-static int ovcb_seek (void *datasource, ogg_int64_t offset, int whence)
+static int ovcb_seek (void *datasource, int64_t offset, int whence)
{
ov_decode_t *ov_decode = (ov_decode_t*)datasource;
// we expect to decode forward from here so this will be our new buffer start
per_ch->buffer_firstframe = firstsampleframe;
per_ch->buffer_numframes = 0;
- ret = qov_pcm_seek(&per_ch->vf, (ogg_int64_t)firstsampleframe);
+ ret = qov_pcm_seek(&per_ch->vf, (int64_t)firstsampleframe);
if (ret != 0)
{
// LadyHavoc: we can't Con_Printf here, not thread safe...
{
// small sounds are entirely loaded and use the PCM fetcher
char *buff;
- ogg_int64_t len;
- ogg_int64_t done;
+ int64_t len;
+ int64_t done;
int bs;
long ret;
if (developer_loading.integer >= 2)