Commit Graph

33150 Commits

Author SHA1 Message Date
Liyang 720128b61e FS-11310 #resolve add more params for conference record stop event 2018-08-04 01:17:55 +08:00
Liyang ce6366474f FS-11310 #resolve add optional switch_core_file_pre_close() to stop writing to file and possible to get file size related params 2018-08-03 21:54:47 +08:00
Mike Jerris 8f4831a8c6 Merge pull request #1560 in FS/freeswitch from ~ANDYWOLK/freeswitch:FS-11303-migrate-visual-c-components-redistribution to master
* commit '144bbec7fded8318750cfa9595631505dcdcb097':
  FS-11303: [Build-System] Migrate Visual C++ components redistribution using merge modules from v140 to v141 (VS2017), minor cleanup.
2018-08-01 17:52:03 +00:00
Andrey Volk 144bbec7fd FS-11303: [Build-System] Migrate Visual C++ components redistribution using merge modules from v140 to v141 (VS2017), minor cleanup. 2018-08-01 18:49:24 +03:00
Mike Jerris 36468ee6f4 Merge pull request #1540 in FS/freeswitch from ~ANDYWOLK/freeswitch:feature/FS-11271-add-mod_cdr_mongodb-to-the-windows to master
* commit '87f004bc1688d03960bcc77212d504ab9124122d':
  FS-11271: [Build-System] Add mod_cdr_mongodb to the Windows build.
2018-07-31 21:54:43 +00:00
Andrey Volk 87f004bc16 FS-11271: [Build-System] Add mod_cdr_mongodb to the Windows build. 2018-08-01 00:52:01 +03:00
Mike Jerris 263c699f61 Merge pull request #1559 in FS/freeswitch from ~ANDYWOLK/freeswitch:bugfix/FS-11298-fix-win32-build-under-visual-studio to master
* commit '13421eea17e76568df3d289f8c00f91d33c30e7a':
  FS-11298: [Build-System] Fix Win32 build under Visual Studio.
2018-07-31 21:37:33 +00:00
Andrey Volk 13421eea17 FS-11298: [Build-System] Fix Win32 build under Visual Studio. 2018-08-01 00:18:09 +03:00
Mike Jerris e91528943a Merge pull request #1558 in FS/freeswitch from ~ANDYWOLK/freeswitch:feature/FS-11297-add-mod_cidlookup-to-the-windows to master
* commit '21b135cc161caafb67563a74028f027b861aca69':
  FS-11297: [Build-System] Add mod_cidlookup to the Windows build.
2018-07-31 21:11:21 +00:00
Andrey Volk 21b135cc16 FS-11297: [Build-System] Add mod_cidlookup to the Windows build. 2018-07-31 23:20:14 +03:00
Mike Jerris 3931e8b68c Merge pull request #1557 in FS/freeswitch from ~ANDYWOLK/freeswitch:bugfix/FS-11295-mod_av-fix-wrong-path-to-yasm.exe to master
* commit '6712f3998fad7604b197fbc7168e3feb4a36fba8':
  FS-11295: [mod_av] Fix wrong path to yasm.exe
2018-07-30 21:03:07 +00:00
Andrey Volk 6712f3998f FS-11295: [mod_av] Fix wrong path to yasm.exe 2018-07-30 23:44:55 +03:00
Mike Jerris d3b27cb680 Merge pull request #1555 in FS/freeswitch from ~ANDYWOLK/freeswitch:bugfix/FS-11288-refactor-wix-project-to-not-miss to master
* commit 'e08406d1c40782325c96eccb3c3afb7b360c935f':
  FS-11288: [Build-System] Refactor WIX project to not miss modules in msi on slow machines. Move Windows build logic from legacy util.vbs to modern props. Fix sound packages improper extraction. Fix multiprocessor build under msbuild.
2018-07-30 20:11:49 +00:00
Mike Jerris 69ef3dd057 Merge pull request #1556 in FS/freeswitch from ~ANDYWOLK/freeswitch:bugfix/FS-11294-fix-mod_av-build-on-windows to master
* commit '5f61553da7916ec08739fb3c2537de572a67977e':
  FS-11294: [mod_av] Fix mod_av build on Windows.
