IMPORTANT NOTES
- Important: You must update your nginx configuration to add the
upload-resumable
endpoint: https://github.com/Chocobozzz/PeerTube/blob/develop/support/nginx/peertube#L81 - Important: Due to a bug in ffmpeg, PeerTube is not compatible with ffmpeg 4.4. See #3990
- Important: Drop NodeJS 10 support
- PeerTube is not compatible with NodeJS 16 yet
- By default, HLS transcoding is now enabled and webtorrent is disabled. We suggest you to reflect this change.
See the documentation for more information - PeerTube client now displays bigger video thumbnails.
To fix old thumbnails quality, runregenerate-thumbnails
script after your PeerTube upgrade: https://docs.joinpeertube.org/maintain-tools?id=regenerate-thumbnailsjs
Docker
- Support SSL database env parameter #4114
Maintenance
- Support
X-Frame-Options
header, enabled by default in the configuration - Directly use
node
in systemd template - Check ffmpeg version at PeerTube startup
- Add
upload-resumable
nginx endpoint: https://github.com/Chocobozzz/PeerTube/blob/develop/support/nginx/peertube#L81
CLI tools
- Add
regenerate-thumbnails
script to regenerate thumbnails of local videos
Plugins/Themes/Embed API
- Theme:
--submenuColor
becomes--submenuBackgroundColor
- Support HTML placeholders for plugins. See the documentation for more information
player-next
next to the PeerTube player
- Support storing files for plugins in a dedicated directory. See the documentation for more information
- Transcoding:
- Plugin settings:
- Add ability to register
html
andselect
setting - Add ability to hide a plugin setting depending on the form state
- Add ability to register
- Plugin form fields (to add inputs to video form...):
- Add ability to hide a plugin field depending on the form state using
.hidden
property
- Add ability to hide a plugin field depending on the form state using
- Add client helpers:
getServerConfig()
getAuthHeader()
- Add server helpers:
config.getServerConfig()
plugin.getBaseStaticRoute()
plugin.getBaseRouterRoute()
plugin.getDataDirectoryPath()
user.getAuthUser()
- Add client plugin hooks (https://docs.joinpeertube.org/api-plugins):
action:modal.video-download.shown
action:video-upload.init
action:video-url-import.init
action:video-torrent-import.init
action:go-live.init
action:auth-user.logged-in
&action:auth-user.logged-out
action:auth-user.information-loaded
action:admin-plugin-settings.init
- Add server plugin hooks (https://docs.joinpeertube.org/api-plugins):
filter:api.download.video.allowed.result
&filter:api.download.torrent.allowed.result
to forbid downloadfilter:html.embed.video-playlist.allowed.result
&filter:html.embed.video.allowed.result
to forbid embedfilter:api.search.videos.local.list.params
&filter:api.search.videos.local.list.result
filter:api.search.videos.index.list.params
&filter:api.search.videos.index.list.result
filter:api.search.video-channels.local.list.params
&filter:api.search.video-channels.local.list.result
filter:api.search.video-channels.index.list.params
&filter:api.search.video-channels.index.list.result
Features
- 🎉 Most robust uploads using a resumable upload endpoint #3933
- Accessibility/UI:
- 🎉 Redesign channel and account page
- 🎉 Increase video miniature size
- 🎉 Add channel banner support
- Use a square avatar for channels and a round avatar for accounts
- Use account initial as default account avatar #4002
- Prefer channel display in video miniature
- Add support button in channel page
- Set direct download as default in video download modal #3880
- Show less information in video download modal by default #3890
- Autofocus admin plugin search input
- Add
1.75
playback rate to player #3888 - Add
title
attribute to embed code #3901 - Don't pause player when opening a modal #3909
- Add link below the player to open the video on origin instance #3624
- Notify admins on new available PeerTube version
- Notify admins on new available plugin version
- Sort channels by last uploaded videos
- Video player:
- Add channel and playlist stats to stats endpoint #3747
- Support
playlistPosition=last
and negative index (playlistPosition=-2
) URL query parameters for playlists #3974 - My videos:
- Add ability to sort videos (publication date, most viewed...)
- Add ability to only display live videos
- Automatically resume videos for non logged-in users #3885
- Admin plugins:
- Show a modal when upgrading a plugin to a major version
- Display a setting button after plugin installation
- Add ability to search live videos
- Use bigger thumbnails for feeds
- Parse video description markdown for Opengraph/Twitter/HTML elements
- Open the remote interaction modal when replying to a comment if we are logged-out
- Handle
.srt
captions with broken durations - Performance:
- Player now lazy loads video captions
- Faster admin table filters
- Optimize feed endpoint
Bug fixes
- More robust comments fetcher of remote video
- Fix database ssl connection
- Remove unnecessary black border above and below video in player #3920
- Reduce tag input excessive padding #3927
- Fix disappearing hamburger menu for narrow screens #3929
- Fix Youtube subtitle import with some languages
- Fix transcoding profile update in admin config
- Fix outbox fetch with subtitled videos
- Correctly unload a plugin on update/uninstall #3940
- Ensure to install plugins that are supported by PeerTube
- Fix welcome/warning modal displaying twice
- Fix h265 video import using CLI
- Fix context menu when watching a playlist
- Fix transcoding job priority preventing video publication when there are many videos to transcode
- Fix remote account/channel "joined at"
- Fix CLI plugins list command options #4055
- Fix HTTP player defaulting to audio resolution
- Logger warning level is "warn"
- Fix default boolean plugin setting #4107
- Fix duplicate ffmpeg preset option for live
- Avoid federation error when file has no torrent file
- Fix local user auth select
- Fix live ending banner display
- Fix redundancy max size
- Fix broken lives handling