add manual_rtp_bugs to profile and chan var and 3 new RTP bugs SEND_LINEAR_TIMESTAMPS|START_SEQ_AT_ZERO|NEVER_SEND_MARKER
RTP_BUG_SEND_LINEAR_TIMESTAMPS = (1 << 3),
Our friends at Sonus get real mad when the timestamps are not in perfect sequence even during periods of silence.
With this flag, we will only increment the timestamp when write packets even if they are eons apart.
RTP_BUG_START_SEQ_AT_ZERO = (1 << 4),
Our friends at Sonus also get real mad if the sequence number does not start at 0.
Typically, we set this to a random starting value for your saftey.
This is a security risk you take upon yourself when you enable this flag.
RTP_BUG_NEVER_SEND_MARKER = (1 << 5),
Our friends at Sonus are on a roll, They also get easily dumbfounded by marker bits.
This flag will never send any. Sheesh....
Stefan Knoblich [Wed, 10 Nov 2010 20:17:02 +0000 (21:17 +0100)]
ftmod_libpri: Major cleanup, enhance configuration checks
- Check D and B-channel availability (could be extended to check B-channel count)
- Drop usage of spri->private_info, use spri->span instead
- Use accessor functions where possible
- Rename ftdmchan to chan where possible
- Various other cleanups
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de> Tested-by: Stefan Knoblich <s.knoblich@axsentis.de>
Paulo R. Panhoto [Wed, 10 Nov 2010 18:27:43 +0000 (16:27 -0200)]
mod_mp4 -- Supports playback of MP4 files.
* depends on libmp4v2 <http://code.google.com/p/mp4v2/>
(originally compiled against v1.6.1)
* File format details:
- Files must be hinted (mpeg4ip can be used to create the hint
tracks).
- Video track encoding must be supported by FS (e.g. H.263)
- Audio track encoding must be PCMU/8000/Mono. The audio track
can be created with this tool:
<https://asteriskvideo.svn.sourceforge.net/svnroot/asteriskvideo/tools/pcm2mp4.cpp>
Moises Silva [Wed, 10 Nov 2010 00:27:45 +0000 (19:27 -0500)]
freetdm: do not declare some sangoma ISDN functions as inline
as that does not work on gcc (Debian 4.3.2-1.1) 4.3.2
and probably other compilers when the inlined function
is not defined in the same compilation unit
Stefan Knoblich [Sun, 7 Nov 2010 23:43:09 +0000 (00:43 +0100)]
ftmod_libpri: First attempt at getting AOC Facility messages going (and minor cleanups)
Requires libpri-1.4.12_beta1 or newer!
Completely untested, AOC-S/D/E ChargingRequest operations are sent to NT (DTAG BRI PTMP),
but rejected with "Unrecognized Operation".
NOTE: FreeTDM core needs support for this to be useful!
Only AOC-E events are decoded and sent to the log.
To enable:
Set (or add) <param name="opts" value="aoc"> in your
libpri_spans span config.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Stefan Knoblich [Sat, 6 Nov 2010 15:08:07 +0000 (16:08 +0100)]
ftmod_libpri: Initial support for BRI and various cleanups + double locking fix
Fixes:
- Fix double locking in check_state(): remove ftdm_mutex_(un)lock calls.
New:
- Add lpwrap_init_bri() to initialize libpri in BRI mode
- Use trunk type to determine PRI/BRI and PTP/PTMP mode (no additional configuration required).
- Improve libpri detection code in configure.ac, check whether libpri is usable
and if BRI support is available (needs more work)
Cleanups:
- Whitespace and indentation cleanups
- Rename str2* functions to parse_*
- Simplify libpri_configure_span() option parsing and bail out on error
- Add "ftdm libpri help" command that displays usage information
- Coding style cleanups and other (minor) changes
Known issues:
- BRI PTMP TE Q.921 link does not go beyond TEI ASSIGNED state,
SABME requests are ignored by NT (EuroISDN DTAG, DAHDI-2.3.0.1, vzaphfc)
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Konrad Hammel [Fri, 5 Nov 2010 17:52:41 +0000 (13:52 -0400)]
freetdm: ss7 - added support for hex characters in calling/called numbers
freetdm: ss7 - added support for no-EC present indicatiation in ACM when 64k unrestricted TMR
Michael Jerris [Wed, 3 Nov 2010 17:57:59 +0000 (13:57 -0400)]
set minimum initital sip t1 timer to 1000ms to work around race condition on retry timer firing before all the things that are supposed to be handled by the timer are set. The base resolution on this timer is 500ms, so doubling up makes sure we always hit the initial retry timer on the next run, where everything should be set. The side effect was, 1/2 the time on a request that did not get immediate response, the timer would be fired and cleared, but the action (sending retry) was never done, and a new timer was not set, causing the request to just sit zombied and never retry. A better solution would be to find and correct the race condition so the timer is never set to early and we never hit this condition.
Michael Jerris [Wed, 3 Nov 2010 15:53:39 +0000 (11:53 -0400)]
add support for NDLB-force-rport=safe param that does force-rport behavior only on endpoints we know are safe to do so on. This is a dirty hack to try to work with certain endpoints behind sonicwall which does not use the same port when it does nat, when the devices do not support rport, while not breaking devices that acutally use different ports that force-rport will break
skypopen: performance improvements in skypopen_protocol.c and alsa/dummy.c . Added pcm*c to alsa/. Let's hope the larger period in dummy.c does not make problems on ubuntu