nettoyage du repertoire debian/
[asterisk-app-conference.git] / README
CommitLineData
c575c500
TN
1Introduction
2
3App_conference is a channel-independent conference application.
4It features efficient audio mixing algorithms as well as video selection
5support based on VAD, DTMF or CLI.
6
7
8Design goals
9
10Appconference has several design goals which are different than Meetme:
11
12 * It does not require a zap channel for timing.
13 * It is very efficient when used with channels which support DTX (silence
14 detection/discontinuous transmission).
15
16 * It can do VAD on channels which do not support DTX (although this
17 is more expensive than just mixing them, but less expensive then
18 encoding; therefore it might still be a win).
19 * It presents messages on the Monitor interface for determine which
20 speakers are active.
21
22Mixing design
23
24 * Minimize encoding/decoding, minimize mixing.
25 * Minimize generational loss from trancoding.
26 * Usual cases are handled very efficiently:
27 o One speaker: That speaker's frame is sent directly to each
28 participant which uses the same codec. It is trancoded
29 _once_ for each additional codec type used by participants.
30 o Two speakers: Each speaker gets the other speaker's frames.
31 The two speaker's frames are decoded and mixed, and then
32 encoded _once_ for each codec type used by participants.
33
34Video features
35
36 * Video passthrough: video from selected member is passed to every
37 member of the conference.
38 * Multiple ways to select video
39 - VAD
40 - DTMF from conference members
41 - CLI
42 * Ability to set default video sources and to lock/unlock video sources.
43
44
45License
46
47Naturally, app_conference is GPL. The SVN repository also includes parts of
48libspeex, which is distributed under a BSD-style license. See LICENSE for more
49details.
50
51
52Getting app_conference
53
54app_conference is available via SVN from its own home on sourceforge:
55
56 * http://sourceforge.net/projects/appconference
57
58
59Compiling app_conference
60
61 * Checkout sources
62 * Modify Makefile to point to your Asterisk include directory
63 * make
64 * sudo make install
65
66
67Using app_conference
68
69There is no configuration file. Conferences are created on-the-fly.
70
71Dialplan syntax: Conference(ConferenceName/Flags/Priority[/VADSTART/VADCONTINUE])
72
73 * ConferenceName: Whatever you want to name the conference
74 * Flags: please see Flags.txt for a comprehensive list of dialplan flags
75 * Priority: Currently ignored; was to be a "speaking priority" so a
76 higher priority caller could "override" others.
77 * VADSTART: Optional: "probability" to use to detect start of speech.
78 * VADCONTINUE: Optional: "probability" to use to detect continuation
79 of speech.
80
81
82CLI Commands
83
84Please look at CLI.txt for a comprehensive list of CLI commands and parameters.
85
86
87Manager Events
88
89<This section is outdated>
90app_conference generates several detailed manager events so that applications
91interfacing with the manager API can monitor conferences:
92
93 * ConferenceState: sent as members begin/end speaking.
94 Channel: The channel
95 State: "speaking" or "silent"
96
97 * ConferenceDTMF: sent when conference members send DTMF to the conference
98 Channel: The channel
99 Key: The DTMF key send [0-9*#]
100
101 * ConferenceSoundComplete: send when the conference has finished playing
102 a sound to a user
103 Channel: The channel
104 Sound: The first 255 bytes of the file requested in conference play
105 sound CLI/Mgr command.
106
107
108Benchmarking
109
110It would be nice to have solid benchmarks to present, but a good size
111machine should be able to handle many callers when either (a) they are
112using DTX, or (b) they are listen-only. It's used often with hundreds of
113simultaneous callers.
114
115
116Discussion
117
118The appconference-devel mailing list is the place to discuss everything related
119to app_conference. The bug tracker on SourceForge gets a little bit of
120attention now and then.
121
122
123---
124
125app_conference is brought to you by the letter q, and the number e