20707 Commits

Author SHA1 Message Date
Steve Underwood
13fbaf7e0f Tweaks for spandsp 2012-03-29 23:33:11 +08:00
Anthony Minessale
7c7967fbae FS-4055 --resolve this was caused by corrupted db data, this patch will prevent it in the future 2012-03-29 10:07:34 -05:00
Anthony Minessale
175b6b223a FS-4049 working 2012-03-28 18:45:01 -05:00
Stefan Knoblich
a856d81a06 ftmod_misdn: More reworking of b-channel audio tx handling.
Use the amount of audio data received in misdn_read() to determine how many
bytes we need to send to the b-channel (= how much free space is left
in the b-channel tx queue). (This is how libosmo-abis and LCR handle it too.)

A pipe is used as a poll()-able audio tx buffer (filled in misdn_write()):
FTDM_WRITE wait requests are currently poll()-ed on the input side of the pipe,
whereas FTDM_READ and _EVENT requests are poll()-ed on the b-channel socket itself.

For every N-bytes of audio data read from the b-channel in misdn_read(),
we try to get as much out of the tx pipe, convert it into the ISDN_P_B_RAW
format and send it to the b-channel socket.

If there's less than N-bytes left in the pipe, we fill the remaining buffer
with silence to avoid buffer underflows.

B-Channel handling overview:

  - misdn_wait(FTDM_WRITE) on audio pipe

  - misdn_write() put audio data into pipe

  - misdn_wait(FTDM_READ) for next incoming mISDN
    message on b-channel socket

  - misdn_read() handle mISDN event, for PH_DATA_IND:

      - Write data into channel buffer and convert
        to a/u-law using misdn_convert_audio_bits()

      - Try to fetch N-bytes from audio pipe

      - If not enough bytes in pipe: fill remaining space with silence

      - Convert audio to raw format

      - Send to b-channel (PH_DATA_REQ)

Known problems / bugs / further investigation:

   1. Bridge aborted by "Write Buffer 0 bytes Failed!" error from switch_core_io.c.
      This is "fixed" by _not_ setting the b-channel sockfd to non-blocking mode.

   2. Audio glitches (maybe caused by FTDM_WRITE misdn_wait() handling or blocking I/O on sockfd?)

   3. misdn_read() EBUSY error messages from sending data to b-channel sockfd after enabling channel.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-03-28 23:49:55 +02:00
