annotate tremor/os_types.h @ 28815:ce24a9f06ccb

The 8 bit per sample formats are unsigned on Windows, fixes playback with -af format=s8 for -ao dsound and -ao win32. Patch by Zhou Zongyi [zhouzongyi (at) pset suntec net]
author reimar
date Fri, 06 Mar 2009 13:22:48 +0000
parents e61b6352f32f
children e83eef58b30a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14280
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
1 /********************************************************************
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
2 * *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
3 * THIS FILE IS PART OF THE OggVorbis 'TREMOR' CODEC SOURCE CODE. *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
4 * *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
5 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
6 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
7 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
8 * *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
9 * THE OggVorbis 'TREMOR' SOURCE CODE IS (C) COPYRIGHT 1994-2002 *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
10 * BY THE Xiph.Org FOUNDATION http://www.xiph.org/ *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
11 * *
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
12 ********************************************************************
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
13
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
14 function: #ifdef jail to whip a few platforms into the UNIX ideal.
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
15
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
16 ********************************************************************/
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
17 #ifndef _OS_TYPES_H
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
18 #define _OS_TYPES_H
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
19
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
20 #ifdef _LOW_ACCURACY_
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
21 # define X(n) (((((n)>>22)+1)>>1) - ((((n)>>22)+1)>>9))
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
22 # define LOOKUP_T const unsigned char
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
23 #else
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
24 # define X(n) (n)
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
25 # define LOOKUP_T const ogg_int32_t
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
26 #endif
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
27
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
28 /* make it easy on the folks that want to compile the libs with a
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
29 different malloc than stdlib */
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
30 #define _ogg_malloc malloc
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
31 #define _ogg_calloc calloc
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
32 #define _ogg_realloc realloc
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
33 #define _ogg_free free
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
34
26866
691c8dd10460 cosmetics: Fix pointless weird indentation.
diego
parents: 15247
diff changeset
35 #include <inttypes.h>
691c8dd10460 cosmetics: Fix pointless weird indentation.
diego
parents: 15247
diff changeset
36 typedef int64_t ogg_int64_t;
691c8dd10460 cosmetics: Fix pointless weird indentation.
diego
parents: 15247
diff changeset
37 typedef int32_t ogg_int32_t;
691c8dd10460 cosmetics: Fix pointless weird indentation.
diego
parents: 15247
diff changeset
38 typedef int16_t ogg_int16_t;
691c8dd10460 cosmetics: Fix pointless weird indentation.
diego
parents: 15247
diff changeset
39 typedef uint32_t ogg_uint32_t;
691c8dd10460 cosmetics: Fix pointless weird indentation.
diego
parents: 15247
diff changeset
40 typedef uint16_t ogg_uint16_t;
14280
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
41
26867
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
42 #if 0
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
43
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
44 #ifdef _WIN32
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
45
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
46 # ifndef __GNUC__
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
47 /* MSVC/Borland */
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
48 typedef __int64 ogg_int64_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
49 typedef __int32 ogg_int32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
50 typedef unsigned __int32 ogg_uint32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
51 typedef __int16 ogg_int16_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
52 # else
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
53 /* Cygwin */
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
54 #include <_G_config.h>
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
55 typedef _G_int64_t ogg_int64_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
56 typedef _G_int32_t ogg_int32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
57 typedef _G_uint32_t ogg_uint32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
58 typedef _G_int16_t ogg_int16_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
59 # endif
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
60
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
61 #elif defined(__MACOS__)
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
62
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
63 # include <sys/types.h>
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
64 typedef SInt16 ogg_int16_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
65 typedef SInt32 ogg_int32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
66 typedef UInt32 ogg_uint32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
67 typedef SInt64 ogg_int64_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
68
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
69 #elif defined(__MACOSX__) /* MacOS X Framework build */
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
70
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
71 # include <sys/types.h>
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
72 typedef int16_t ogg_int16_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
73 typedef int32_t ogg_int32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
74 typedef u_int32_t ogg_uint32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
75 typedef int64_t ogg_int64_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
76
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
77 #elif defined(__BEOS__)
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
78
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
79 /* Be */
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
80 # include <inttypes.h>
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
81
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
82 #elif defined (__EMX__)
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
83
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
84 /* OS/2 GCC */
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
85 typedef short ogg_int16_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
86 typedef int ogg_int32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
87 typedef unsigned int ogg_uint32_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
88 typedef long long ogg_int64_t;
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
89
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
90 #else
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
91
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
92 # include <sys/types.h>
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
93 # include "config_types.h"
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
94
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
95 #endif
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
96
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
97 #endif /* 0 */
e61b6352f32f Instead of removing code from this imported library, place it under #if 0.
diego
parents: 26866
diff changeset
98
14280
8631a3803289 internal Tremor decoder for Ogg/Vorbis
henry
parents:
diff changeset
99 #endif /* _OS_TYPES_H */