Whitespace-only cosmetics: use consistent indentation in ao_pcm.c

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29036 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
reimar 2009-03-22 14:27:10 +00:00
parent 412cddeb2c
commit 0d44f19d27
1 changed files with 129 additions and 129 deletions

View File

@ -37,10 +37,10 @@
static const ao_info_t info = static const ao_info_t info =
{ {
"RAW PCM/WAVE file writer audio output", "RAW PCM/WAVE file writer audio output",
"pcm", "pcm",
"Atmosfear", "Atmosfear",
"" ""
}; };
LIBAO_EXTERN(pcm) LIBAO_EXTERN(pcm)
@ -60,19 +60,19 @@ static int fast = 0;
struct WaveHeader struct WaveHeader
{ {
uint32_t riff; uint32_t riff;
uint32_t file_length; uint32_t file_length;
uint32_t wave; uint32_t wave;
uint32_t fmt; uint32_t fmt;
uint32_t fmt_length; uint32_t fmt_length;
uint16_t fmt_tag; uint16_t fmt_tag;
uint16_t channels; uint16_t channels;
uint32_t sample_rate; uint32_t sample_rate;
uint32_t bytes_per_second; uint32_t bytes_per_second;
uint16_t block_align; uint16_t block_align;
uint16_t bits; uint16_t bits;
uint32_t data; uint32_t data;
uint32_t data_length; uint32_t data_length;
}; };
/* init with default values */ /* init with default values */
@ -89,107 +89,107 @@ static int control(int cmd,void *arg){
// open & setup audio device // open & setup audio device
// return: 1=success 0=fail // return: 1=success 0=fail
static int init(int rate,int channels,int format,int flags){ static int init(int rate,int channels,int format,int flags){
int bits; int bits;
opt_t subopts[] = { opt_t subopts[] = {
{"waveheader", OPT_ARG_BOOL, &ao_pcm_waveheader, NULL}, {"waveheader", OPT_ARG_BOOL, &ao_pcm_waveheader, NULL},
{"file", OPT_ARG_MSTRZ, &ao_outputfilename, NULL}, {"file", OPT_ARG_MSTRZ, &ao_outputfilename, NULL},
{"fast", OPT_ARG_BOOL, &fast, NULL}, {"fast", OPT_ARG_BOOL, &fast, NULL},
{NULL} {NULL}
}; };
// set defaults // set defaults
ao_pcm_waveheader = 1; ao_pcm_waveheader = 1;
if (subopt_parse(ao_subdevice, subopts) != 0) { if (subopt_parse(ao_subdevice, subopts) != 0) {
return 0; return 0;
} }
if (!ao_outputfilename){ if (!ao_outputfilename){
ao_outputfilename = ao_outputfilename =
strdup(ao_pcm_waveheader?"audiodump.wav":"audiodump.pcm"); strdup(ao_pcm_waveheader?"audiodump.wav":"audiodump.pcm");
} }
bits=8; bits=8;
switch(format){ switch(format){
case AF_FORMAT_S32_BE: case AF_FORMAT_S32_BE:
format=AF_FORMAT_S32_LE; format=AF_FORMAT_S32_LE;
case AF_FORMAT_S32_LE: case AF_FORMAT_S32_LE:
bits=32; bits=32;
break; break;
case AF_FORMAT_FLOAT_BE: case AF_FORMAT_FLOAT_BE:
format=AF_FORMAT_FLOAT_LE; format=AF_FORMAT_FLOAT_LE;
case AF_FORMAT_FLOAT_LE: case AF_FORMAT_FLOAT_LE:
bits=32; bits=32;
break; break;
case AF_FORMAT_S8: case AF_FORMAT_S8:
format=AF_FORMAT_U8; format=AF_FORMAT_U8;
case AF_FORMAT_U8: case AF_FORMAT_U8:
break; break;
case AF_FORMAT_AC3: case AF_FORMAT_AC3:
bits=16; bits=16;
break; break;
default: default:
format=AF_FORMAT_S16_LE; format=AF_FORMAT_S16_LE;
bits=16; bits=16;
break; break;
} }
ao_data.outburst = 65536; ao_data.outburst = 65536;
ao_data.buffersize= 2*65536; ao_data.buffersize= 2*65536;
ao_data.channels=channels; ao_data.channels=channels;
ao_data.samplerate=rate; ao_data.samplerate=rate;
ao_data.format=format; ao_data.format=format;
ao_data.bps=channels*rate*(bits/8); ao_data.bps=channels*rate*(bits/8);
wavhdr.riff = le2me_32(WAV_ID_RIFF); wavhdr.riff = le2me_32(WAV_ID_RIFF);
wavhdr.wave = le2me_32(WAV_ID_WAVE); wavhdr.wave = le2me_32(WAV_ID_WAVE);
wavhdr.fmt = le2me_32(WAV_ID_FMT); wavhdr.fmt = le2me_32(WAV_ID_FMT);
wavhdr.fmt_length = le2me_32(16); wavhdr.fmt_length = le2me_32(16);
wavhdr.fmt_tag = le2me_16(format == AF_FORMAT_FLOAT_LE ? WAV_ID_FLOAT_PCM : WAV_ID_PCM); wavhdr.fmt_tag = le2me_16(format == AF_FORMAT_FLOAT_LE ? WAV_ID_FLOAT_PCM : WAV_ID_PCM);
wavhdr.channels = le2me_16(ao_data.channels); wavhdr.channels = le2me_16(ao_data.channels);
wavhdr.sample_rate = le2me_32(ao_data.samplerate); wavhdr.sample_rate = le2me_32(ao_data.samplerate);
wavhdr.bytes_per_second = le2me_32(ao_data.bps); wavhdr.bytes_per_second = le2me_32(ao_data.bps);
wavhdr.bits = le2me_16(bits); wavhdr.bits = le2me_16(bits);
wavhdr.block_align = le2me_16(ao_data.channels * (bits / 8)); wavhdr.block_align = le2me_16(ao_data.channels * (bits / 8));
wavhdr.data = le2me_32(WAV_ID_DATA); wavhdr.data = le2me_32(WAV_ID_DATA);
wavhdr.data_length=le2me_32(0x7ffff000); wavhdr.data_length=le2me_32(0x7ffff000);
wavhdr.file_length = wavhdr.data_length + sizeof(wavhdr) - 8; wavhdr.file_length = wavhdr.data_length + sizeof(wavhdr) - 8;
mp_msg(MSGT_AO, MSGL_INFO, MSGTR_AO_PCM_FileInfo, ao_outputfilename, mp_msg(MSGT_AO, MSGL_INFO, MSGTR_AO_PCM_FileInfo, ao_outputfilename,
(ao_pcm_waveheader?"WAVE":"RAW PCM"), rate, (ao_pcm_waveheader?"WAVE":"RAW PCM"), rate,
(channels > 1) ? "Stereo" : "Mono", af_fmt2str_short(format)); (channels > 1) ? "Stereo" : "Mono", af_fmt2str_short(format));
mp_msg(MSGT_AO, MSGL_INFO, MSGTR_AO_PCM_HintInfo); mp_msg(MSGT_AO, MSGL_INFO, MSGTR_AO_PCM_HintInfo);
fp = fopen(ao_outputfilename, "wb"); fp = fopen(ao_outputfilename, "wb");
if(fp) { if(fp) {
if(ao_pcm_waveheader){ /* Reserve space for wave header */ if(ao_pcm_waveheader){ /* Reserve space for wave header */
fwrite(&wavhdr,sizeof(wavhdr),1,fp); fwrite(&wavhdr,sizeof(wavhdr),1,fp);
} }
return 1; return 1;
} }
mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_PCM_CantOpenOutputFile, mp_msg(MSGT_AO, MSGL_ERR, MSGTR_AO_PCM_CantOpenOutputFile,
ao_outputfilename); ao_outputfilename);
return 0; return 0;
} }
// close audio device // close audio device
static void uninit(int immed){ static void uninit(int immed){
if(ao_pcm_waveheader){ /* Rewrite wave header */ if(ao_pcm_waveheader){ /* Rewrite wave header */
if (fseek(fp, 0, SEEK_SET) != 0) if (fseek(fp, 0, SEEK_SET) != 0)
mp_msg(MSGT_AO, MSGL_ERR, "Could not seek to start, WAV size headers not updated!\n"); mp_msg(MSGT_AO, MSGL_ERR, "Could not seek to start, WAV size headers not updated!\n");
else if (data_length > 0x7ffff000) else if (data_length > 0x7ffff000)
mp_msg(MSGT_AO, MSGL_ERR, "File larger than allowed for WAV files, may play truncated!\n"); mp_msg(MSGT_AO, MSGL_ERR, "File larger than allowed for WAV files, may play truncated!\n");
else { else {
wavhdr.file_length = data_length + sizeof(wavhdr) - 8; wavhdr.file_length = data_length + sizeof(wavhdr) - 8;
wavhdr.file_length = le2me_32(wavhdr.file_length); wavhdr.file_length = le2me_32(wavhdr.file_length);
wavhdr.data_length = le2me_32(data_length); wavhdr.data_length = le2me_32(data_length);
fwrite(&wavhdr,sizeof(wavhdr),1,fp); fwrite(&wavhdr,sizeof(wavhdr),1,fp);
} }
} }
fclose(fp); fclose(fp);
if (ao_outputfilename) if (ao_outputfilename)
free(ao_outputfilename); free(ao_outputfilename);
ao_outputfilename = NULL; ao_outputfilename = NULL;
} }
// stop playing and empty buffers (for seeking/pause) // stop playing and empty buffers (for seeking/pause)
@ -213,7 +213,7 @@ static void audio_resume(void)
static int get_space(void){ static int get_space(void){
if(vo_pts) if(vo_pts)
return ao_data.pts < vo_pts + fast * 30000 ? ao_data.outburst : 0; return ao_data.pts < vo_pts + fast * 30000 ? ao_data.outburst : 0;
return ao_data.outburst; return ao_data.outburst;
} }
@ -225,31 +225,31 @@ static int play(void* data,int len,int flags){
// let libaf to do the conversion... // let libaf to do the conversion...
#if 0 #if 0
//#ifdef WORDS_BIGENDIAN //#ifdef WORDS_BIGENDIAN
if (ao_data.format == AFMT_S16_LE) { if (ao_data.format == AFMT_S16_LE) {
unsigned short *buffer = (unsigned short *) data; unsigned short *buffer = (unsigned short *) data;
register int i; register int i;
for(i = 0; i < len/2; ++i) { for(i = 0; i < len/2; ++i) {
buffer[i] = le2me_16(buffer[i]); buffer[i] = le2me_16(buffer[i]);
} }
} }
#endif #endif
if (ao_data.channels == 6 || ao_data.channels == 5) { if (ao_data.channels == 6 || ao_data.channels == 5) {
int frame_size = le2me_16(wavhdr.bits) / 8; int frame_size = le2me_16(wavhdr.bits) / 8;
len -= len % (frame_size * ao_data.channels); len -= len % (frame_size * ao_data.channels);
reorder_channel_nch(data, AF_CHANNEL_LAYOUT_MPLAYER_DEFAULT, reorder_channel_nch(data, AF_CHANNEL_LAYOUT_MPLAYER_DEFAULT,
AF_CHANNEL_LAYOUT_WAVEEX_DEFAULT, AF_CHANNEL_LAYOUT_WAVEEX_DEFAULT,
ao_data.channels, ao_data.channels,
len / frame_size, frame_size); len / frame_size, frame_size);
} }
//printf("PCM: Writing chunk!\n"); //printf("PCM: Writing chunk!\n");
fwrite(data,len,1,fp); fwrite(data,len,1,fp);
if(ao_pcm_waveheader) if(ao_pcm_waveheader)
data_length += len; data_length += len;
return len; return len;
} }
// return: delay in seconds between first and last sample in buffer // return: delay in seconds between first and last sample in buffer