2018-07-30 20:10:23 +00:00
Andrey Volk 5f61553da7 FS-11294: [mod_av] Fix mod_av build on Windows. 2018-07-30 22:58:05 +03:00
Andrey Volk e08406d1c4 FS-11288: [Build-System] Refactor WIX project to not miss modules in msi on slow machines. Move Windows build logic from legacy util.vbs to modern props. Fix sound packages improper extraction. Fix multiprocessor build under msbuild. 2018-07-27 18:56:46 +03:00
Chad Phillips 96af587bf3 FS-11287: Provide option for user managed streams in Verto
The Verto libs currently have total control over the streams associated with
placing any kind of call, handling both their creation and teardown
automatically.

This patch provides the option for a developer to instead pass pre-created
MediaStream objects when instantiating the Verto object, or when calling
Verto.newCall(), and the library will bypass the work of creating those
streams, and of destroying those streams when the call is torn down.

This is particularly useful if the application wants to manage its own streams,
such as re-using them in other non-Verto aspects of the application.

The patch also creates some internal convenience functions for managing the
video element related to a local video stream.
2018-07-26 17:03:24 -05:00
Mike Jerris a380f125e1 Merge pull request #1551 in FS/freeswitch from fs-10450 to master
* commit '6e76f630fd69f1dad0e5abb69a1cf7326a9c96cf':
  FS-10450 #resolve fix zero and negative file duration
2018-07-26 20:40:22 +00:00
Mike Jerris 2ecd4425be Merge pull request #1550 in FS/freeswitch from fix-sofia-warning to master
* commit '9a0a594d07f1a3654fba130db882fafec274e79e':
  FS-11278 #resolve fix if clause does not guard compiler warning
2018-07-26 20:39:28 +00:00
Chad Phillips 61cdf63617 FS-11286: Add onRemoteStream callback to Verto dialogs
This patch adds an onRemoteStream callback, which can be specified on the Verto
instance, or per dialog. The callback is fired when the remote stream from a
call is received, and receives two arguments, the first is the remote stream,
the second is the Verto dialog object.
2018-07-26 15:34:53 -05:00
Chad Phillips ef647e3e3e FS-11285: OverconstrainedError on some Android front cameras when frameRate.min is specified
As described at https://bugs.chromium.org/p/chromium/issues/detail?id=862325,
some Android devices using Chrome fail a getUserMedia() request when
frameRate.min is specified.

This is due to a bug in both the device (reporting a 0 min frameRate), and
Chrome, which fails to catch this and set a reasonable fallback value.

While a fix has gone into Chrome, it might be awhile before this fix makes it
into their stable release, so filing this with my quick hack to prevent the
error on Android devices.

Note this fix could certainly be more robust (maybe detect Chrome version, or
some test to see if min frameRate from the device returns 0), and it gets the
job done as a start.
2018-07-26 15:02:29 -05:00
Chad Phillips 31641749a7 FS-11284: Fix legacy/broken video constraints for specifying a video deviceId
getMediaParams() was using a legacy version of the video constraint param to
specify a deviceId.

checkRes() was incorrectly setting video constraints such that it was not
properly testing specific video devices.
2018-07-26 14:36:02 -05:00
Chad Phillips 954b2564b2 FS-11283: iOS doesn't support beforeunload, use recommended pagehide for that platform
$.verto.unloadJobs queue leverages the 'beforeunload' event to perform work
prior to browser page unload.

However, iOS does not support that event. Its equivalent event is 'pagehide'.

This patch uses the pagehide event on iOS, and beforeunload for all others.
2018-07-26 14:19:28 -05:00
Chad Phillips 5038ca7613 FS-11282: Remove iOS 'controls' hack, not needed
iOS requires a 'playsinline' attribute to be added to video tags, however a
'controls' attribute was erroneously added, and is unneeded.

See https://github.com/webrtc/samples/issues/929#issuecomment-330816567 and
following comments for confirmation.

