~ubuntu-branches/ubuntu/natty/ecasound2.2/natty

« back to all changes in this revision

Viewing changes to Documentation/ecasound.1

  • Committer: Bazaar Package Importer
  • Author(s): Junichi Uekawa
  • Date: 2008-09-26 09:58:52 UTC
  • mfrom: (1.1.6 upstream)
  • Revision ID: james.westby@ubuntu.com-20080926095852-k3v9ewhmxpaltusw
Tags: 2.5.2-3
yodl 2.13.1 removed --unique-output option. Remove --unique-output
accordingly.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
.TH "ecasound" "1" "13\&.08\&.2007" "" "Multimedia software"
 
1
.TH "ecasound" "1" "16\&.08\&.2008" "" "Multimedia software"
2
2
 
3
3
.PP 
4
4
.SH "NAME"
23
23
.SH "OPTIONS"
24
24
 
25
25
.PP 
26
 
Note! All options except those mentioned in \fIGlobal options\fP, can 
27
 
be used in ecasound chainsetup files (\&.ecs)\&.
28
 
.PP 
29
 
\fBGLOBAL OPTIONS\fP
 
26
Note! All options except those mentioned in \fIecasound options\fP and 
 
27
\fIGlobal options\fP, can be used in ecasound chainsetup files (\&.ecs)\&.
 
28
.PP 
 
29
\fBECASOUND OPTIONS\fP
 
30
.PP 
 
31
These options are parsed and handled by the ecasound frontbed binary and 
 
32
are not passed to backend library\&. This means that these options may
 
33
not work in other applications that use ecasound libraries for their
 
34
functionality\&.
30
35
.PP 
31
36
.IP "-c"
32
37
Starts ecasound in interactive mode\&. In interactive mode you can
35
40
.IP 
36
41
.IP "-C"
37
42
Disables ecasound\&'s interactive mode (see \&'-c\&' and \&'-K\&')\&.
38
 
.IP 
39
 
.IP "-d, -dd, -ddd"
40
 
Increase the amount of printed debug messages\&. \fI-d\fP adds 
41
 
some verbosity, while \fI-ddd\fP results in very detailed 
42
 
output\&.
43
 
.IP 
44
 
.IP "-d:debug_level"
45
 
Set the debug level mask to \&'debug_level\&'\&. This a bitmasked value with
46
 
the following classes: errors (1), info (2), subsystems (4), module_names (8),
47
 
user_objects (16), system_objects 32, functions (64), continuous (128) and
48
 
eiam_return_values (256)\&. Default is 271 (1+2+4+8+256)\&. See sourcode 
49
 
documentation for the ECA_LOGGER class for more detailed information\&.
50
 
.IP 
 
43
 
 
44
.PP 
51
45
.IP "-D"
52
46
Print all debug information to stderr (unbuffered, plain output
53
47
without ncurses)\&.
54
 
.IP 
55
 
.IP "-R[:]path-to-file"
56
 
Use ecasound resource file (see ecasoundrc man page) \&'path-to-file\&' as 
57
 
the only source of setting resource value\&. Specifying this option
58
 
will disable the normal policy of querying both global and user (if exists)
59
 
resource files\&.
60
 
.IP 
61
 
.IP "-q"
62
 
Quiet mode, no output\&. Same as \fI-d:0\fP\&.
63
 
.IP 
 
48
.PP 
64
49
.IP "-s[:]chainsetup-file"
65
50
Create a new chainsetup from file \&'chainsetup-file\&' and add
66
 
it to the current session\&. Chainsetup can contain inputs, outputs, 
67
 
chains, effects, controllers, etc\&. A session, on the other hand, 
68
 
contains all the chainsetups\&. Although only one chainsetup can
69
 
be connected at a time, you can switch between them on-the-fly\&.
70
 
.IP 
 
51
it to the current session\&. Chainsetup files commonly have 
 
52
a filename ending to the \&'\&.ecs\&' extension\&. A chainsetup can 
 
53
contain inputs, outputs, chains, effects, controllers -- i\&.e\&.
 
54
objects one one specific configuration of audio processing
 
55
elements\&. A session, on the other hand, is a collection of 
 
