1
Fork 0
galene/CHANGES

172 lines
7.8 KiB
Plaintext

Galene 0.5.1 (unreleased)
* Enable simulcast on Firefox.
* Fix rate control on Firefox.
* Fix corruption after packet reordering when saving to disk.
* Fix the H.264 profile for compatibility with older iPhones.
8 March 2022: Galene 0.5
* Implement third-party (token-based) authentication.
* Implement peer-to-peer file transfer (/sendfile).
* Add a contextual menu to the users list.
* Removed the "Broadcast file" entry in the side menu, it is now
available as a context menu entry and a chat command (/presentfile).
* Add side-menu options for high-quality audio (Opus at 128kbps) and
disabling audio preprocessing.
* Send audio in addition to video when sharing browser tabs.
1 February 2022: Galene 0.4.4
* Update dependencies. Pion WebRTC v3.1.19 fixes a bug that could cause
audio tracks to be discarded under some circumstances.
* Fix a bug that could cause user statuses (raisehand) to be discarded.
* Fix incorrect maxRate value in statistics display.
27 January 2022: Galène 0.4.3
* Fix a locking issue that could cause a deadlock when massive numbers
of clients join at the same time.
* Add support for displaying raised hands (thanks to Sascha Silbe).
* Update the MIME type for AV1 to track recent browsers.
* Avoid overflow during rate estimation.
* More fixes to the disk writer.
1 December 2021: Galène 0.4.2
* Update the samplebuilder to avoid a crash when a single frame is so
large that it overflows the buffer.
* Various other changes that improve the quality of disk recordings.
4 November 2021: Galène 0.4.1
* Create a new file data/config.json with global configuration.
* Remove data/passwd and the -redirect option with entries in config.json;
these are incompatible changes.
* Change the group URL from /group/name to /group/name/, which allows
using relative links. The old URL is redirected to the new one.
* Extend the protocol with the ability to consult the group status before
joining; this allows using the group's displayName before the user has
logged in, and will be required for new authorisation schemes.
* Allow scrolling of the login dialog, useful on small devices.
* Fixed a typo that prevented the group name from being displayed.
* Made failed videos more visible.
* No longer attempt to save passwords in browser JavaScript, it's
insecure and not very useful.
5 September 2021: Galène 0.4
* Implemented simulcast.
* Implemented scalable video coding (SVC) for VP8 and VP9.
* Preliminary support for the AV1 codec.
* Fixed the profile announced for VP9.
* Reworked the disk writer, which should no longer cause corruption
after packet loss.
* Added support for recording H.264 tracks.
* Reworked the signalling protocol, it is now possible to request
different tracks for distinct streams, and there are provisions to
carry user permissions and statuses; this is not yet used by the user
interface.
* Reworked internal signalling; this will hopefully fix issues with
losing tracks under load.
* Added an option to limit the range of UDP ports used by the server.
* Added a close button in every locally-generated video; this allows
closing individual screen shares and simplifies the UI by not creating
close buttons in the top bar.
* The server will now attempt to increase the file descriptor limit at
startup.
* Stats are now exported as JSON and formatted on the client side; the
stats URL is now /stats.html rather than just /stats.
27 April 2021: Galène 0.3.4
* Fixed a bug in the loss estimator. We will now reduce the rate more
aggressively when there is loss in the client->serer direction.
* Fixed display of the chat on some devices.
* Exported the group.Description data structure for the sake of external
configuration tools.
16 April 2021: Galène 0.3.3
* Fixed an off-by-one error that could occasionally lead to a server
crash. Thanks to Louis Gesbert.
* Attempt to negotiate stereo Opus audio.
3 March 2021: Galène 0.3.2
* Fixed compatibility with versions of Go earlier than 1.15 (thanks to
Michael Ströder).
* Fixed a race condition in the disk writer.
26 February 2021: Galène 0.3.1
* We now notice when the TLS certificate has changed on disk; the
certificate can therefore be rotated without a restart.
* We now generate a self-signed certificate if none is found on disk.
18 February 2021: Galène 0.3
* Implemented the command /muteall. This allows muting all users except
yourself.
* Implemented the autolock and autokick user group options, that cause,
a group to be locked or all users to be kicked out when the last
administrator leaves.
* Implemented client-side filters that are run over the video before it
is sent to the server. A pair of mirroring filters are provided,
which are useful when using a mirror in front of a webcam.
* Included a built-in TURN server, which drastically simplifies
deployment in common cases.
* Implemented testing of TURN servers, on both the client and the server
side. Connectivity will be checked by the server every 12 hours, and
by the client whenever a user uses the /relay-test command.
* Group configurations are now checked at startup, and any failures are
logged. This implies that it is no longer possible to use undefined
keys in group definition files (this is a breaking change).
* Reworked the client API, which is now simpler and more uniform.
* Subgroups can now be public.
* Added an option to disable the mirror view, which is useful when writing.
* Ported file playback to Firefox.
* We now display a friendly error message when the user has disabled
WebRTC under Firefox.
* Implemented renegotiation of down streams, which reduces the amount of
flicker in the user interface.
* Fixed a number of race conditions that could cause audio tracks to
become muted or video tracks to freeze.
9 January 2021: Galène 0.2
* We now work around a limitation of the Go runtime that used to cause
a crash on 32-bit architectures.
* Recording to disk now works on Windows too.
* Error handling has been improved. In particular, group operators now
receive a friendly warning when recording to disk fails for some reason.
* It is now possible to configure a group to use codecs such as VP9 and
H.264. The default is still to use VP8 and Opus, as this yields the
best compatibility across browsers. Only VP8, VP9 and Opus can be
saved to disk.
* The command-line option "-relay-only" can be used to specify that all
media traffic should go through a TURN server.
* It is now possible to generate TURN passwords automatically, which
avoids leaking long-term TURN credentials. See the "credentialType"
value "hmac-sha1" described in README.
* The ICE configuration will now be checked periodically, and new
clients will use an updated configuration.
* The client-server protocol has been reworked to be more symmetric
and more secure. It is now documented in the file README.PROTOCOL.
* The stream abort protocol message is now supported in the client->server
direction, making it possible for the client to reject a stream.
* The delay before sending NACKs has been reduced, which gives a major
boost in video quality.
* The play from disk button is not available when the browser doesn't
support the required API. We used to display a cryptic error message
in that case.
* The command-line option -insecure allows using plain HTTP, which is
useful when running behind a reverse proxy.
* When saving to disk to disk, the keyframe interval has been reduced to 4s.
* We now send keepalives after 55s at most, which should fix issues with
reverse proxies timing out the WebSocket.
19 December 2020: Galène 0.1
* Initial release.