Commit Graph

160 Commits (1ec8cb41a8170201f45ff0efe65e96aa97e0b8d3)

Author SHA1 Message Date
Joshua Colp 29ee02bfce Only write a received packet out if we are actually bridged to something
19 years ago
Joshua Colp c6977b9983 Merge in VLDTMF support with Zaptel/Core done by the ever great Darumkilla Russell Bryant and the RTP portion done by myself, Muffinlicious Joshua Colp. This has gone through so many discussions/revisions it's not funny but we finally have it!
19 years ago
Joshua Colp 0855df6a5a Only feed a DTMF frame into the core if we need to
19 years ago
Joshua Colp 245aa1a62d Only switch the second alert fd (which is RTCP) to callback mode if it is in use
19 years ago
Joshua Colp 12b6ec4e11 Use an API call (ast_rtp_get_bridged) to return the RTP stream we are bridged to, and also use it in chan_sip so we know to ignore the no RTP activity checking
19 years ago
Joshua Colp da7d969ae1 If the RTP stack is already being operated in callback mode, then suspend it upon switching to P2P callback bridging. Once P2P callback bridging has ended, then restore callback mode.
19 years ago
Joshua Colp ca33d2ecc6 This is the last round of RTP bridge optimizations. Basically it introduces a way that under a straight bridge (ie: no transcoding and no DTMF detection) the core is not touched at all and no frames pass through (not even null frames). This is accomplished by stealing the file descriptors from the channel and using the provided IO context with a custom callback. When a channel is placed on hold this bridge is broken so audio can flow from the core to the other side. When a channel is off hold this bridge is re-established.
19 years ago
Joshua Colp a2e2a51d8d Move the direct bridge write to after the NAT handling code
19 years ago
Joshua Colp c70ed7614a Merge in RTP-level packet bridging. Packet comes in, packet goes out - that's what RTP-level packet bridging is all about!
19 years ago
Kevin P. Fleming 0a27d8bfe5 merge new_loader_completion branch, including (at least):
19 years ago