56
one or more chainsetups\&. Only one of the chainsetups may be
 
57
connected (i\&.e\&. it can be run/processed)\&. But it is possible 
 
58
to have another chainsetup select (i\&.e\&. can be configured)
 
59
while other one is current connteced (i\&.e\&. running)\&. 
 
60
.PP 
 
61
.IP "-E "cmd1 [[args] ; cmd2 args ; \&.\&.\&. ; cmdN]""
 
62
Execute a set of Ecasound Interactive mode (EIAM) commands
 
63
at launch\&. These commands are executed immediately after 
 
64
ecasound is started\&. If the command line contains sufficient
 
65
options to create a valid chainsetup that will be executed,
 
66
the launch commands are executed after the other command
 
67
line options are parsed, but before the processing engine
 
68
is started\&. Note that this command is a feature of 
 
69
the ecasound frontend binary and not supported by 
 
70
the library backend\&. This means that other clients may
 
71
not support the \&'-E\&' option, and also that the launch
 
72
commands are not saved as part of chainsetup or session
 
73
state\&.
 
74
.PP 
71
75
.IP "--daemon"
72
76
Enable ecasound\&'s daemon mode\&. If this option is given,
73
77
ecasound will allow clients to connect to the running 
74
78
ecasound session using a TCP/IP network connection\&.
75
79
The clients can both observe and control the session\&. 
76
 
.IP 
 
80
.PP 
77
81
\fIWarning!\fP As there is no access control implemented,
78
82
be sure to block ecasound\&'s port in your firewall 
79
83
if the machine running ecasound is connected to 
80
84
a public network! Otherwise anyone can connect to 
81
85
your ecasound sessions\&.
82
 
.IP 
 
86
.PP 
83
87
.IP "--daemon-port"
84
88
Set the TCP port used by the daemon mode\&. By default
85
89
ecasound will use port number \fI2868\fP\&.
86
 
.IP 
 
90
.PP 
87
91
.IP "--nodaemon"
88
92
Disable ecasound\&'s daemon mode\&. This is the default\&.
89
 
.IP 
 
93
.PP 
90
94
.IP "--keep-running,-K"
91
95
Do not exit when processing is finished/stopped\&. Only affects
92
96
non-interactive operating mode (see -c/-C)\&.
93
97
Option added to ecasound 2\&.4\&.2\&.
94
 
.IP 
 
98
.PP 
95
99
.IP "--help,-h"
96
100
Show this help\&.
97
 
.IP 
 
101
.PP 
98
102
.IP "--version"
99
103
Print version info\&.
 
104
.PP 
 
105
\fBGLOBAL OPTIONS\fP
 
106
.PP 
 
107
.IP "-d, -dd, -ddd"
 
108
Increase the amount of printed debug messages\&. \fI-d\fP adds 
 
109
some verbosity, while \fI-ddd\fP results in very detailed 
 
110
output\&.
 
111
.IP 
 
112
.IP "-d:debug_level"
 
113
Set the debug level mask to \&'debug_level\&'\&. This a bitmasked value with
 
114
the following classes: errors (1), info (2), subsystems (4), module_names (8),
 
115
user_objects (16), system_objects 32, functions (64), continuous (128) and
 
116
eiam_return_values (256)\&. Default is 271 (1+2+4+8+256)\&. See sourcode 
 
117
documentation for the ECA_LOGGER class for more detailed information\&.
 
118
.IP 
 
119
.IP "-R[:]path-to-file"
 
120
Use ecasound resource file (see ecasoundrc man page) \&'path-to-file\&' as 
 
121
the only source of setting resource value\&. Specifying this option
 
122
will disable the normal policy of querying both global and user (if exists)
 
123
resource files\&.
 
124
.IP 
 
125
.IP "-q"
 
126
Quiet mode, no output\&. Same as \fI-d:0\fP\&.
100
127
.IP 
101
128
\fBGENERAL CHAINSETUP OPTIONS\fP
102
129
 
233
260
extension\&. If the object name contains any commas, the name must be 
234
261
enclosed in backquotes to avoid confusing the parser\&. Currently supported 
235
262
formats are RIFF WAVE files (\&.wav), audio-cd tracks (\&.cdr), ecasound 
236
 