Removing this attribute reduces UI noise and 'click contention' on video
elements.
2018-07-26 14:06:30 -05:00
Chad Phillips 5f96f669c2 FS-11281: Verto.newCall dialog callback overrides should be set before invite
Verto.newCall() permits passing custom callback functions per call that
override the default dialog callbacks inherited from the Verto object.
However, they are currently set after calling the invite() function, and it's
possible that some of these callbacks could be called during the invite()
function's execution.

To avoid a race condition, move setting these custom callbacks on the dialog
to happen before calling invite().
2018-07-26 13:51:27 -05:00
Chad Phillips 36d9f7bc5e FS-11280: Allow overriding permissionCallback per Verto dialog
Currently the 'permissionCallback' object is only available at the Verto
instance level. This is problematic in multi-call scenarios, where an
individual call dialog needs access to the onGranted/onDenied callback
functions.

The patch adds a check for existence of onGranted/onDenied callback functions
at the dialog level, with a fallback to the original behavior of calling
onGranted/onDenied from the Verto instance if it's not available on the dialog.
This preserves backwards compatibility while allowing per-dialog overrides
going forward.
2018-07-26 13:37:32 -05:00
Seven Du 9a0a594d07 FS-11278 #resolve fix if clause does not guard compiler warning 2018-07-26 11:24:40 -05:00
Chad Phillips c83f7871fa FS-11276: dedicated video layers can no longer become audio floor holder
In mod_conference 1.6.x, all conference users could get the audio floor
regardless of the kind of video layer they were placed in.

In 1.8.x, the concept of a 'dedicated video layer' was introduced, such that
video layout slots with a reservation ID or a role ID are marked with the
'MFLAG_DED_VID_LAYER' member flag when a member is in the slot, and such
marked layers are prevented from becoming the conference audio/video floor
holder.

This makes sense for the video floor in all circumstances, and the audio floor
in most circumstances.

However, there are some circumstances where allowing users in these dedicated
video layers to become the conference audio floor holder is preferred, such as
when all slots in the layout have reservation IDs, and the audio floor events
are used to manage users in those slots manually.

This adds a conference profile flag, 'ded-vid-layer-audio-floor, which, when
enabled, allows conference members in dedicated video layers to become the
conference audio floor holder.
2018-07-25 20:43:05 -05:00
Seven Du 6e76f630fd FS-10450 #resolve fix zero and negative file duration 2018-07-25 16:58:56 -05:00
Mike Jerris d5af929660 Merge pull request #1509 in FS/freeswitch from ~THEHUNMONKGROUP/freeswitch:feature/FS-11117-allow-passing-float-values-to-font_scale to master
* commit 'fecb5d364e09e7daf4fd9ffd1eb31eac6f475b8f':
  FS-11117: font_scale float values, add min/max_font_size when setting video banner
2018-07-25 19:30:57 +00:00
Mike Jerris 4b5a514ba4 Merge pull request #1355 in FS/freeswitch from ~THEHUNMONKGROUP/freeswitch:feature/FS-10554-add-conference-api-command-vid-res-id-force to master
* commit 'cc084c9fb461a9180eeda0f428f0dbeac59db143':
  FS-10554: Refactor conference vid-res-id command, add 'force' option
2018-07-25 19:26:37 +00:00
Chad Phillips cc084c9fb4 FS-10554: Refactor conference vid-res-id command, add 'force' option
The 'conference vid-res-id' sub command previously used the CONF_API_SUB_MEMBER_TARGET
command parsing strategy. The standard options exposed by that strategy didn't make
sense for this sub command, so it's now been switched to use the CONF_API_SUB_ARGS_SPLIT
command parsing strategy.

A third, optional 'force' argument has also been added. The default behavior of the
command is to toggle the user in and out of a reservation slot, use the force argument
to ensure the user is placed into the reservation slot provided.

The new signature of the sub command is:

  vid-res-id <member_id> <val>|clear [force]
