context->sfinfo.format = SF_FORMAT_RAW | SF_FORMAT_ALAW;
context->sfinfo.channels = 1;
context->sfinfo.samplerate = 8000;
+ } else if (!strcmp(ext, "adpcm")) {
+ context->sfinfo.format = SF_FORMAT_WAV | SF_FORMAT_IMA_ADPCM;
+ context->sfinfo.samplerate = 8000;
}
if ((mode & SFM_WRITE) && sf_format_check(&context->sfinfo) == 0) {
char buffer[128];
int format, major_count, subtype_count, m, s;
int len, x, skip;
- char *extras[] = { "r8", "r16", "r24", "r32", "gsm", "ul", "al", NULL };
+ char *extras[] = { "r8", "r16", "r24", "r32", "gsm", "ul", "al", "adpcm", NULL };
int exlen = (sizeof(extras) / sizeof(extras[0]));
buffer[0] = 0;