somewhere between 3.15 and 3.18 the ability to process raw input from
stdin was lost:

1. The sampling frequency wasn't set right.

2. The parse_wavheader would eat all of stdin looking for a DATA chunk
   even if it already knew the file wasn't a wav.


patch for 3.20 attached.


-- 
        Dan Nelson
        [EMAIL PROTECTED]
--- get_audio.c.orig    Mon Jul 19 13:06:14 1999
+++ get_audio.c Thu Jul 22 00:37:04 1999
@@ -304,7 +304,7 @@
 
   /* set the defaults from info incase we cannot determine them from file */
   num_samples=MAX_U_32_NUM;
-  samp_freq=s_freq[info->version][info->sampling_frequency];
+  samp_freq=s_freq[info->version][info->sampling_frequency]*1000+.5;
   num_channels = (info->mode == MPG_MD_MONO) ? 1 : 2;
 
   if (!strcmp(inPath, "-")) {
@@ -604,6 +604,8 @@
     endswap_wave_fmt(&wavhead);
   iswav = (wavhead.chunk_type==WAVE);
 
+  if (iswav) {
+
 #define OLDBUGXXX
 #ifdef OLDBUG
     num_samples = MAX_U_32_NUM;
@@ -621,8 +623,6 @@
     fseek(musicin, 4, SEEK_CUR);
   }while (1);
 #endif
-
-  if (iswav) {
 
     fprintf(stderr,"Found WAV header:  %3.1fkHz %s\n",
            wavhead.sample_fq/1000.0,

Reply via email to