Skip to content

v6.3.0-rc.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@Chocobozzz Chocobozzz released this 06 Sep 08:44
· 284 commits to develop since this release
v6.3.0-rc.1
d12e074

IMPORTANT NOTES

  • Important You need to manually execute a migration script after your upgrade while PeerTube is running.
    The purpose of this migration is to update video files metadata in the database.
    This migration can take a long time if you have many federated/local videos, but is designed to be safe to run multiple times:
    • Classic installation: cd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-6.3.js
    • Docker installation: cd /var/www/peertube-docker && docker-compose exec -u peertube peertube node dist/scripts/migrations/peertube-6.3.js

Maintenance

  • Reduce error and warning logs generated by clients and the federation
  • Introduce peertube_playback_buffer_stalled_count_total OpenTelemetry playback metric
  • Removed access_log: off for static video requests in the nginx configuration template, now the player doesn't use WebTorrent anymore (which was doing a large amount of small HTTP requests)
  • PeerTube introduces a new download API endpoint that remuxes the videos on the fly to merge video and audio streams. A custom rate limit can be configured in the YAML configuration

Plugins/Themes/Embed API

  • Reduce @peertube/peertube-types package size

Features

  • 🎉 Separate HLS audio and video streams 🎉
    • Can be enabled for VODs in the admin configuration for new videos
    • Automatically enabled for lives
    • If enabled, an "Audio only" resolution is available in the HLS player
    • The live can ingest and output an "Audio only" stream
    • Reduce video disk space used since we only store one version of the audio stream
    • The download modal has a new panel so users can easily select the resolution they want to download
  • 🎉 Introduce a transcription widget 🎉
    • Users can open the transcription widget that appears next to the player
    • The transcription is in sync with the video
    • Users can search the transcript and click on a specific segment to automatically jump the video to the appropriate timecode
  • UI/UX:
    • More visible chapter markers in player control bar
    • Add a button to copy server logs in admin
    • Smoother live autoplay: only the player is reloaded
    • Improve channel and account page tab title
  • Support max FPS configuration: the admin can allow videos with more than 60FPS, which is the current default limit
  • Max resolution file preserves input FPS even if < 720p, allowing users to upload and broadcast a 480p resolution at 60FPS
  • Add ability for admins to set multiple proxies for youtube-dl that PeerTube will randomly select
  • Support youtube-dl executable (for example Linux standalone x64 binary that includes additional features like impersonation)
  • Add a cover to the file if the user only downloads the audio version of the video
  • Better resolution label for custom video aspect. For example with a 1920x816 video, we now display 1080p instead of 816p
  • Forward watch page start query param to the OEmbed service so that the embed starts at the correct time
  • Notify local users on when an Internal video is published
  • Add ability for admins to disable federation (disabling ActivityPub endpoints)

Bug fixes

  • Fix broken object storage playlist on file removal
  • Set live tags to replays
  • Fix hidden delete button for original file in videos admin overview
  • Don't crash the embed on player error
  • Prevent embed poster flickering
  • Fix left menu block title ellipsis
  • Fix channel name overflow in *My Videos" page
  • Fix player infinite buffering issues on fast live re-stream
  • Don't display orange resume bar on live miniatures
  • Fix video file object storage detection in admin videos overview
  • Support ActivityPub remote actors with array url field
  • Fix resetting duration filter in search page
  • Use first step Public privacy when publishing lives without having validated the second step
  • Fix studio page responsive
  • Add CORS to oEmbed API