v2.8.0

MightyMoud/sidekickv2.8.0Apr 1, 2023by m1k1o

AI Summary

This release focuses on performance improvements and mobile support, introducing NVENC hardware encoding, touch events, and URL parameters for embedding and volume control. It also includes various bug fixes for audio, networking, and key mapping, alongside updates to Go and Node.js dependencies.

Key Highlights

  • NVENC support for Nvidia GPU hardware acceleration
  • Mobile touch events support
  • URL parameters for embedding (`?embed=1`) and volume control (`?volume=0-1`)
  • Fixed client-side WebRTC ICE gathering for port-less usage

New Features

  • AV1 tag and pipeline (experimental)
  • Adaptive framerate streaming
  • KDE-specific improvements (disabled autolock)
  • Improved Chinese and Korean character support
  • Fixed stereo audio output in Chromium-based browsers

Full Release Notes

### New Features
- Added AV1 tag, metadata and pipeline. Unfortunately does not work yet, since the encoding is way too slow (by @mbattista).
- Added `m1k1o/neko:kde` tag as an alternative to `m1k1o/neko:xfce`.
- New VirtualGL version 3.1 was released, adding support for Chromium browsers to use Nvidia GPU acceleration!
- Added `?embed=1` parameter to the URL, which will hide the sidebar and the top bar, so that it can be embedded in other websites.
- Added `?volume=<0-1>` parameter to the URL, which will set the inital volume of the player (by @urbanekpj).
- Touch events are now supported on mobile devices (by @urbanekpj).
- Added NVENC support, hardware h264 encoding for Nvidia GPUs!
- Fixed an issue where `nvh264enc` did not send SPS and PPS NAL units (by @mbattista).

### Bugs
- Fixed TCP mux occasional freeze by adding write buffer to it.
- Fixed stereo problem in chromium-based browsers, where it was only as mono by adding `stereo=1` to opus SDP to clients answer.
- Fixed keysym mapping for unknown keycodes, which was causing some key combinations to not work on some keyboards.
- Fixed a bug where `max_fps=0` would lead to an invalid pipeline.
- Fixed client side webrtc ICE gathering, so that neko can be used without exposed ports, only with STUN and TURN servers.
- Fixed play state synchronization, when autoplay is disabled.

### Misc
- Updated to go 1.19 and Node 18, removed go-events as dependency (by @mbattista).
- Added adaptive framerate which now streams in the framerate you selected from the dropdown.
- Improved chinese and korean characters support.
- Disabled autolock for kde, so that it does not lock the screen when you are not using it.
- Refactored autoplay, so that it will start playing audio, if it's allowed by the browser (by @urbanekpj).
- Renamed pulseaudio sink from `auto_null` to `audio_output`, because it was ignored by KDE.
- Pulseaudio is now configured using environment variables, so that users can mount `/home/neko` without losing audio configuration.