aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/rtp_proxy.c
AgeCommit message (Collapse)AuthorFilesLines
2010-04-12ipaccess: Send RTP Payload IE for CRCX & MDCXSylvain Munaut1-3/+0
For GSM V1 FR, the payload type is fixed to 3 in the RFC. But for the other codecs, the payload type is dynamically assigned between 96 and 127. Here, we use a static mapping internal to OpenBSC. This patch is needed to make a rather old 139 unit (with sw version 120a002_v149b42d0) work with something else than FR codec. I also tested this patch on a newer 139 (with sw version 120a352_v267b22d0) to make sure it didn't add a regression. More testing with newer EDGE units should be done by whoever has some of theses. Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-03-29[misc] Remove whitespace from the end of the line.Holger Hans Peter Freyther1-1/+1
2010-02-26[rtp] Describe the struct in a way that it will work for Big Endian tooHolger Hans Peter Freyther1-0/+10
Play with the right bits on PPC.
2010-02-20split 'libosmocore' from openbsc codebaseHarald Welte1-3/+3
This library is intended to collect all generic/common funcitionality of all Osmocom.org projects, including OpenBSC but also OsmocomBB The library currently includes the following modules: bitvec, comp128, gsm_utils, msgb, select, signal, statistics, talloc, timer, tlv_parse, linuxlist msgb allocation error debugging had to be temporarily disabled as it depends on 'debug.c' functionality which at the moment remains in OpenBSC
2009-12-28correction of RTP timestamps is a NOTICE event, not debugHarald Welte (local)1-1/+2
2009-12-20fix compiler warning and coding style in rtp_proxyHarald Welte1-2/+3
2009-12-20RTP Proxy: Fix RTP sequence number and timestamp in case of dropped framesHarald Welte1-0/+35
During handover, we will not send RTP frames for quite some time. However, the way the rtp_send code is structured, it will increment the timestamp with a fixed amount every time we send a frame, independent how much wallclock time has actually passed. This code is a hack to update the sequence number and timestamp in case it seems to be wrong. It makes handover much more reliable.
2009-12-19Add RTP support for EFRHarald Welte1-0/+9
This is just the minimal support to receive and send EFR codec RTP frames. We are missing the code to convert TRAU frames in EFR format!
2009-12-19RTP-enable MNCC API for LCR + ip.accessHarald Welte1-5/+222
Instead of passing TRAU frames down the MNCC API to the call control application like MNCC, we now decode the TRAU frame into the actual codec frame. We do the same with the RTP packets in case of ip.access and thus have a unified format of passing codec data from the BTS to an application, independent of the BTS type. This is only implemented for V1 full-rate at the moment, and needs to be fixed.
2009-12-17logging: introduce log levels at caller siteHarald Welte1-1/+1
This introduces a new LOGP() macro together with LOGL_* definition to support multiple log levels (severities) throughout the codebase. Please note that the actual logging system does not use them yet, in this patch we simply introduce the new macros at the caller site.
2009-08-10rtp_proxy: Add two case and a DEBUG statement..Holger Hans Peter Freyther1-1/+6
Handle the case values to make the compiler happy and a runtime warning... This is similiar to other places of the code
2009-07-29Merge commit 'origin/master'Harald Welte1-1/+1
2009-07-29fix typo when using sizeof() to determine the size of the RTCP headerHarald Welte1-1/+1
This was spotted by zecke, thanks.
2009-07-29rtp_proxy.c: Spelling fix, kook -> lookHolger Hans Peter Freyther1-1/+1
2009-07-28add RTP proxy mode for ip.accessHarald Welte1-12/+176
Up until now, we only supported direct RTP streams between ip.access BTS. With this commit, the user can specify '-P' to the command line to enable a RTP/RTCP proxy inside OpenBSC. The nanoBTS will then send all their voice data to OpenBSC, which will relay it to the respective destination BTS (which can be the same BTS). The default behaviour remains unchanged. Without '-P' on the command line, RTP/RTCP is exchanged directly.
2009-07-28add new rtp_proxy code, but not use it yetHarald Welte1-0/+282
The rtp_proxy.[ch] code is intended to be used as a transparent RTP/RTCP proxy, relaying the media streams from one ip.access BTS to another. In an 'ideal' network, this is obviously not needed, since the BTS's can send those streams directly between each other. However, for debugging, 'lawful interception', transcoding or interfacing a TRAU/E1 based BTS, we actually need to process those RTP streams ourselves.