Addition of detectors which skip first few frames
of audio before they start to process it helps
to properly handle some Verizon voicemails.
The result of avmd test using this commit is
OK. All PASS [100]
Thi scommit also resolves:
FS-9588 Add script for outbound avmdy
FS-9589 Add resolution info to events
Now avmd detection is done in detector threads
processing audio frames with different resolution
and/or offsets. Detection decision is based on relative
standard deviation which dynamically adjusts to the signal.
Detection of amplitude, frequency and both simultaneously
is enabled and corresponding setting added to the configuration.
Frequency estimates are filtered with median filter.
This commit also resolves:
FS-9539 - Get estimates with different resolution
FS-9513 - Use adjustable thresholds
FS-9502 - Add detection mode setting
FS-9501 - Enable three modes of detection
FS-9407 - Add check of amplitude for NaN before appending to SMA buffer
FS-9139 - Unit test framework
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.
add var=val member lookup usable wherver member_id is valid in api commands
add bgimg to layouts with api command or config for global setting
fix bug with overlap layouts combined with odd sized layers
improve switch_img_fit to take a modifier for fit, streach or both at once
mod_conference new features:
add conference layout "1x1+2x1" and add to layout group grid
add conference flag video-bridge-first-two conference flag
add conference flag video-required-for-canvas to only use avatars for members with video
add conference flag video-muxing-personal-canvas
add conf_verto_ prefix for variables to pass on live array subscription notice
add api command conference foo vid-canvas <member_id|all|last|non_moderator> [<newval>]
add api command conference foo vid-layer <member_id|all|last|non_moderator> [<newval>]
add api command conference foo vid-watching-canvas <member_id|all|last|non_moderator> [<newval>]
changed api command conference foo vid-layout, args are now "<layout name>|group <group name> [<canvas_id>]"
add channel vars you can set before entering conference video_initial_canvas and video_initial_watching_canvas
add many new output status vars to conference list api
add new conference member flag "second-screen"
add config param video-canvas-count
add config param video-super-canvas-label-layers
add config param video-super-canvas-show-all-layers
add config param video-super-canvas-bgcolor
verto client:
add google login
add hipchat js file
conf_verto_hipchatURL= to control what hipchat server appears if any
global device init and overrides
allow passing sessid
add confMan.canvasCount
add handling of multiple canvases and launching them, and controlling all of their layouts
re-layout moderator controls and add support for changing the watching and input canvas and layers
when launching another canvas, watch subscriptions for the original call so we can automatically close the additional window
maintain camera settings on call recovery
The correct incantations to enable certification common name / subject
alternative name verification, per our code, are `subjects_all`,
`subjects_in`, and `subjects_out` in a Sofia profile's
`tls-verify-policy`. What we've had in our examples and documentation
for years are `all_subjects`, `in_subjects`, and `out_subjects`.
The result of this is that we've almost certainly confused people into
using the incorrect forms. Those poor people will believe that they
are verifying the CN/SAN of the received host certificate against the
list in `tls-verify-in-subjects` when in fact they are not.
One clear issue in this case was that the incorrect forms failed to
have any effect without providing any warning or error. This issue
could not have persisted if we had made more noise about incorrect
input.
Given how long this has been broken, it's tempting to alias the
incorrect forms to the correct ones. However this would certainly
break many existing installations that have, because of this error,
never actually tested their setup with CN/SAN validation enabled.
In this commit, we fix the examples and documentation, and add an
error-level log output when unknown values are passed to
`tls-verify-policy`.
Thanks-to: Andrew Patrikalakis <anrp+freeswitch@anrp.net>
Ephemeral ECDH (ECDHE) was supported already. This patch adds Ephemeral
DH (DHE). To enable it, add DH parameters into the private-key file of
your server (agent.pem). For example via:
openssl dhparam -out dh.pem 2048
FS-7561 #resolve
FS-7338: remove libsilk from tree, use system lib instead
FS-7338: change to always use system liblua
FS-7338: remove libbroadvoice from tree, use system lib instead
FS-7338: remove libilbc from tree, use system lib instead
FS-7338: remove libs using system libs from bootstrap
FS-7338: remove libg722_1 from tree, use system lib instead
FS-7338: remove mod_celt, it has be superseded by mod_opus
FS-7338: remove libcodec2 from tree, use system lib instead
FS-7338: remove libopus from tree, use system lib instead
FS-7338: remove libsoundtouch build from tree, use system lib instead
FS-7338: remove flite build from tree, use system lib instead
FS-7338: remove openldap build from tree, use system lib instead
FS-7338: remove libmongoc build from tree, use system lib instead
FS-7338: remove mod_mongo deps that are no longer actually required
FS-7338: remove some dup demo modules and don't include demo code in packages
AMQP(Advanced Message Queueing Protocol) is an event bus protocol
with more info here http://www.amqp.org/about/what
mod_amqp implements the client side of the amqp protocol. Currently
the module supports two separate, but not mutually exclusive usages:
1. Sending a filtered whitelist of events to an AMQP server. The
before the events are sent an amqp routing header is generated so that
downstream subscriptions can subscribe using filters. If the
connection to the remote server is interrupted, the module will
attempt to reconnect.
2. Subscribing to a 'control' channel on the remote AMQP server. When
events are received on this channel if they match a configured filter,
the commands are run locally as api commands. If the filter for the
events being sent to the remote AMQP server include SWITCH_EVENT_API
then the results of the api commands will be sent back to the AMQP
server.
FS-7060 #resolve
Thanks-to: Daniel Bryars <danb@aeriandi.com> and Tim Brown <tim.brown@aeriandi.com>
In certain deployments it might be desirable to remove the User-Agent header from the SIP message.
Set the sofia profile parameter "user-agent-string" to "none" to suppress this header.
mod_v8 is commented out in modules.conf (possibly because it requires
v8 development files installed), but is present in modules.conf. This
commit updates modules.conf.xml to reflect the defaults present in
modules.conf and not try and autoload mod_v8. With this change, the
spurious warning during start up goes away.