diff options
author | Mohamed Tarek <mt@rockbox.org> | 2009-07-18 00:29:19 +0000 |
---|---|---|
committer | Mohamed Tarek <mt@rockbox.org> | 2009-07-18 00:29:19 +0000 |
commit | 6f4294219e2ec8f0190a84020aa67dfe969ebb66 (patch) | |
tree | edf778074a46caa7eaf27a36b0eb2b706855c967 /apps/codecs/librm/rm.h | |
parent | 6539b535ad08a13d654db3185d78a8f86a75f6a6 (diff) | |
download | rockbox-6f4294219e2ec8f0190a84020aa67dfe969ebb66.tar.gz rockbox-6f4294219e2ec8f0190a84020aa67dfe969ebb66.zip |
Generic codec-extradata parsing, in preparation for addition of AAC/RM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21941 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/librm/rm.h')
-rw-r--r-- | apps/codecs/librm/rm.h | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/apps/codecs/librm/rm.h b/apps/codecs/librm/rm.h index a0c386e824..ee72c1fc04 100644 --- a/apps/codecs/librm/rm.h +++ b/apps/codecs/librm/rm.h | |||
@@ -24,7 +24,9 @@ | |||
24 | #include <stdio.h> | 24 | #include <stdio.h> |
25 | #include <inttypes.h> | 25 | #include <inttypes.h> |
26 | 26 | ||
27 | enum codecs{cook}; | 27 | #define MAX_EXTRADATA_SIZE 16 |
28 | |||
29 | enum codecs{cook, aac}; | ||
28 | typedef struct rm_packet | 30 | typedef struct rm_packet |
29 | { | 31 | { |
30 | uint8_t *frames[100]; /* Pointers to ordered audio frames in buffer */ | 32 | uint8_t *frames[100]; /* Pointers to ordered audio frames in buffer */ |
@@ -62,20 +64,14 @@ typedef struct rm_context | |||
62 | uint16_t block_align; | 64 | uint16_t block_align; |
63 | uint32_t nb_packets; | 65 | uint32_t nb_packets; |
64 | int frame_number; | 66 | int frame_number; |
65 | uint32_t extradata_size; | ||
66 | uint16_t sample_rate; | 67 | uint16_t sample_rate; |
67 | uint16_t nb_channels; | 68 | uint16_t nb_channels; |
68 | uint32_t bit_rate; | 69 | uint32_t bit_rate; |
69 | uint16_t flags; | 70 | uint16_t flags; |
70 | 71 | ||
71 | /*cook extradata*/ | 72 | /*codec extradata*/ |
72 | uint32_t cook_version; | 73 | uint32_t extradata_size; |
73 | uint16_t samples_pf_pc; /* samples per frame per channel */ | 74 | uint8_t codec_extradata[MAX_EXTRADATA_SIZE]; |
74 | uint16_t nb_subbands; /* number of subbands in the frequency domain */ | ||
75 | /* extra 8 bytes for joint-stereo data */ | ||
76 | uint32_t unused; | ||
77 | uint16_t js_subband_start; /* joint stereo subband start */ | ||
78 | uint16_t js_vlc_bits; | ||
79 | 75 | ||
80 | } RMContext; | 76 | } RMContext; |
81 | 77 | ||