Skip to content


Choose a tag to compare
@Chocobozzz Chocobozzz released this 24 Mar 16:54
· 5875 commits to develop since this release


  • Important: Drop PostgreSQL 9.6 support
  • Important: Deprecate NodeJS 10
  • Important: Migrations for this release could be long. Please plan a downtime
  • Support NodeJS 14 and 15
  • Remove ES5 module support (breaks compatibility with web browsers we didn't support)
  • PeerTube releases now contain client source maps helping client debugging (for developers and admins).
    It's the reason why the release size is bigger (we think it's worth it)
  • Remove deprecated static routes (/static/avatars/, /static/previews/ and /static/video-captions/)
  • PeerTube now uses a unique name for thumbnails, previews and captions allowing to correctly cache these resources.
    It could break some third party clients that guessed these filenames depending on the video UUID. We'll continue this work in the future
    for video filenames, so admins can easily cache these files (using multiple reverse proxies etc)


  • Fix nginx max body size configuration

CLI tools

  • Add script printing command to generate a resolution for a given file #3507
  • Add --wait-interval <seconds> option to video-import script to wait between two video imports #3310

Plugins/Themes/Embed API


  • Transcoding:
    • Fair transcoding jobs priority: give an higher priority to optimize jobs and decrease priority of transcoding jobs depending on the amount of videos uploaded by the user during the last 7 days #3637
    • Higher niceness priority for live transcoding compared to vod transcoding #3577
    • Allow admins to choose a transcoding profile. New transcoding profiles can be added by PeerTube plugins that can inject custom ffmpeg encoders/parameters
    • Add transcoding support for 1440p (Quad HD/QHD/WQHD) videos #3518
    • Add transcoding progress in admin transcoding jobs list
    • Use veryfast preset for default transcoding profile (same result size but faster)
    • Transcode audio uploads to lower configured resolutions
    • Transcode HLS playlists in a tmp directory (less bugs/inconsistencies)
    • Allow admins to choose the transcoding jobs concurrency
  • Support Albanian locale
  • Video upload:
    • Async torrent creation on video upload. We hope that it should fix some weird upload errors
    • Add .m4a audio upload support
  • Accessibility/UI:
    • Move orange admin buttons on the left side
    • Hide title to left menu toggle icon
    • Add username information in profile settings
    • Improve about page layout
    • Add refresh button in jobs list
    • Add ability to set a custom user quota
    • Rewrite prose for JavaScript disabled message #3684
  • Video import:
    • Stricter youtube-dl format selectors for import (don't import HDR videos and cap to the max supported resolution) #3516
    • Don't publish imported videos before the user submitted the second step form
    • Allow admins to choose the import jobs concurrency
  • Implement hot and best trending algorithms #3625 & #3681
  • Admin config:
    • Add URL fragment support in admin config page to go on the appropriate tab
    • Improve submit error message
    • Allow admins to disable ping requests logging #3550
    • Add a setting so PeerTube periodically cleans up remote AP interactions
  • Add ability for admins to update plugin auth field of a particular user
  • Support webp avatar upload
  • Implement remote comment/subscription
  • Register a service worker #3464
  • Add ability to remove one's avatar for account and channels #3467
  • Show first decimal for video views above a thousand #3564
  • Allow user to search through their watch history #3576
  • Allow users/visitors to search through an account's videos #3589
  • Use an HTML link to display feed url
  • Allow AP resolution for default account/channel pages (/accounts/:name/video-channels and /video-channels/:name/videos)
  • Redirect to login on 401, display 403 variant #3632
  • Performance:
    • Optimize videos list API endpoint
    • Optimize videos list views sort SQL query
    • Avoid as much as possible to process remote thumbnail
    • Proxify remote torrent requests from local clients (like we do for captions and previews)
    • Optimize rate POST endpoint
  • Tighten hotkeys definitions to not conflict with the web browser hotkeys #3702
  • Add more AP stats to stats endpoint
  • Increase jobs request timeout to 7 seconds
  • Increase broadcast request concurrency to 30

Bug fixes

  • Fix remote subscribe input alignment
  • Fix loading bar for HTTP requests
  • Fix table header overflow
  • Disable wait transcoding checkbox instead of hiding it when uploading an incompatible video for the web
  • Fix sendmail emailer configuration
  • Add missing niceness to ffmpeg thumbnail process
  • Videos with only HLS files:
    • Fix RSS feed
    • Correctly wait transcoding before federating
    • Fix redundancy
    • Correctly remove torrents
  • Localize decimal separator in video miniatures #3643
  • Check banned status on external authentication
  • Remove all video redundancies when purging the cache
  • Fix URI search admin config update
  • Fix broken HLS playback with videos that contain an unknown channel layout
  • Fix HLS generation after file import script
  • Ensure we don't receive things from local actors
  • Try to recover from network errors in HLS player
  • Fix comments sorting dropdown z-index
  • Fix create transcoding job script depending on the transcoding configuration
  • Fix NSFW policy in my videos, account videos and channel videos pages
  • Fix complete description loading of a previous video
  • Fix video comments display with deleted comments
  • Don't override preview image on import
  • Fix Accept AP messages sending to previously accepted followers
  • Fix import script when using the instance uses the search index
  • Fix player freeze on Safari with a video that has many subtitles
  • Fix anonymous user settings
  • Fix preview upload with capitalized ext
  • Fix abuses list crash on deleted video
  • More robust channel change federation
  • Fix emptying video tags
  • Fix broken local actors that do not have a public/private key
  • Fix bad PeerTube URL for playlist embed
  • Live:
    • Don't update live attributes if they did not change (allowing to update live metadata even if the live has started)
    • Fix live RAM usage when ffmpeg is too slow to transcode the RTMP stream
    • Correctly load live information (description and preview) when not started
  • Fix mention notification with deleted comment
  • Fix default boolean plugin setting
  • Fix long text on modals #3840