* Fri Oct 07 2022 michael@stroeder.com
- Update to version 0.6.1:
* Add a camera/microphone indicator in the users list, and hide
audio-only peers by default. They can be reenabled in the side menu.
* Ensure that autolocked groups are locked on creation. Thanks to
Michael Ströder.
* Don't send chat history multiple times. Thanks to Rémy Nollet.
* Fix status display for remote (redirected) groups.
* Sat Sep 10 2022 michael@stroeder.com
- Update to version 0.6:
* Version the protocol: the handshake message now contains a version
number, and the server will warn if it is incorrect. This will become
a hard error in the future.
* Rework the peer-to-peer file transfer protocol. It now lives in
protocol.js, which makes it easy to use by third-party clients.
* Extend the authorization protocol to allow the authorization server to
request that the client fall back to password authorization.
* Make it possible to run the web server on a Unix domain socket.
Thanks to Martin Pépin.
* Check that a given group exists before redirecting from the landing
page. This avoids an unsightly 404 error when the user makes a typo.
* Publish the group name end websocket endpoint in the group status.
This avoids hardwirint the server structure in the client.
* Fix a race condition that could cause chathistory messages to be sent
before the joined status.
* Sat Jul 23 2022 michael@stroeder.com
- Update to version 0.5.5:
* Fixed a longstanding bug with time conversion that would occasionally
cause us to miscalculate rates and send incorrect sender reports.
Thanks to lamhai1401.
* Updated srtp to a version that includes Adrian Cable's optimisations.
This should yield a 10% to 20% improvement for AES-CTR (but modern
browsers use GCM).
* Reworded the Safari warning to be more frightening, since
screensharing on Safari tends to get stuck.
* Tue Jul 12 2022 Michael Ströder <michael@stroeder.com>
- explicitly require go >= 1.16
* Fri May 06 2022 michael@stroeder.com
- Update to version 0.5.4:
* Fix username check when a token is present.
* Improve the performance of AES in CTR mode.
* Tweak detection of keyframes with H.264.
* Mon Apr 25 2022 michael@stroeder.com
- Update to version 0.5.3:
* Remove a forgotten "replace" that prevented 0.5.2 from compiling
unless "pion/ice" was downloaded manually.
* Fix a race condition in the rate estimator.
* Update pion/ice to a version that handles aggressive nomination; this
avoids broken connection in some (fairly rare) cases.
* Wed Apr 20 2022 michael@stroeder.com
- Update to version 0.5.2:
* Implement audio-video sync in the diskwriter.
* Fix setting of the keyframe flag in audio samples in diskwriter.
* Don't use high-quality audio for screenshare by default, obey the
hqaudio preference in all cases.
* Maintain user information for oneself, not just other users.
* Call the onuser callback when a user deletes a stream.
* Fri Mar 25 2022 michael@stroeder.com
- Update to version 0.5.1:
* 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.
* Display a warning when joining a locked group.
* Add a hook that allows the client to influence the ICE policy.
* Fix error handling in peer-to-peer file transfer.
* Tue Mar 08 2022 michael@stroeder.com
- Update to version 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.
* Tue Feb 01 2022 michael@stroeder.com
- Update to version 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.
* Thu Jan 27 2022 michael@stroeder.com
- Update to version 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.
* Update the MIME type for AV1 to track recent browsers.
* Avoid overflow during rate estimation.
* More fixes to the disk writer.
* Wed Dec 01 2021 michael@stroeder.com
- Update to version 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.
* Update dependencies.
* Fri Nov 05 2021 Michael Ströder <michael@stroeder.com>
- adapted AppArmor profile to new config files in 0.4.1
* Fri Nov 05 2021 michael@stroeder.com
- Update to version 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.
* Mon Sep 06 2021 Michael Ströder <michael@stroeder.com>
- avoid switching off IPv6
* Sun Sep 05 2021 michael@stroeder.com
- Update to version 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.
* Mon Jun 07 2021 Michael Ströder <michael@stroeder.com>
- removed madvise from SystemCallFilter=
* Wed May 12 2021 Michael Ströder <michael@stroeder.com>
- Update to version 0.3.5:
* Fixed another bug in the loss estimator.
* Fixed the list of SSRCs sent in REMB packets. This doesn't seem to
have any measurable effect.
* Removed some obsolete code that caused clients to be kicked out when
they lost the Present permission.
* Tue Apr 27 2021 michael@stroeder.com
- Update to version 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.
* Fri Apr 16 2021 michael@stroeder.com
- Update to version 0.3.3:
* Fixed an off-by-one error that could occasionally lead to a server
crash.
* Attempt to negotiate stereo Opus audio.