2018-07-25 14:24:30 -05:00
Chad Phillips fecb5d364e FS-11117: font_scale float values, add min/max_font_size when setting video banner
Previously, the font_scale parameter available for the video_mute_banner/video_banner_text
conference channel variable would only accept integer values. It now can accept float
values for more fine grained control, eg:

  <action
    application="set"
    data="video_banner_text={font_scale=.75}Banner Text"
  />

Add params to set min_font_size and max_font_size for video banners.

The hard-coded defaults of 5/24 for min/max font size don't always look good
depending on the layout use case. This adds min_font_size and max_font_size
params for more fine-grained control, eg:

  <action
    application="set"
    data="video_banner_text={min_font_size=8,max_font_size=14}Banner Text"
  />
2018-07-25 10:26:38 -05:00
Chad Phillips 1fc0836565 FS-11149: Playing video files assigned a res_id not correctly updated on layout change
Regular conference members that are assigned a reservation ID in a layout
are automatically placed in that same reservation ID upon change of a layout.

However, playing files that are assigned a reservation ID are not properly
assigned to the same reservation ID upon layout change.

This patch makes the behavior consistent between the two types.
2018-07-25 10:18:01 -05:00
Chad Phillips c037fc8c55 FS-9258: Recursive calls to $.verto.rpcClient.speedTest() don't work
Assigning the speedTest callback funtion to a local variable and unsetting
the this.speedCB instance variable prior to calling the callback function
allows the rpcClient.speedTest functionality to be used more creatively
(such as calling it recursively for multiple runs) without affecting existing
functionality.
2018-07-24 21:05:09 -05:00
Mike Jerris 78aec0fe81 Merge pull request #1539 in FS/freeswitch from ~ANDYWOLK/freeswitch:bugfix/FS-11189-windows-build-regression to master
* commit '5c4211e43d69191e9d83a19fb9f47e6b90c5d804':
  FS-11189: [Build-System] Windows build regression fix.
2018-07-24 14:47:37 +00:00
Andrey Volk 5c4211e43d FS-11189: [Build-System] Windows build regression fix. 2018-07-24 17:46:38 +03:00
Mike Jerris ea40876efd Merge pull request #1538 in FS/freeswitch from ~ANDYWOLK/freeswitch:bugfix/FS-11189-add-video-settings to master
* commit '2323421b5ad25563be7b56adeabf65543f7de2d5':
  FS-11189: [Build-System] Fix Windows build.
2018-07-24 13:13:16 +00:00
Andrey Volk 2323421b5a FS-11189: [Build-System] Fix Windows build. 2018-07-24 16:11:54 +03:00
Mike Jerris bec920c990 FS-11189: [mod_av] fix build on older libav 2018-07-24 07:21:58 +00:00
Mariah Yang 3930250b79 FS-11260 fix set_tts_params segs when the second arg is NULL 2018-07-24 07:21:58 +00:00
Anthony Minessale bf6b61f911 FS-11264: [freeswitch-core] Remove old speech handle when asr failure happens #resolve 2018-07-24 07:21:58 +00:00
Seven Du 6d1b8e12b5 FS-11014 fix fvad_free and validate vad_mode 2018-07-24 07:21:58 +00:00
Anthony Minessale 3323809985 FS-11259: [mod_perl] mod_perl tweaks #resolve 2018-07-24 07:21:58 +00:00
Seven Du 9d0ad92d10 FS-11237 #resolve speak text with colon 2018-07-24 07:21:58 +00:00
Seven Du 12e3b7177c FS-11189 refactor to support any possible codec specific private options 2018-07-24 07:21:57 +00:00
Seven Du 18bcc4ddff FS-11189 add avcodec settings 2018-07-24 07:21:57 +00:00
Seven Du 0ad867f3dd FS-11189 make rtp-slice-size and key-frame-min-freq configurable 2018-07-24 07:21:57 +00:00
Seven Du e19687e0f2 FS-11189 refactor and add more params 2018-07-24 07:21:57 +00:00
Seven Du 1eacc9f418 FS-11189 add vpx codec specific and debug controls 2018-07-24 07:21:57 +00:00