annotate ima4.h @ 3661:4ecbbf74e532

Modified aspect reference, uses default PAL values... Difference to NTSC should be minimal enough so that no checking of videomode is necessary.
author mswitch
date Sat, 22 Dec 2001 16:20:32 +0000
parents 311676805f20
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2399
35c767f8fea4 initial
alex
parents:
diff changeset
1 #ifndef QUICKTIME_IMA4_H
35c767f8fea4 initial
alex
parents:
diff changeset
2 #define QUICKTIME_IMA4_H
35c767f8fea4 initial
alex
parents:
diff changeset
3
35c767f8fea4 initial
alex
parents:
diff changeset
4 //#include "quicktime.h"
2420
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
5 //#include "inttypes.h"
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
6
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
7 /* Known by divine revelation */
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
8
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
9 #define IMA4_BLOCK_SIZE 0x22
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
10 #define IMA4_SAMPLES_PER_BLOCK 0x40
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
11
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
12 // in: out buffer, in buffer (IMA4_BLOCK_SIZE bytes), outbuf max size
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
13 // return: number of samples decoded
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
14 int ima4_decode_block(unsigned short *output, unsigned char *input, int maxlen);
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
15
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
16 #if 0
2399
35c767f8fea4 initial
alex
parents:
diff changeset
17
35c767f8fea4 initial
alex
parents:
diff changeset
18 typedef struct
35c767f8fea4 initial
alex
parents:
diff changeset
19 {
35c767f8fea4 initial
alex
parents:
diff changeset
20 /* During decoding the work_buffer contains the most recently read chunk. */
35c767f8fea4 initial
alex
parents:
diff changeset
21 /* During encoding the work_buffer contains interlaced overflow samples */
35c767f8fea4 initial
alex
parents:
diff changeset
22 /* from the last chunk written. */
35c767f8fea4 initial
alex
parents:
diff changeset
23 int16_t *work_buffer;
35c767f8fea4 initial
alex
parents:
diff changeset
24 unsigned char *read_buffer; /* Temporary buffer for drive reads. */
35c767f8fea4 initial
alex
parents:
diff changeset
25
35c767f8fea4 initial
alex
parents:
diff changeset
26 /* Starting information for all channels during encoding. */
35c767f8fea4 initial
alex
parents:
diff changeset
27 int *last_samples, *last_indexes;
35c767f8fea4 initial
alex
parents:
diff changeset
28 long chunk; /* Number of chunk in work buffer */
35c767f8fea4 initial
alex
parents:
diff changeset
29 int buffer_channel; /* Channel of work buffer */
35c767f8fea4 initial
alex
parents:
diff changeset
30
35c767f8fea4 initial
alex
parents:
diff changeset
31 /* Number of samples in largest chunk read. */
35c767f8fea4 initial
alex
parents:
diff changeset
32 /* Number of samples plus overflow in largest chunk write, interlaced. */
35c767f8fea4 initial
alex
parents:
diff changeset
33 long work_size;
35c767f8fea4 initial
alex
parents:
diff changeset
34 long work_overflow; /* Number of overflow samples from the last chunk written. */
35c767f8fea4 initial
alex
parents:
diff changeset
35 long read_size; /* Size of read buffer. */
35c767f8fea4 initial
alex
parents:
diff changeset
36 } quicktime_ima4_codec_t;
35c767f8fea4 initial
alex
parents:
diff changeset
37
2420
311676805f20 ima4 mov audio support
arpi
parents: 2399
diff changeset
38 #endif
2399
35c767f8fea4 initial
alex
parents:
diff changeset
39
35c767f8fea4 initial
alex
parents:
diff changeset
40 #endif