Mercurial > libavcodec.hg
comparison audioconvert.c @ 7612:1302ec81afc0 libavcodec
Add SAMPLE_FMT_DBL.
author | pross |
---|---|
date | Tue, 19 Aug 2008 10:36:30 +0000 |
parents | 283eeda62184 |
children | 8d5e06d2eed8 |
comparison
equal
deleted
inserted
replaced
7611:a909361cdfc4 | 7612:1302ec81afc0 |
---|---|
37 static const SampleFmtInfo sample_fmt_info[SAMPLE_FMT_NB] = { | 37 static const SampleFmtInfo sample_fmt_info[SAMPLE_FMT_NB] = { |
38 [SAMPLE_FMT_U8] = { .name = "u8", .bits = 8 }, | 38 [SAMPLE_FMT_U8] = { .name = "u8", .bits = 8 }, |
39 [SAMPLE_FMT_S16] = { .name = "s16", .bits = 16 }, | 39 [SAMPLE_FMT_S16] = { .name = "s16", .bits = 16 }, |
40 [SAMPLE_FMT_S24] = { .name = "s24", .bits = 24 }, | 40 [SAMPLE_FMT_S24] = { .name = "s24", .bits = 24 }, |
41 [SAMPLE_FMT_S32] = { .name = "s32", .bits = 32 }, | 41 [SAMPLE_FMT_S32] = { .name = "s32", .bits = 32 }, |
42 [SAMPLE_FMT_FLT] = { .name = "flt", .bits = 32 } | 42 [SAMPLE_FMT_FLT] = { .name = "flt", .bits = 32 }, |
43 [SAMPLE_FMT_DBL] = { .name = "dbl", .bits = 64 }, | |
43 }; | 44 }; |
44 | 45 |
45 const char *avcodec_get_sample_fmt_name(int sample_fmt) | 46 const char *avcodec_get_sample_fmt_name(int sample_fmt) |
46 { | 47 { |
47 if (sample_fmt < 0 || sample_fmt >= SAMPLE_FMT_NB) | 48 if (sample_fmt < 0 || sample_fmt >= SAMPLE_FMT_NB) |
125 | 126 |
126 CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_U8 , *(uint8_t*)pi) | 127 CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_U8 , *(uint8_t*)pi) |
127 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_U8 , (*(uint8_t*)pi - 0x80)<<8) | 128 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_U8 , (*(uint8_t*)pi - 0x80)<<8) |
128 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_U8 , (*(uint8_t*)pi - 0x80)<<24) | 129 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_U8 , (*(uint8_t*)pi - 0x80)<<24) |
129 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_U8 , (*(uint8_t*)pi - 0x80)*(1.0 / (1<<7))) | 130 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_U8 , (*(uint8_t*)pi - 0x80)*(1.0 / (1<<7))) |
131 else CONV(SAMPLE_FMT_DBL, double , SAMPLE_FMT_U8 , (*(uint8_t*)pi - 0x80)*(1.0 / (1<<7))) | |
130 else CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_S16, (*(int16_t*)pi>>8) + 0x80) | 132 else CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_S16, (*(int16_t*)pi>>8) + 0x80) |
131 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_S16, *(int16_t*)pi) | 133 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_S16, *(int16_t*)pi) |
132 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_S16, *(int16_t*)pi<<16) | 134 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_S16, *(int16_t*)pi<<16) |
133 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_S16, *(int16_t*)pi*(1.0 / (1<<15))) | 135 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_S16, *(int16_t*)pi*(1.0 / (1<<15))) |
136 else CONV(SAMPLE_FMT_DBL, double , SAMPLE_FMT_S16, *(int16_t*)pi*(1.0 / (1<<15))) | |
134 else CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_S32, (*(int32_t*)pi>>24) + 0x80) | 137 else CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_S32, (*(int32_t*)pi>>24) + 0x80) |
135 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_S32, *(int32_t*)pi>>16) | 138 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_S32, *(int32_t*)pi>>16) |
136 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_S32, *(int32_t*)pi) | 139 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_S32, *(int32_t*)pi) |
137 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_S32, *(int32_t*)pi*(1.0 / (1<<31))) | 140 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_S32, *(int32_t*)pi*(1.0 / (1<<31))) |
141 else CONV(SAMPLE_FMT_DBL, double , SAMPLE_FMT_S32, *(int32_t*)pi*(1.0 / (1<<31))) | |
138 else CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_FLT, lrintf(*(float*)pi * (1<<7)) + 0x80) | 142 else CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_FLT, lrintf(*(float*)pi * (1<<7)) + 0x80) |
139 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_FLT, lrintf(*(float*)pi * (1<<15))) | 143 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_FLT, lrintf(*(float*)pi * (1<<15))) |
140 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_FLT, lrintf(*(float*)pi * (1<<31))) | 144 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_FLT, lrintf(*(float*)pi * (1<<31))) |
141 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_FLT, *(float*)pi) | 145 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_FLT, *(float*)pi) |
146 else CONV(SAMPLE_FMT_DBL, double , SAMPLE_FMT_FLT, *(float*)pi) | |
147 else CONV(SAMPLE_FMT_U8 , uint8_t, SAMPLE_FMT_DBL, lrint(*(double*)pi * (1<<7)) + 0x80) | |
148 else CONV(SAMPLE_FMT_S16, int16_t, SAMPLE_FMT_DBL, lrint(*(double*)pi * (1<<15))) | |
149 else CONV(SAMPLE_FMT_S32, int32_t, SAMPLE_FMT_DBL, lrint(*(double*)pi * (1<<31))) | |
150 else CONV(SAMPLE_FMT_FLT, float , SAMPLE_FMT_DBL, *(double*)pi) | |
151 else CONV(SAMPLE_FMT_DBL, double , SAMPLE_FMT_DBL, *(double*)pi) | |
142 else return -1; | 152 else return -1; |
143 } | 153 } |
144 return 0; | 154 return 0; |
145 } | 155 } |