Squelch PCM to digital silence
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
Makefile
README
squelch.c

README

=======
squelch
=======

squelch zeroes an incoming PCM signal to digital silence when sufficiently quiet
for a sufficient time. This can be helpful when compressing a recorded signal
using RLE, for example.

Signal comes in through stdin and the squelched signal is written to stdout.

Stream format is assumed to be raw 16-bit signed-integer PCM.


Compiling
---------

make


Usage
-----

some_program --producing --samples | squelch [OPTION]... | ...


Command line options
--------------------

  -u SAMPLES
      output buffer length, samples; defaults to 2048

  -l LEVEL
      silence threshold, in absolute amplitude; defaults to 1024 (-30 dB)

  -L LEVEL
      silence threshold, in dB; internally sets absolute amplitude; (e.g. `-L -30`)

  -d SAMPLES
      duration of silence to trigger squelch, in samples; defaults to 4096

  -t SAMPLES
      transition time, in samples; defaults to 512

If both level options are set, the latter wins.

Copying
-------

Copyright (c) 2012-2013, Oona Räisänen <oh2eiq@sral.fi>

Permission to use, copy, modify, and/or distribute this software for any purpose
with or without fee is hereby granted, provided that the above copyright notice
and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
THIS SOFTWARE.