Merge branch 'master' into event-handlers
Added support for (some) RTP extensions
Allow plugins to send out-of-context events (no associated session/handle) to event handlers
Aligned with new v0.2.0
Merge branch 'master' into plugins-json
Changed naming of threads, fixed wav header in audiobridge recording, anticipated sessions stuff in Janus startup (to avoid issues when some of the transport plugins drag and requests start arriving)
Added plugin configuration for whether or not to shoot plugin-specific events (even when global configuration is yes)
Fixes for 64-bit identifiers
More events, in particular from other plugins than the EchoTest, and added examples to the sample handler plugin
Optimization of core-to-plugin communication
Merge branch 'master' into recording-codecs
use JANUS_VALIDATE_JSON_OBJECT() and related helpers in all plugins
Support for other codecs and formats in recorder and post-processor
Reset the hangingup flag in plugin when a new negotiation occurs (to account for cases when hangup_media arrives without a prior setup_media)
Don't free the static exit_message message when shutting down plugins
Use static exit_message for plugin handler threadsUse conditions to handle/break the main Janus loop
Use g_async_queue_pop for handler threads in other plugins as well
Added fix from #366 and #367 to other plugins as well
Fixed detection of Opus and VP8 payload types in some cases
Use janus_get_real_time instead of janus_get_monotonic_time for a few things
Converted memory allocations to GLib ones, and fixed a couple of leaks
Changed default value of hangingup when creating plugin sessions to false
Better management of hangingup flag in plugins (issue #297)
Made hangingup checks in plugins atomic (see issue #297)
Fixed deadlock in videocall pluginFixed hangup_media not being invoked in some plugins when preceded by destroy_session (see issue #297 and #298)
Fixed occasional problems with double detaches (as evidenced in #260)
Updated memory leaks in all plugins as per #179
Version 0.0.8 of JanusPlugins now need to initialize via JANUS_PLUGIN_INIT;Plugins with old compatibility are rejected by the core;New plugin callback to be notified about slow links (too many NACKs);Fixed file-based streaming (a-law, u-law) in Streaming plugin;...
Some cleanups and fixes, especially on session destruction
Fixed broken NACK behaviour, made shutdown faster and added summary to configure
Added some doxygen documentation for the plugins APIs as well
Added switching a-la MCU to the streaming plugin as well (live RTP only)Clearer logging of threads in all plugins
Moved some includes for easier plugin building
Plugin API change: compatibility check and admin-related session handle query
Several changes and fixes, mostly to address the new feature added in #114
Further changes to the other threads (plugin and core)
Experimental IPv6 support and new Recorder/Playout pluginAdded experimental IPv6 support for media;Added a new plugin to record and then replay WebRTC sessions;Several fixes on memory leaks, especially in plugins;Some more fixes scattered across the project
Several changes and fixesFixed configure.ac for default plugin dependencies;Renamed configuration files as samples, and added a 'make configs' target to turn them into configuration files (and avoid overwriting them at each 'make install');Replaced all sprintf with g_snprintf (issue #60)...
Added experimental support to RabbitMQ as a transport for the Janus API
New synchronous API for plugin messaging and preliminary NACK supportAdded the possibility of implementing synchronous messaging with plugins, as an alternative to the asynchronous mechanism (send message, wait for event);Implemented preliminary support for direct handling of NACK feedback;...
Staticise plugin globals
Aligned some glib usage to the recent cleanup
core: Fix old-style function definitions
And add a warning flag to prevent new ones being introduced.
plugins: #define packet templates to allow format placeholder checking
The compiler is not clever enough to perform format placeholder checkingon static const strings, so use #defined string constants instead.
janus: Don’t pass const strings to variables which are later freed
janus: const-correctness fixes
Added first version of admin/monitor/overview API (issue #41, disabled by default)
Added a basic recording functionality plugins can useAdded a new helper to allow plugins to record RTP media frames in a structured way;Added a simple external utility to post-process those recordings to a webm or opus file;Integrated the recording functionality in the Video MCU plugin, and added a new configuration value to selectively enable/disable the feature
Experimental WebSockets support and several other changesOptional support for WebSockets (experimental) using libwebsock;Added an API command in the AudioBridge and VideoMCU plugins to destroy rooms besides creating them;Added an optional secret value in the AudioBridge and VideoMCU plugins to check who's authorized to manipulate rooms;...
Fixed typo in the VoiceMail plugin
Better error management in plugins and other changesImproved error management in plugins by adding error codes;Some changes in the events being notified by the VideoMCU plugin;SIP guests can now specify a username;Some attempted fixes in the core
Several changes to the coreAdded clearer messages when the format of the parameters in requests is wrong;Added the possibility to specify the session ID when creating a session, rather than having Janus create a random one;Added a maxev long poll parameter to group events to notify in an array, if more than one becomes available;...
Added support for Data ChannelsAdded a first integration of Data Channels (strings only for now)Modified Echo Test and Video Call demos to include Data ChannelsUpdated documentation and FAQGeneral bug fixing here and there
Several changes in the SIP pluginSeveral improvements in the SIP plugin (fixed segfaults, made configuration more generic, added option to accept and decline calls, improved UI, etc.)General bugfixing in the core itself
Added BUNDLE support and fixed Trickle ICEAdded BUNDLE support;Fixed Trickle ICE and made the default in JS (can be disabled by passing trickle:false);Added util methods for manipulating flags bitmasks
Exclude list for interfaces, Trickle ICE, fix for Firefox and VideoMCU, etc.Added a way to exclude interfaces or IP addresses for ICE gathering in the gateway (e.g., to exclude VMware interfaces);Added preliminary support to Trickle ICE (disabled by default in janus.js until we know for sure it works fine, can be overridden by passing trickle=true when doing a createOffer or createAnswer);...
Version 0.0.2, several fixes and improvementsSeveral improvements on memory management (allocations, memory leaks, etc.);Added levels for logging and debugging;Cosmetic changes to the demos (e.g., bitrate in Video MCU feeds)
New demo (screen sharing) and bugfixesFixed some force closes when closing sessions;Added more documentation (e.g., how to deploy Janus);Added a description of each demo to the HTML pages;Added a new demo (screen sharing) that makes use of the existing Video MCU plugin;...
Several changes and improvements
Made the install.sh script smarter in checking dependencies;Added a STUN test request at startup, when enabled;Added an option to specify the public IP of the machine, and fixed the information put in the c-lines accordingly;...