ewf-files (\&.ewf), RAW audio data (\&.raw) and MPEG files (\&.mp2,\&.mp3)\&. Also, 
 
263
EWF files (\&.ewf), RAW audio data (\&.raw) and MPEG files (\&.mp2,\&.mp3)\&. Also, 
237
264
formats supported by the SGI audiofile library: AIFF (\&.aiff, \&.aifc, \&.aif) and 
238
265
Sun/NeXT audio files (\&.au, \&.snd)\&. MikMod is also supported (\&.xm, \&.mod, \&.s3m, 
239
266
\&.it, etc)\&. MIDI files (\&.mid) are supported using Timidity++\&. Similarly
270
297
output using aRts audio server\&. Option syntax is \fB-i:arts\fP,
271
298
\fB-o:arts\fP\&.
272
299
.IP 
273
 
.IP "Ecasound Wave Files - \&.ewf"
274
 
A simple wrapper class for handling other audio objects\&. 
 
300
.IP "Audio file sequecing"
 
301
Ecasound provides a set of special audio object types that 
 
302
can be used for temporal sequencing of audio files - i\&.e\&. looping,
 
303
playing only a select portion of a file, playing file at a spefific
 
304
time, and other such operation\&.
 
305
.IP 
 
306
Looping is possible with \fB-i:audioloop,file\&.ext,params\fP\&. The
 
307
file name (or any object type understood by Ecasound) given
 
308
as the second parameter is played back continuously looping
 
309
back to the beginning when the end of file is reached\&. Any additional
 
310
parameters given are passed unaltered to the file object\&.
 
