[rffft] Read from stdin if no input file given

pull/15/head
Martin Herren (HB9FXX) 2020-02-16 19:12:47 +01:00
parent faf4b4c148
commit 18e1f7fd8f
No known key found for this signature in database
GPG Key ID: 0BD2A4A2A9106D59
1 changed files with 8 additions and 4 deletions

12
rffft.c
View File

@ -11,7 +11,7 @@
void usage(void)
{
printf("rffft: FFT RF observations\n\n");
printf("-i <file> Input file (can be fifo)\n");
printf("-i <file> Input file (can be fifo) [stdin]\n");
printf("-p <prefix> Output prefix\n");
printf("-f <frequency> Center frequency (Hz)\n");
printf("-s <samprate> Sample rate (Hz)\n");
@ -35,7 +35,7 @@ int main(int argc,char *argv[])
fftwf_complex *c,*d;
fftwf_plan fft;
FILE *infile,*outfile;
char infname[128],outfname[128],path[64]=".",prefix[32]="";
char infname[128]="",outfname[128]="",path[64]=".",prefix[32]="";
char informat='i',outformat='f';
int16_t *ibuf;
char *cbuf;
@ -144,7 +144,7 @@ int main(int argc,char *argv[])
}
// Dump statistics
printf("Filename: %s\n",infname);
printf("Filename: %s\n", (strlen(infname) ? infname : "stdin"));
printf("Frequency: %f MHz\n",freq*1e-6);
printf("Bandwidth: %f MHz\n",samp_rate*1e-6);
printf("Sampling time: %f us\n",1e6/samp_rate);
@ -182,7 +182,11 @@ int main(int argc,char *argv[])
}
// Open file
infile=fopen(infname,"r");
if (strlen(infname)) {
infile = fopen(infname, "r");
} else {
infile = stdin;
}
// Forever loop
for (m=0;;m++) {