Commit Graph

255 Commits

Author SHA1 Message Date
Anthony Minessale 2db8f94ab6 skip rtcp addr when mux is set 2015-05-27 06:14:08 -05:00
Michael Jerris 9d68cab2ac FS-7456: also more complete fix for FS-7440, handle sdp with m lines in any order 2015-04-21 12:07:54 -04:00
Michael Jerris 753030acf5 handle m=video lines before m=audio 2015-04-17 11:26:15 -05:00
Anthony Minessale f2a5271009 doh 2015-03-27 00:01:05 -05:00
Anthony Minessale 2c92ef31e3 FS-7386
Conflicts:
	src/switch_core_media.c
2015-03-26 23:52:53 -05:00
Anthony Minessale 83dd94193d FS-7166 #resolve 2015-01-23 21:16:47 -06:00
Anthony Minessale 1710214025 enable nat mode for verto when ext-rtp-ip is set 2015-01-23 20:53:00 +00:00
Anthony Minessale 608d3e2425 wtf 2015-01-22 03:09:59 -06:00
Anthony Minessale 90d3cb633c fix media reload on verto and sip re-invites 2015-01-22 03:07:50 -06:00
Anthony Minessale 9fabbabe90 disable hard-mute when a session has a media bug attached 2014-12-22 19:06:12 -06:00
Anthony Minessale 4ce2ce31ca FS-7092 #resolve #comment resolved in master 2014-12-18 00:45:21 -06:00
Anthony Minessale 6dbb4162e8 FS-7086 FS-6798 #resolve 2014-12-13 00:57:14 -06:00
Anthony Minessale d189e983c8 allow 10ms jb 2014-12-12 17:51:34 -06:00
Anthony Minessale 3d515cf49c re-mark cur_payload as negotiated when detected as such by parser or the rtp could stop working on session re-invite 2014-12-12 00:54:52 -06:00
Anthony Minessale 922fd81523 FS-7015 #resolve #comment The code was not properly catching the 0.0.0.0 after changing it to work with ICE SDPs because it was looking in the wrong place for the 0.0.0.0 2014-12-11 17:18:24 -06:00
Anthony Minessale be0e09bd7f only negotiate codecs that were previously negotiated on re-invites unless its intentional to change codecs 2014-12-11 15:03:53 -06:00
Seven Du dd629c1516 add external_video_source to media handle and expose switch_core_media_start_video_thread() to start the core video thread for non-rtp based media 2014-11-12 08:44:20 +08:00
Anthony Minessale a3a80401fd fix regression caused by missing ! char in commit: 4eb5b388 2014-11-07 17:11:47 -06:00
Anthony Minessale 4eb5b38848 fix bug where re-invites needlessly re-init the codec and jb 2014-11-05 11:35:16 -06:00
Anthony Minessale 7ca4ac566c FS-5949 FS-6945 #comment this change should be relevant to both of these issues, please test. This patch improves the hold parsing and ignores connection address of 0 implying hold when ice is present and disables the auto interpretation by the lower level stack of 0.0.0.0 to automatically imply sendonly to allow FS to decide on its own 2014-10-31 13:49:39 -05:00
Anthony Minessale d1e529aefd Add new hard_mute control to allow apps to request low level mute e.g. from the rtp stack level. Its used in mod_conference to avoid reading audio while muted and possibly reduce some transcoding load 2014-10-27 15:13:42 -04:00
Anthony Minessale 12b6940644 update jb command parser 2014-10-24 15:26:44 -05:00
Anthony Minessale 1f9025d446 FS-6926 #resolve #comment please test and reopen if necessary 2014-10-16 17:57:46 -05:00
Anthony Minessale e245e90761 fix some jitterbuffer constants 2014-10-13 13:05:57 -05:00
Anthony Minessale 9bd3bd30d3 FS-6911 #resolve 2014-10-13 10:36:51 -05:00
Hristo Trendev d48057e23f account for lost frames during ptime detection
This allows the "broken ptime" detection to work correctly when packet
loss is present on the wire. In addition to the timestamps this patch
adds frame sequence tracking and corrects the timestamp difference
only as needed and according to the number of lost packets.

FS-6898 #resolve
2014-10-09 11:37:52 +02:00
Anthony Minessale f7210b2402 some more changes relates to new bypass media controls 2014-10-03 18:43:23 -05:00
Anthony Minessale b2ae5f4cc2 few bugs on recent new features 2014-10-03 15:36:23 -05:00
Jeff Lenk d52cb335db fix trivial vs2010 build errors 2014-10-02 19:47:05 -05:00
Anthony Minessale 8db31f976f fix some recovery issues with dynamic payloads 2014-10-02 18:34:00 -05:00
Anthony Minessale 10a3fa55ef %FEATURE add bypass_media_resume_on_hold and bypass_media_after_hold variables to be set to true to enable these functions on a per channel basis 2014-10-02 17:49:09 -05:00
Anthony Minessale 6bfc05b81e FS-6887 #resolve #comment new bug flag always_auto_adjust (also implicitly sets accept_any_packets) 2014-10-02 11:55:53 -05:00
Anthony Minessale 789e1481ed FS-6880 #resolve #comment I would think that in real life once the call agreed on a codec it would only offer the negotiated codecs but we can fix this to always filter for good measure. I am not sure what the ramifications are of filtering responses but I think this patch will do so as well. 2014-10-01 13:03:50 -05:00
Anthony Minessale 24084adf77 %FEATURE Add new feature to filter the SDP on bypass_media calls to remove or limit codecs.
VARIABLE: bypass_media_sdp_filter

Can be set globally or per leg on the inbound side of a bypass_media bridge.

VALID FILTERS:

remove(): Removes the specified codec if it exists in the SDP.
only():   Removes all codecs besides the one specified (providing that it exists in the sdp) (will not remove telephone-event))

EXAMPLE 1 (remove everything leaving only g729):

  <action application="set" data="bypass_media_sdp_filter=only(g729)"/>
  <action application="set" data="bypass_media=true"/>
  <action application="bridge" data="sofia/internal/1238@conference.freeswitch.org"/>

EXAMPLE 2 (remove everything leaving only g729 and also remove dtmf):

  <action application="set" data="bypass_media_sdp_filter=only(g729)|remove(telephone-event)"/>
  <action application="set" data="bypass_media=true"/>
  <action application="bridge" data="sofia/internal/1238@conference.freeswitch.org"/>

EXAMPLE 3 (remove alaw and speex):

  <action application="set" data="bypass_media_sdp_filter=remove(pcma)|remove(speex)"/>
  <action application="set" data="bypass_media=true"/>
  <action application="bridge" data="sofia/internal/1238@conference.freeswitch.org"/>
2014-10-01 01:28:10 +05:00
Hristo Trendev fbe857e6fa fix ptime from known broken endpoints on re-invite
Freeswitch tries to fix timing issues (wrong ptime) on re-invite the same way
it does for the initial invite. This results in small audio glitches, while it
sends a couple of packets with different ptime, before the timing detection
logic figures out the remote (broken) endpoint true ptime.

In order to avoid unnecessary timing changes, this patch overwrites the
advertised ptime from known broken endpoints with the ptime, which was detected
by freeswitch. It does this by checking if the sip_h_X-Broken-PTIME (1.2.x) or
rtp_h_X-Broken-PTIME (master) variables are set.

FS-6644 #resolve
2014-09-30 11:19:35 +02:00
Anthony Minessale 372455c30a FS-6829 #resolve 2014-09-19 02:28:47 +05:00
Anthony Minessale d2f8fca18a FS-6825 #resolve #comment caused by regression in commit 0732c0b0 pertaining to FS-6825 2014-09-17 20:32:18 +05:00
Giacomo Vacca 9215c93827 FS-6785 - pass and use sample rate in switch_core_session_get_payload_code() 2014-09-08 14:26:58 +00:00
Anthony Minessale 5173471b06 nm 2014-08-16 02:00:38 +05:00
Anthony Minessale cb928cdf37 fix typo 2014-08-16 01:52:03 +05:00
Anthony Minessale b2162142f3 FS-6667 #comment block sending audio when dmachine is reading 2014-08-06 01:21:34 +05:00
Anthony Minessale f629b5ed63 always start payloads at 102 to avoid webrtc funk 2014-08-02 00:59:44 +05:00
Anthony Minessale 502ddd312a FS-6702 #resolve 2014-07-29 22:17:02 +05:00
Anthony Minessale 0732c0b027 FS-6631 #resolve 2014-07-29 03:04:29 +05:00
Anthony Minessale e7700c0ac4 FS-6665 #resolve #comment This should fix it 2014-07-18 22:05:15 +05:00
Mike Jerris 6dca24bb2a Merge pull request #5 in FS/freeswitch from ~KATHLEEN.KING/freeswitch-fork:clang-warnings-werror to master
* commit '1affff9db4aaa29ab66f9f5db76f575eeabd86b5':
  Fixed a clang-3.5 missing-prototype warning and added doxygen documentation for switch_channel_set_presence_data_vals. #doxygen
  Fixed dead code.
  Fixed trucation of value warning.
  Removed a useless called to abs.
  Removed an autological-pointer-compare from src/switch_utils.c.
  Fixed trucation of value warning.
2014-07-14 17:38:21 -05:00
Anthony Minessale 831d5892b9 preserve timer name for recovery 2014-07-03 23:50:14 +05:00
Kathleen King 89f7196a6e Fixed trucation of value warning.
There was a parameter mismatch between abs(), which expects an int,
and atol() which returns a long. Since max_drift is defined as an int,
there is no need to pars q as a long rather than an int.
2014-07-03 10:53:19 -07:00
Anthony Minessale b9a51bbf91 FS-6632 Trying to actually use opus in stereo broke pretending to use it in stereo 2014-06-25 21:19:07 +05:00
Anthony Minessale faeb00368e verto bug fixing in codec negotiation and some stereo codec stuff 2014-06-20 01:41:28 +05:00