logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

ch_wave — change/copy/combine waveform files

Bugs

Description

ch_wave performs various operations on an input waveform file and writes it out to another  file.   Among
       other  things,  it  can extract subsections or individual channels, resample, rescale, mix down channels,
       and perform simple filtering operations.

       The following option flags are recognized:

             -h    Options help
             -itypefiletype
                   Input file type (optional). If set to raw, this indicates that the input file does not have a
                   header. While this can be used to specify file types other than raw, this is rarely used  for
                   other  purposes  as  the  file  type  of  all  the existing supported types can be determined
                   automatically from the file's header. If the input file is unheadered, files are  assumed  to
                   be shorts (16bit).  Supported types are nist, est, esps, snd, riff, aiff, audlab, raw, ascii
             -nchannelsNumberofchannelsinanunheaderedinputfile-fsamplerate
                   Sample rate in Hertz for an unheadered input file
             -ibobyteorder
                   Input  byte  order  in  an  unheadered  input  file:  possibliities are: MSB , LSB, native or
                   nonnative. Suns, HP, SGI Mips, M68000 are MSB (big endian) Intel, Alpha, DEC  Mips,  Vax  are
                   LSB (little endian)
             -iswap
                   Swap bytes. (For use on an unheadered input file)
             -istypesampletype
                   Sample type in an unheadered input file: short, alaw, mulaw, byte, ascii
             -cchannel
                   Select  a  single channel (starts from 0).  Waveforms can have multiple channels. This option
                   extracts a single channel for progcessing and discards the rest.
             -startseconds
                   Extract sub-wave starting at this time, specified in seconds
             -endseconds
                   Extract sub-wave ending at this time, specified in seconds
             -fromsample
                   Extract sub-wave starting at this sample point
             -tosample
                   Extract sub-wave ending at this sample point
             -ooutputfile
                   Output filename. If not specified output is to stdout.
             -otypefiletype
                   Output file type, (optional). If no type is Specified the type of the input file is  assumed.
                   Supported types are: nist, est, esps, snd, riff, aiff, audlab, raw, ascii
             -Fsamplerate
                   Output  sample  rate  in Hz. If this is different from the input sample rate, resampling will
                   occur
             -obobyteorder
                   Output byte order: MSB, LSB, native, or nonnative. Suns, HP, SGI Mips, M68000  are  MSB  (big
                   endian), Intel, Alpha, DEC Mips, Vax are LSB (little endian)
             -oswap
                   Swap bytes when saving to output
             -ostypesampletype
                   Output sample type: short, alaw, mulaw, byte or ascii
             -scalefactor
                   Scaling factor. Increase or descrease the amplitude of the whole waveform by the factor given
                   (relative to 1.0)
             -scaleNfactorScalingfactorwithnormalization.Thewaveformis
                   scaled to its maximum level, after which it is scaled by the factor given (relative to 1.0)
             -lpfilterfrequency
                   Low  pass filter, with cutoff frequency in Hz Filtering is performed by a FIR filter which is
                   built at run time. The order of the filter can be given by -forder. The default value is 199
             -hpfilterfrequency
                   High pass filter, with cutoff frequency in Hz Filtering is performed by a FIR filter which is
                   built at run time. The order of the filter can be given by -forder. The default value is 199.
             -forderorder
                   Order of FIR filter used for lpfilter and hpfilter. This must be ODD. Sensible  values  range
                   from  19  (quick  but  with  a  shallow  rolloff) to 199 (slow but with a steep rolloff). The
                   default is 199.
             -fafter
                   Do filtering after other operations  such  as  resampling  (default  :  filter  before  other
                   operations)
             -info
                   Print  information  about  file and header. This option gives useful information such as file
                   length, sampling rate, number of channels etc No output is produced
             -add  A new single channel waveform is created by adding the corresponding sample  points  of  each
                   input waveform
             -pcLONGEST | FIRST
                   Combine  input  waveforms to form a single multichannel waveform. The argument to this option
                   controls how long the new waveform should be. If the option is LONGEST, the  output  wave  if
                   the  length  of the longest input wave and shorter waves are padded with zeros at the end. If
                   the option is FIRST, the length of the new waveform is the length of the first  file  on  the
                   command line, and subsequent waves are padded or cut to this length
             -keykeylabfile
                   Label  file  designating  subsections,  for use with -divide. The KEYLAB file is a label file
                   which specifies where chunks (such as individual sentences) in a waveform begin and end.  See
                   section on wave extraction.
             -divide
                   Divide  a  single  input  waveform  into  multiple  output waveforms. Each output waveform is
                   extracted from the input waveform by using the KEYLAB file, which  specifies  the  start  and
                   stop times for each chunk. The output files are named according to the filename in the KEYLAB
                   file, with extension given by -ext.  See section on wave extraction
             -extfileextension
                   File extension for divided waveforms
             -extractfile
                   Used  in  conjunction  with  -key  to  extract  a  single  section of waveform from the input
                   waveform. The argument is the name of a file given in the file column of the KEYLAB file.

Examples

Name

       ch_wave — change/copy/combine waveform files

See Also

ch_track(1) ch_utt(1) na_record(1) na_play(1)

Edinburgh Speech Tools                            April 5, 2001                                       CH_WAVE(1)

Synopsis

ch_wave   [-h]   [-itypefiletype]  [-nchannels]  [-fsamplerate]  [-ibobyteorder]  [-iswap]
               [-istypesampletype] [-cchannel] [-startseconds] [-endseconds] [-fromsample]  [-tosample]
               [-ooutputfile]   [-otypefiletype]   [-Fsamplerate]  [-obobyteorder]  [-oswap]
               [-ostypesampletype]   [-scalefactor]    [-scaleNfactor]    [-lpfilterfrequency]
               [-hpfilterfrequency]   [-forderorder]  [-fafter]  [-info]  [-add]  [-pcLONGEST  |  FIRST]
               [-keykeylabfile] [-divide] [-extfileextension] [-extractfile] inputfiles...

See Also