Anthony Minessale
d5e7e8491c FS-4049 alt patch 5 2012-03-28 16:00:11 -05:00
Anthony Minessale
c4c46eece7 FS-4049 alt patch 4 2012-03-28 15:42:36 -05:00
Anthony Minessale
c909ed6cf1 FS-4049 alt patch 3 2012-03-28 15:10:58 -05:00
Anthony Minessale
1932f852ee FS-4049 alt patch 2 2012-03-28 14:51:09 -05:00
Anthony Minessale
cf47982e0e FS-4049 alt patch 2012-03-28 14:29:39 -05:00
Anthony Minessale
973a39e07f FS-4049 revert 2012-03-28 14:28:05 -05:00
Anthony Minessale
09bb0bab6a FS-4050 --resolve 2012-03-28 13:52:43 -05:00
Anthony Minessale
80b18bb266 FS-4049 2012-03-28 13:41:48 -05:00
Anthony Minessale
fb1d45b4bb FS-4049 try this 2012-03-28 12:43:13 -05:00
Anthony Minessale
ce75bf5aaa FS-4025 --resolve 2012-03-28 12:26:29 -05:00
Anthony Minessale
2baed0ab00 FS-4016 --resolve 2012-03-28 12:24:19 -05:00
Anthony Minessale
185f08ca56 revert 19d3e646368ee5fa1fc8f88c475d3063c4ae740a 2012-03-28 11:57:21 -05:00
Steve Underwood
7b9e4ff674 Various updates to spandsp tests
spandsp logging now passes an opaque pointer to the logging routine, to
increase flexibility. Right now the pointer is set to NULL in all calls.
2012-03-28 23:36:30 +08:00
Steve Underwood
c1203b5863 Tweak spandsp tests 2012-03-28 21:45:20 +08:00
Steve Underwood
3e2bea0f1c Lots of little improvements to the spandsp test suite 2012-03-28 21:43:13 +08:00
Anthony Minessale
2c8ca5cfdb add sync 2012-03-27 18:48:16 -05:00
Anthony Minessale
6f6765b8f2 start one msg thread per cpu by default 2012-03-27 16:48:30 -05:00
Anthony Minessale
ed19343618 enhance 722f1060 with windows specific way 2012-03-27 16:32:56 -05:00
Anthony Minessale
07122bd17c FS-4032 --resolve please try to avoid the whitespace changes by using git diff -w 2012-03-27 15:53:09 -05:00
Ken Rice
2b6aa7fd04 FS-4015 --resolve 2012-03-27 15:40:05 -05:00
Anthony Minessale
859a332602 FS-4045 try this patch 2012-03-27 15:23:12 -05:00
Ken Rice
c1f3ff998f opps missed an include 2012-03-27 14:24:58 -05:00
Ken Rice
a1ed759b1c try to make compiler -Werror hush 2012-03-27 14:11:41 -05:00
Ken Rice
57fac728c6 make compiler stop complaining 2012-03-27 13:58:27 -05:00
Anthony Minessale
46810f58d3 FS-4049 try this 2012-03-27 13:08:49 -05:00
Anthony Minessale
2da9450a8b FS-4048 --resolve 2012-03-27 10:18:08 -05:00
Anthony Minessale
d308694201 after f7f9a43a4056b7fb238ecfa0b7266b8c844f140f missing a bunch of code changes 2012-03-26 16:41:49 -05:00
Anthony Minessale
a239914926 addition to a6a3ff1dc5574ded096ac1427cd7c6992d14092f 2012-03-26 10:53:39 -05:00
Ken Rice
3e3acf2fa7 make configs work from in the source tree if needed 2012-03-26 10:48:03 -05:00
Ken Rice
100135fc8d fix vm-sync target 2012-03-26 10:45:43 -05:00
Jeff Lenk
80dda3567d FS-4046 --resolve windows xml vanilla thanks 2012-03-26 08:34:42 -05:00
William King
c31a799dd6 This line shouldn't have been in the last commit. The vlc write support is not ready yet. 2012-03-24 14:11:49 -07:00
William King
6ef6d2419e mod_vlc adding faster response time to files. No longer has a one second delay before audio starts to play. 2012-03-24 14:09:24 -07:00
William King
e4788c1d88 Cleaning up docs and moving the docs to the wiki. 2012-03-24 12:09:16 -07:00
Jeff Lenk
ebb636f340 fix path with prebuilt windows installers 2012-03-24 12:55:32 -05:00
Travis Cross
8edfd01066 merge conf/ reorganization, CentOS spec update, and CI scripts 2012-03-24 05:16:47 +00:00
Ken Rice
4f10c4135c ci/centos: add erlang module support files 2012-03-24 05:15:11 +00:00
William King
29426bc23e ci: add debian source package building script 2012-03-24 05:15:11 +00:00
Ken Rice
3b4023c6d3 ci: add continuous integration helper scripts 2012-03-24 05:04:41 +00:00
Ken Rice
e7d047242f centos: rework CentOS spec files
* break out modules
 * conform to FHS
 * support CentOS v5
2012-03-24 04:52:58 +00:00
Ken Rice
08d8a1a79b bump FS version to 1.1.beta1 2012-03-24 04:52:58 +00:00
Ken Rice
cac6c262bb conf: add config files to module directories
The idea here is that the config files in the module directories will
serve as the canonical documentation of all module configuration
options.
2012-03-24 04:51:08 +00:00
Ken Rice
f65140661c conf: add config styles: curl, insideout, sbc, softphone 2012-03-24 04:48:34 +00:00
Jeff Lenk
f85eb0d61f conf: setup change for windows with vanilla conf 2012-03-24 04:14:19 +00:00
Ken Rice
ee71daa1f6 conf: mv conf/* -> conf/vanilla/* 2012-03-24 03:19:32 +00:00
Anthony Minessale
d5ad86706f FS-4023 --resolve makes sense thx 2012-03-23 19:05:20 -05:00