summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuss Meyerriecks <rmeyerreicks@digium.com>2012-10-04 20:24:17 +0000
committerRuss Meyerriecks <rmeyerreicks@digium.com>2012-10-04 20:24:17 +0000
commit7442156c729ac358f70d4b04e928bf927c52f8bb (patch)
treef40244a5a8a750c71c2bf283205a87205007c0c2
parentc1bc6301e827171756d642d41f1651c77885707d (diff)
dahdi: Increase the number of conference buffers to eight.
When DAHDI is bridging channels between two different cards, or a user is trying to record from a channel on a card that is not using the same timing source as the master span, it is possible to miss audio. For example, given the following scenario: <T1 Span> <---> <ISDN CARD> <---> <ANALOG CARD> <---> <local handset> If DAHDI was set to natively bridge the call from the T1 span to the local handset it is possible that system conditions could result in one of the cards servicing their interrupt three times before the other card has a chance to. Since there are currently only two conference buffers to pass audio between the cards, one chunk (1ms) of audio will be dropped since the card servicing it's interrupt more frequently will run out of space to copy audio for the other card and will have emptied the audio buffer from the other card. Increasing the number of conference buffers to eight greatly reduces the probability of audio from being dropped under these conditions at cost of an additional 72 (32-bit) or 96 (64-bit) bytes per DAHDI channel. Internal-Issue-ID: DAHLIN-159, DAHDI-976 Signed-off-by: Shaun Ruffell <sruffell@digium.com> Signed-off-by: Russ Meyerriecks <rmeyerriecks@digium.com> git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@10726 a0bf4364-ded3-4de4-8d8a-66a801d63aff
-rw-r--r--include/dahdi/kernel.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/dahdi/kernel.h b/include/dahdi/kernel.h
index 2a06661..b53a7e1 100644
--- a/include/dahdi/kernel.h
+++ b/include/dahdi/kernel.h
@@ -107,7 +107,7 @@
#define DAHDI_MIN_CHUNKSIZE DAHDI_CHUNKSIZE
#define DAHDI_DEFAULT_CHUNKSIZE DAHDI_CHUNKSIZE
#define DAHDI_MAX_CHUNKSIZE DAHDI_CHUNKSIZE
-#define DAHDI_CB_SIZE 2
+#define DAHDI_CB_SIZE (1 << 3)
/* DAHDI operates at 8Khz by default */
#define DAHDI_MS_TO_SAMPLES(ms) ((ms) * 8)