📄 sound.diff
字号:
*** :raw2audio.c Thu Oct 11 13:12:39 1990--- raw2audio.c Fri Nov 1 17:20:00 1991****************** 23,29 **** /* Local variables */ char *prog; char prog_desc[] = "Convert raw data to audio file format";! char prog_opts[] = "o:s:p:e:c:i:f?"; /* getopt() flags */ char *Stdin = "stdin"; char *Stdout = "stdout";--- 23,29 ---- /* Local variables */ char *prog; char prog_desc[] = "Convert raw data to audio file format";! char prog_opts[] = "o:s:p:e:c:i:fF?"; /* getopt() flags */ char *Stdin = "stdin"; char *Stdout = "stdout";****************** 34,39 ****--- 34,40 ---- char *Info = NULL; /* pointer to info data */ unsigned Ilen = 0; /* length of info data */ int Force = 0; /* rewrite file header, if present */+ int Strip = 0; /* strip header */ unsigned Offset = 0; /* byte offset into raw data */ Audio_hdr Hdr; /* audio header structure */ char *ofile; /* output temporary file name */****************** 139,144 ****--- 140,148 ---- Info = optarg; /* set information string */ Ilen = strlen(Info); break;+ case 'F':+ Strip++; /* strip header */+ /* and fall... */ case 'f': Force++; /* force header rewrite */ break;****************** 161,166 ****--- 165,174 ---- if (Hdr.bytes_per_unit < 4) err++; break;+ case AUDIO_ENCODING_ADPCM:+ if (Hdr.bytes_per_unit != 1)+ err++;+ break; } if (err > 0) { Error(stderr, "%s: encoding/precision mismatch\n",****************** 317,322 ****--- 325,331 ---- /* Write the audio file header first. */ if (Hdr.data_size != AUDIO_UNKNOWN_SIZE) Hdr.data_size -= Offset;+ if (Strip) goto copydata; err = audio_write_filehdr(ofd, &Hdr, Info, Ilen); if (err != AUDIO_SUCCESS) goto writeerror;****************** 435,443 **** *dst = AUDIO_ENCODING_LINEAR; else if (strncmp(str, "FLOAT", i) == 0) *dst = AUDIO_ENCODING_FLOAT; else { Error(stderr,! "%s: encoding must be one of: ULAW, LINEAR, FLOAT\n", prog); return (1); } return (0);--- 444,454 ---- *dst = AUDIO_ENCODING_LINEAR; else if (strncmp(str, "FLOAT", i) == 0) *dst = AUDIO_ENCODING_FLOAT;+ else if (strncmp(str, "ADPCM", i) == 0)+ *dst = AUDIO_ENCODING_ADPCM; else { Error(stderr,! "%s: encoding must be one of: ULAW, LINEAR, FLOAT, ADPCM\n", prog); return (1); } return (0);*** multimedia/:audio_hdr.h Thu Oct 11 13:12:45 1990--- multimedia/audio_hdr.h Fri Nov 1 09:47:12 1991****************** 72,77 ****--- 72,78 ---- #define AUDIO_ENCODING_ALAW (2) /* ISDN A-law */ #define AUDIO_ENCODING_LINEAR (3) /* PCM 2's-complement (0-center) */ #define AUDIO_ENCODING_FLOAT (4) /* IEEE float (-1. <-> +1.) */+ #define AUDIO_ENCODING_ADPCM (23) /* CCITT G.721*/ /* Value used for indeterminate size (e.g., data passed through a pipe) */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -