386 Commits

Author SHA1 Message Date
Anthony Minessale
e7758cb724 FS-9247 #resolve [Table with message type names not updated when enum was updated by sangoma patch] 2016-06-09 13:33:38 -05:00
Ken Rice
e18c12b609 FS-8953 [core] white space clean up. 2016-03-17 08:55:00 -05:00
Anthony Minessale
eea76c8856 FS-8130
Port video buffer to also support audio and remove original STFU jitter buffer
Add some more resilience to video packet loss
Add codec control mechanism for both call-specific debug and codec/call specfic params
Make opus function better in packet loss and latent situations
Use new codec control prams to make JB lookahead FEC optionally enabled or disabled mid-call
Add Param to allow JB lookahead to be enabled.
2015-09-14 13:30:08 -05:00
Anthony Minessale
004c5080ab FS-8142 minor formatting mod 2015-09-09 11:41:04 -05:00
Artur Zaprzała
cd4c3188e4 FS-8142 Fix a thread cache thread-safety and caching 2015-09-09 10:42:10 +02:00
Anthony Minessale
a48bccbb09 FS-6833 missing event names in string 2015-09-01 17:17:25 -05:00
Anthony Minessale
3850e467ad FS-8091 #resolve [Missing some message names in switch_core_session.c] 2015-08-28 14:46:45 -05:00
Mike Jerris
5de2f7d7bd FS-7966: multiple fixes for msvc 2015 build, silence multiple warnings 2015-08-27 18:49:13 -06:00
Anthony Minessale
b6a6cde728 FS-7486 2015-07-03 14:22:20 -04:00
Anthony Minessale
6a102816f6 FS-7679 #resolve #comment please test, also added some cases of calling a file with no video as well 2015-06-25 13:33:47 -05:00
Anthony Minessale
2188358832 FS-7500 FS-7499 refactoring while battling chrome 2015-05-28 12:47:34 -05:00
Michael Jerris
f2f03cffc3 CID:1024564: remove unnecessary check 2015-05-28 12:47:24 -05:00
Anthony Minessale
d8e5334a05 FS-7513: add some mutexes on video_read_callback code 2015-05-28 12:47:21 -05:00
Anthony Minessale
6901329760 FS-7500: drop flags on recover 2015-05-28 12:47:17 -05:00
Anthony Minessale
216850c1a0 FS-7502: set video flag on record session 2015-05-28 12:47:14 -05:00
Anthony Minessale
7c294f242f FS-7504: allow <modname>.<codecname> support so multiple modules can exist for the same codec 2015-05-28 12:47:13 -05:00
Anthony Minessale
500b32b343 FS-7509 FS-7514: another round of cleanup 2015-05-28 12:47:06 -05:00
Anthony Minessale
955dd099ca FS-7166 #resolve 2015-05-28 12:46:54 -05:00
Anthony Minessale
6789f37b39 # This is a combination of 2 commits.
# The first commit's message is:

FS-7166 #resolve

# This is the 2nd commit message:

revert
2015-05-28 12:46:54 -05:00
Anthony Minessale
a69938c3d5 FS-7500: factor back in video_thread callback and move it to the video_read_frame 2015-05-28 12:46:53 -05:00
Anthony Minessale
970064294c FS-7500: refactoring 2015-05-28 12:46:50 -05:00
Anthony Minessale
8f0910509f FS-7500: add keyframe req and session refresh req debounce 2015-05-28 12:46:49 -05:00
Anthony Minessale
853873725b FS-7500: factor out the write_image callback and fix the vlc video endpoint to setup and match the audio params of the A leg when bridged 2015-05-28 12:46:48 -05:00
Anthony Minessale
b90d24a05f FS-7513: fix video switching in conference 2015-05-28 12:46:48 -05:00
Anthony Minessale
b8577d0ce9 FS-7500: fix seg and clean up keyframe code 2015-05-28 12:46:48 -05:00
Anthony Minessale
c874fe05d8 FS-7500: SQUASH ME WITH THE LAST ONE 2015-05-28 12:46:47 -05:00
Anthony Minessale
b8ba1a1469 FS-7500: reduce CNG frames on video and move debug from mod_fsv to the core with a flag to enable it since the raw packet is not available anymore when you set DECODED READ flag 2015-05-28 12:46:47 -05:00
Anthony Minessale
c584bf5511 FS-7500: reverse default for CF_VIDEO_ECHO to false and now it must be enabled when desired instead of disabled when not needed 2015-05-28 12:46:47 -05:00
Anthony Minessale
4dc155f164 FS-7500: add switch_core_session_raw_read to put session into raw read mode without needing a local codec var (WE SHOULD REFACTOR MUCH OF switch_ivr_* to use this...) and add echo_decode_audio option to echo app 2015-05-28 12:46:47 -05:00
Anthony Minessale
0cd5658caa FS-7500: another refactoring pass, temp code still in place, WORK IN PROGRESS 2015-05-28 12:46:44 -05:00
Anthony Minessale
365a5dd820 FS-7500: major refactoring pass. Push concepts from mod_vlc as deep as possible and flesh out api to use everywhere else. Round 2 will be to convert the bridge and other places using the same code 2015-05-28 12:46:44 -05:00
William King
4fc94e3907 FS-7500 S-7513: Few build fixes 2015-05-28 12:46:43 -05:00
Seven Du
35ff4b5cda FS-7500: add ability to insert a custom callback to the core video thread
the callback will be called on each loop on read video frame, or
the callback function call run it's own loop to take over the core
loop so it can read video from session by itself.

the callback function can -

return SWITCH_STATUS_SUCCESS to wait another loop
return SWITCH_STATUS_CONTINUE to continue use the default behaviour
return anything else will break the core video loop and end the
       core thread
2015-05-28 12:46:43 -05:00
Seven Du
998d933671 FS-7500: initial idea to decode video in core 2015-05-28 12:46:42 -05:00
Anthony Minessale
83dd94193d FS-7166 #resolve 2015-01-23 21:16:47 -06:00
Nathan Neulinger
f175c71188 FS-6805 add support for logging full timestamps with dialplan, defaults to old behavior unless requested 2014-11-11 13:25:47 -06: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
Patrice Fournier
d1abf274d5 REFER_EVENT is missing from the message names array
REFER_EVENT has been added to switch_core_session_message_types_t
a while ago, but was never added to the message_names[] related array.
2014-08-06 00:04:28 -04:00
Anthony Minessale
25c0f7d00c FS-6440 regression from this patch on single CPU or VM machines causes startup race 2014-06-23 23:55:52 +05:00
Anthony Minessale
0f62c4cd62 FS-6440 --resolve 2014-06-13 05:46:40 +05:00
Anthony Minessale
50dfce2845 FS-6513 --resolve This function was assuming the app was being run with execute_on_media so it did not properly check for established media. Now it will use the scheduler method automatically when this state is detected. 2014-05-29 01:14:28 +05:00
Anthony Minessale
55f8f556fa add heartbeat_fire_on_set variable to fire heartbeat instantly when its first enabled (legacy behavior) 2014-05-20 04:07:47 +05:00
Anthony Minessale
a94f0a3fa6 compute timeout based on fake sample count not real life one 2014-05-20 04:02:03 +05:00
Anthony Minessale
d0de8c0bc6 add heartbeat_use_scheduler variable to force the heartbeat to use the scheduler rather than the media stream and also make it auto-chage between modes when going in and out of the media path 2014-04-29 04:20:51 +05:00
Anthony Minessale
d171e156d7 fix issues with heartbeat in bypass media mode 2014-04-24 23:21:15 +05:00
Anthony Minessale
18df083c69 don't send heartbeat until the first timeout has elapsed rather than instantly 2014-04-18 00:06:24 +05:00
Anthony Minessale
a4a792488b add generic keepalive system and implement it in sofia to send MESSAGE or INFO packets in-dialog at specified interval.
Adds app: enable_keepalive 0|<seconds>
This app can be run in the dialplan or with execute_on_* type variables for B-legs.

Adds sofia param: keepalive-method  : defaults to MESSAGE can also be "INFO"
This param sets which SIP method to use.
2014-04-16 06:10:25 +05:00
Anthony Minessale
b99ef3af01 add SWITCH_MESSAGE_HEARTBEAT_EVENT indication to execute on a session when session heartbeat fires 2014-04-15 21:22:36 +05:00
Anthony Minessale
7151d6acea FS-6402 part 2 2014-04-02 03:21:37 +05:00
Anthony Minessale
5c0cff70b3 FS-6402 --resolve 2014-04-02 01:20:19 +05:00