prepComb {tuneR} | R Documentation |
Preparing the combination/concatenation of Wave or WaveMC objects
Description
Preparing objects of class Wave
or class WaveMC
for binding/combination/concatenation by
removing small amounts at the beginning/end of the Wave
or WaveMC
in order to make the transition smooth by avoiding clicks.
Usage
prepComb(object, zero = 0, where = c("both", "start", "end"))
Arguments
object |
|
zero |
The zero level (default: 0) at which ideal cut points are determined (see Details).
A typical alternative would be 127 for 8 bit |
where |
One of |
Details
This function is useful to prepare objects of class Wave
or class WaveMC
for binding/combination/concatenation.
At the side(s) indicated by where
small amounts of the Wave
or WaveMC
are removed
in order to make the transition between two Wave
s or WaveMC
s smooth (avoiding clicks).
This is done by dropping all values at the beginning of a Wave
or WaveMC
before the first positive point
after the zero
level is crossed from negative to positive.
Analogously, at the end of a Wave
or WaveMC
all points are cut after the last negative value
before the last zero
level crossing from negative to positive.
Value
An object of class Wave
or class WaveMC
.
Note
If stereo (for Wave
), only the left channel is analyzed while the right channel will simply be cut at the same locations.
If multi channel (for WaveMC
), only the first channel is analyzed while all other channels will simply be cut at the same locations.
Author(s)
Uwe Ligges ligges@statistik.tu-dortmund.de, Sarah Schnackenberg, based on code from Matthias Heymann's former package ‘sound’.
See Also
bind
, Wave-class, Wave
, WaveMC-class,
WaveMC
, extractWave
, and noSilence
to cut off silence
Examples
Wobj1 <- sine(440, duration = 520)
Wobj2 <- extractWave(sine(330, duration = 500), from = 110, to = 500)
par(mfrow = c(2,1))
plot(bind(Wobj1, Wobj2), xunit = "samples")
abline(v = 520, col = "red") # here is a "click"!
# now remove the "click" by deleting a minimal amount of information:
Wobj1 <- prepComb(Wobj1, where = "end")
Wobj2 <- prepComb(Wobj2, where = "start")
plot(bind(Wobj1, Wobj2), xunit = "samples")