1cutter plugin by thomas <thomas@apestaart.org>
2
3SYNOPSIS
4
5This plugin emits signals when RMS level of audio signal crosses a
6threshold for a given amount of time.
7
8As soon as the buffer's RMS is greater than the threshold value, the plugin fires a CUT_START signal.
9
10When the buffer's RMS level drops below the threshold value for a consecutive run length longer than the given runlength, it sends a CUT_STOP signal.
11
12When a pre-recording buffer is used, the plugin will delay throughput of data when it's in "silent" mode for a maximum length equal to the pre-recording buffer length.  As soon as the input level crosses the threshold level, this pre-recorded buffer is flushed to the src pad (so you can actually record the audio just before the threshold crossing) after sending the signal.
13
14ARGUMENTS
15
16GstCutter::threshold
17	level (between 0 and 1) of threshold
18GstCutter::threshold_dB
19	level of threshold in dB (between -inf and 0)
20GstCutter::runlength
21	minimum length (in seconds) before plugin sends cut_stop signal
22GstCutter::prelength
23        length of pre-recording buffer
24
25SIGNALS
26
27	CUT_START
28	gets sent when the level of the signal goes above threshold level
29	CUT_STOP
30	gets sent when the level of the signal has been below the
31	threshold level for a number of consecutive iterations of which
32	the cumulative length is more than the runlength
33
34LIMITATIONS
35
36	* RMS value is calculated over the whole data buffer, so
37	  the time resolution is limited to the buffer length
38	* RMS value is calculated over all of the channels combined
39