ActivityPub-federated video streaming platform using P2P directly in your web browser
storage.tmp_persistent
directory in configuration file. You must configure it in your production.yaml: https://github.com/Chocobozzz/PeerTube/blob/develop/config/production.yaml.example#L128
npm run create-transcoding-job
and npm run print-transcode-command
unmaintained scriptsconfig/production.yaml.new
file after the upgrade, which is the fusion between the new PeerTube configuration keys and your current production.yaml
. After a review you can replace your old config/production.yaml
with this new file so you don't have to add new keys manuallyls
option compatibility with FreeBSD #5785
filter:html.client.json-ld.result
hookregister
/unregister
plugin API when installing/uninstalling plugins using script/plugin
scripts (offline mode)@
characterproduction.yaml
or in the configuration page in the web adminx-powered-by
HTTP header in PeerTube response. Can be disabled in PeerTube configurationplaybackRate
in URL (watch page and embed) #5486
adminFlags
, videoQuota
and videoQuotaDaily
user attributesuserUpdater
hook function so external auth plugins can update the user on user login: https://docs.joinpeertube.org/contribute/plugins#add-external-auth-methods
filter:api.user.me.subscription-videos.list.params
& filter:api.user.me.subscription-videos.list.result
#5648
filter:activity-pub.activity.context.build.result
to update ActivityPub JSON-LD contextfilter:activity-pub.video.json-ld.build.result
to update Video
ActivityPub JSON-LD objectaction:activity-pub.remote-video.created
& action:activity-pub.remote-video.updated
to react on remote video creation/updateaction:video-edit.form.updated
fired every time the video upload/import/live/update form values changefilter:video-watch.video-plugin-metadata.result
to add custom video metadata in watch pageaction:video-edit.init
hook now contains a updateForm
attribute in options that you can use to update video upload/import/live/update form valuesgetServerListeningConfig
to get PeerTube listening configuration99+
instead of 99
when having more than 99
notificationsmailto
links500
on invalid short UUID parameter502
HTTP errors in client notifier;threadId
param in URL.m3u8
resolution playlists to fetch private mp4 video file #5677
x-powered-by
HTTP header in PeerTube response. Can be disabled in PeerTube configurationplaybackRate
in URL (watch page and embed) #5486
adminFlags
, videoQuota
and videoQuotaDaily
user attributesuserUpdater
hook function so external auth plugins can update the user on user login: https://docs.joinpeertube.org/contribute/plugins#add-external-auth-methods
filter:api.user.me.subscription-videos.list.params
& filter:api.user.me.subscription-videos.list.result
#5648
getServerListeningConfig
to get PeerTube listening configuration99+
instead of 99
when having more than 99
notificationsmailto
links500
on invalid short UUID parameter502
HTTP errors in client notifierprivate/
subdirectory in videos/
and streaming-playlists/
directoriescd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-5.0.js
cd /var/www/peertube-docker && docker-compose exec -u peertube peertube node dist/scripts/migrations/peertube-5.0.js
config/production.yaml
):
secrets.peertube
configuration:
object_storage.upload_acl
is now a parent key that you must update: https://github.com/Chocobozzz/PeerTube/blob/v5.0.0/config/production.yaml.example#L153
location
for plugin websocket routes: https://github.com/Chocobozzz/PeerTube/blob/v5.0.0/support/nginx/peertube#L135
location
for private videos files: https://github.com/Chocobozzz/PeerTube/blob/v5.0.0/support/nginx/peertube#L217
role
is now role.id
and roleLabel
is role.label
in user responsedescription
in favour of truncatedDescription
when listing videosdescription
when getting a specific video/api/v1/videos/:id/description
endpointsearch.disable_local_search
disables local search in client search bar only and doesn't disable it on server side anymore #5411
filter:activity-pub.remote-video-comment.create.accept.result
socket.sendNotification
and socket.sendVideoLiveNewState
#5239
registerWebSocketRoute
filter:internal.player.p2p-media-loader.options.result
#5318
...
after the truncated video name in miniature/.well-known
URL path #5214
alt + number
web browser hotkeyprivate/
subdirectory in videos/
and streaming-playlists/
directoriescd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-5.0.js
cd /var/www/peertube-docker && docker-compose exec -u peertube peertube node dist/scripts/migrations/peertube-5.0.js
secrets.peertube
configuration. You must fill it before running PeerTube v5location
for plugin websocket routeslocation
for private videos filesrole
is now role.id
and roleLabel
is role.label
in user responsedescription
in favour of truncatedDescription
when listing videosdescription
when getting a specific video/api/v1/videos/:id/description
endpointsearch.disable_local_search
disables local search in client search bar only and doesn't disable it on server side anymore #5411
filter:activity-pub.remote-video-comment.create.accept.result
socket.sendNotification
and socket.sendVideoLiveNewState
#5239
registerWebSocketRoute
filter:internal.player.p2p-media-loader.options.result
#5318
...
after the truncated video name in miniature/.well-known
URL path #5214
alt + number
web browser hotkeyyt-dlp
by default instead of youtube-dl
for new installations (because of much more dev activity)log.log_tracker_unknown_infohash
setting to disable "Unknown infoHash" warningslog.accept_client_log
setting--secondaryColor
CSS variablefilter:api.my-library.video-playlist-elements.list.params
& filter:api.my-library.video-playlist-elements.list.result
#5098
action:video-channel-create.init
action:video-channel-update.init
& action:video-channel-update.video-channel.loaded
action:video-channel-videos.init
& action:video-channel-videos.video-channel.loaded
& action:video-channel-videos.videos.loaded
action:video-channel-playlists.init
& action:video-channel-playlists.video-channel.loaded
& action:video-channel-playlists.playlists.loaded
filter:share.video-embed-code.build.params
& filter:share.video-embed-code.build.result
& filter:share.video-playlist-embed-code.build.params
& filter:share.video-playlist-embed-code.build.result
filter:share.video-embed-url.build.params
& filter:share.video-embed-url.build.result
& filter:share.video-playlist-embed-url.build.params
& filter:share.video-playlist-embed-url.build.result
filter:share.video-url.build.params
& filter:share.video-url.build.result
& filter:share.video-playlist-url.build.params
& filter:share.video-playlist-url.build.result
action:modal.share.shown
filter:job-queue.process.params
& filter:job-queue.process.result
filter:transcoding.manual.resolutions-to-transcode.result
& filter:transcoding.auto.resolutions-to-transcode.result
action:api.video-channel.created
& action:api.video-channel.updated
& action:api.video-channel.deleted
action:notifier.notification.created
share-modal-playlist-settings
& share-modal-video-settings
removeEventListener
player embed apiyt-dlp
by default instead of youtube-dl
for new installations (because of much more dev activity)log.log_tracker_unknown_infohash
setting to disable "Unknown infoHash" warningslog.accept_client_log
setting--secondaryColor
CSS variablefilter:api.my-library.video-playlist-elements.list.params
& filter:api.my-library.video-playlist-elements.list.result
#5098
action:video-channel-create.init
action:video-channel-update.init
& action:video-channel-update.video-channel.loaded
action:video-channel-videos.init
& action:video-channel-videos.video-channel.loaded
& action:video-channel-videos.videos.loaded
action:video-channel-playlists.init
& action:video-channel-playlists.video-channel.loaded
& action:video-channel-playlists.playlists.loaded
filter:share.video-embed-code.build.params
& filter:share.video-embed-code.build.result
& filter:share.video-playlist-embed-code.build.params
& filter:share.video-playlist-embed-code.build.result
filter:share.video-embed-url.build.params
& filter:share.video-embed-url.build.result
& filter:share.video-playlist-embed-url.build.params
& filter:share.video-playlist-embed-url.build.result
filter:share.video-url.build.params
& filter:share.video-url.build.result
& filter:share.video-playlist-url.build.params
& filter:share.video-playlist-url.build.result
action:modal.share.shown
filter:job-queue.process.params
& filter:job-queue.process.result
filter:transcoding.manual.resolutions-to-transcode.result
& filter:transcoding.auto.resolutions-to-transcode.result
action:api.video-channel.created
& action:api.video-channel.updated
& action:api.video-channel.deleted
action:notifier.notification.created
share-modal-playlist-settings
& share-modal-video-settings
removeEventListener
player embed apifalse
boolean attribute (data-is-live
etc) in custom markup