311
Parameters 3\&.\&.\&.N are passed as is to the child object (i\&.e\&.
 
312
"-i audioloop,foo\&.wav,bar1,bar2" will pass parameters
 
313
"bar1,bar2" to the "foo\&.wav" object\&.
 
314
.IP 
 
315
To select and use only a specific segment of an audio object,
 
316
the \fB-i:select,start-time,duration,file\&.ext,params\fP can
 
317
be used\&. This will play "duration" of "file\&.ext", starting at 
 
318
"start-time"\&. The time values should be given as seconds (e\&.g\&.
 
319
"2\&.25", or as samples (e\&.g\&. "25000sa")\&. Parameters 4\&.\&.\&.N are 
 
320
passed as is to the child object\&.
 
321
.IP 
 
322
To play an audio object at a given moment in time, 
 
323
the \fB-i:playat,play-at-time,file\&.ext,params\fP can be
 
324
used\&. This will play "file\&.ext" after position reaches 
 
325
"play-at-time"\&. The time values should be given as seconds (e\&.g\&.
 
326
"2\&.25", or as samples (e\&.g\&. "25000sa")\&. Parameters 2\&.\&.\&.N are 
 
327
passed as is to the child object\&.
 
328
.IP 
 
329
.IP "Ecasound Wave Files (EWF) - \&.ewf"
 
330
A special file format that allows to slice and loop full (or segments)
 
331
of audio files\&. This format is specific to Ecasound\&.
275
332
See ecasound user\&'s guide for more 
276
333
detailed information\&.
277
334
.IP 
 
335
See also audio object types \&'audioloop\&', \&'select\&' and \&'playat\&'\&.
 
336
.IP 
278
337
.IP "JACK input/outputs"
279
338
JACK is a low-latency audio server that can be used to connect
280
339
multiple independent audio application to each other\&.
319
378
AIFF file with filename "foo\&.wav")\&.
320
379
.IP 
321
380
.IP "Loop device"
322
 
Loop devices make it possible to route data between chains\&.
323
 
Option syntax is \fB-[io][:]loop,id_number\fP\&. If you add a loop 
324
 
output with id \&'1\&', all data written to this output is routed
325
 
to all loop inputs with id \&'1\&'\&. You can attach the same loop
326
 
device to multiple inputs and outputs\&.
 
381
Loop devices make it possible to route (loop back) data between 
 
382
chains\&. Option syntax is \fB-[io][:]loop,tag\fP\&. If you add
 
383
a loop output with tag \&'1\&', all data written to this output is routed
 
384
to any loop input with tag \&'1\&'\&. The tag can be either numerical
 
385
(e\&.g\&. \&'-i:loop,1\&') or a string (e\&.g\&. "-i:loop,vocals")\&. Like 
 
386
with other input/output objects, you can attach the same loop 
 
387
device to multiple chains and this way split/mix the signal\&.
 
388
.IP 
 
389
Note: this \&'loop\&' device is different from \&'audioloop\&' (latter
 
390
added to ecasound v2\&.5\&.0)\&.
327
391
.IP 
328
392
.IP "Mikmod"
329
393
If mikmod support was enabled at compile-time, this
351
415
the audio file format\&. To use \&'auto\&' in the previous example, 
352
416
\fBecasound -f:16,2,44100 -i resample,auto,foo\&.wav -o /dev/dsp\fP\&.
353
417
.IP 
 
418
Parameters 4\&.\&.\&.N are passed as is to the child object (i\&.e\&.
 
419
"-i resample,22050,foo\&.wav,bar1,bar2" will pass parameters
 
420
"bar1,bar2" to the "foo\&.wav" object\&.
 
421
.IP 
354
422
If ecasound was compiled with support for libsamplerate, you can 
355
423
use \&'resample-hq\&' to use the highest quality resampling algorithm 
356
424
available\&. To force ecasound to use the internal resampler, 
366
434
Try converting to an uncompressed format (wav or raw)
367
435
first, and then do reversation\&.
368
436
.IP 
 
437
Parameters 3\&.\&.\&.N are passed as is to the child object (i\&.e\&.
 
438
"-i reverse,foo\&.wav,bar1,bar2" will pass parameters
 
439
"bar1,bar2" to the "foo\&.wav" object\&.
 
440
.IP 
369
441
.IP "System standard streams and named pipes"
370
442
You can use standard streams (stdin and stdout) by giving \fBstdin\fP
371
443
or \fBstdout\fP as the file name\&. Audio data is assumed to be in
372
444
raw/headerless (\&.raw) format\&. If you want to use named pipes, 
373
445
create them with the proper file name extension before use\&.
374
446
.IP 
 
447
.IP "Tone generator"
 
448
To generate a test tone, input \fB-i:tone,type,freq,duration-secs\fP 
 
449
can be used\&. Parameter \&'type\&' specifies the tone type: currently
 
450
only \&'sine\&' is supported\&. The \&'freq\&' parameter sets the frequency 
 
451
of the generated tone and \&'duration-secs\&' the length of the generated
 
452
stream\&. Specifying zero, or a negative value, as the duration will
 
453
produce an infinite stream\&. This feature was first added to Ecasound 
 
454
2\&.4\&.7\&.
 
455
.IP 
375
456
.IP "Typeselect - overriding object type settings"
376
457
The special \&'typeselect\&' object type can be used to override 
377
458
how ecasound maps filename extensions and object types\&. For 
379
460
would play the file \&'an_mp3_file\&.wav\&' as an mp3-file and not
380
461
as an wav-file as would happen without typeselect\&.
381
462
.IP 
 
463
Parameters 4\&.\&.\&.N are passed as is to the child object (i\&.e\&.
 
464
"-i typeselect,\&.au,foo\&.wav,bar1,bar2" will pass parameters
 
465
"bar1,bar2" to the "foo\&.wav" object\&.
 
466
.IP 
382
467
\fBMIDI SETUP\fP
383
468
.PP 
384
469
.IP "MIDI I/O devices - general"
447
532
used by controllers and other operators\&.
448
533
.IP 
449
534
.IP "-ea:amplify-%"
450
 
Amplifies signal by amplify-% percent\&. 
 
535
Amplifies signal by amplify-% percent (linear scale, i\&.e\&. individual
 
536
samples are multiplied by \&'amplify-%/100\&')\&.
451
537
.IP 
452
538
.IP "-eac:amplify-%,channel"
453
 
Amplifies signal of channel \&'channel\&' by amplify-% percent\&. \&'channel\&'
454
 
ranges from 1\&.\&.\&.n where n is the total number of channels\&.
 
539
Amplifies signal of channel \&'channel\&' by amplify-% percent (linear 
 
540
scale, i\&.e\&. individual samples are multiplied by \&'amplify-%/100\&')\&. 
 
541
\&'channel\&' ranges from 1\&.\&.\&.n where n is the total number of channels\&. 
455
542
.IP 
456
543
.IP "-eaw:amplify-%,max-clipped-samples"
457
544
Amplifies signal by amplify-% percent\&. If number of consecutive
676
763
has elapsed, gate opens and remains open for \&'len\&' seconds\&. When
677
764
closed, passing audio buffers are trucated to zero length\&.
678
765
.IP 
679
 
.IP "-ge:open-threshold-%, close-thold-%,volume-mode"
680
 
Threshold gate\&. Initially gate is closed\&. It is opened when volume 
681
 
goes over \&'othreshold\&' percent\&. After this, if volume drops below 
682
 
\&'cthold\&' percent, gate is closed and won\&'t be opened again\&. 
 
766
.IP "-ge:open-threshold-%,close-thold-%,volume-mode,reopen-count"
 
767
Threshold gate\&. Initially gate is closed\&. It is opened when volume
 
768
goes over \&'othreshold\&' percent\&. After this, if volume drops below
 
769
\&'cthold\&' percent, gate is closed and won\&'t be opened again, unless the
 
770
\&'reopen-count\&' is set to anything other than zero\&.
683
771
If \&'value_mode\&' is \&'rms\&', average RMS volume is used\&. Otherwise
684
 
peak average is used\&.  When closed, passing audio buffers are trucated 
 
772
peak average is used\&.  When closed, passing audio buffers are trucated
685
773
to zero length\&.
 
774
If the \&'reopen-count\&' is set to a positive number, then the gate will 
 
775
restart its operation that many times\&. So for example, a reopen count 
 
776
of 1 will cause up to 2 openings of the gate\&. A negative value for \&'reopen-count\&'
 
777
will result in the gate reopening indefinitely\&. The \&'reopen-count\&' is invaluable 
 
778
in recording vinyl and tapes, where you can set things up and then recording 
 
779
starts whenever the needle is on the vinyl, and stops when it\&'s off\&. As many sides 
 
780
as you like can be recorded in one session\&.  You will need to experiment with 
 
781
buffer lengths and start/stop levels to get reliable settings for your equipment\&.
686
782
.IP 
687
783
\fBCONTROL ENVELOPE SETUP\fP
688
784
 
725
821
and then linearly changes towards \&'end_value\&' during
726
822
\&'2nd_stage_length\&' seconds\&.
727
823
.IP 
728
 
.IP "-klg:fx-param,start-value,end-value,point_count,pos1,value1,\&.\&.\&.,posN,valueN"
 
824
.IP "-klg:fx-param,low-value,high-value,point_count,pos1,value1,\&.\&.\&.,posN,valueN"
729
825
Generic linear envelope\&. This controller source can be 
730
 
used to map custom envelopes to chain operator parameters\&. 
731
 
All \&'posX\&' parameters are given as seconds (from start of the stream)\&.
732
 
\&'valueX\&' parameters  must be in the range [0,1]\&.
 
826
used to map custom envelopes to chain operator parameters\&. Number of
 
827
envelope points is specified in \&'point_count\&'\&. Each envelope point
 
828
consists of a position and a matching value\&. Number of pairs must
 
829
match \&'point_count\&' (i\&.e\&. \&'N==point_count\&')\&. The \&'posX\&' parameters are given 
 
830
as seconds (from start of the stream)\&. The envelope points are specified as 
 
831
float values in range \&'[0,1]\&'\&. Before envelope values are mapped to operator
 
832
parameters, they are mapped to the target range of \&'[low-value,high-value]\&'\&. E\&.g\&.
 
833
a value of \&'0\&' will set operator parameter to \&'low-value\&' and a value of
 
834
\&'1\&' will set it to \&'high-value\&'\&. For the initial segment \&'[0,pos1]\&', the envelope 
 
835
will output value of \&'value1\&' (e\&.g\&. \&'low-value\&')\&.
733
836
.IP 
734
837
.IP "-km:fx-param,start-value,end-value,controller,channel"
735
838
MIDI continuous controller (control change messages)\&.