PeerTube 3.0.1

Federated video streaming platform, that's based on ActivityPub and P2P (BitTorrent) stream distribution technology. Individual video hosting instances profiteer from shared communities and content caching.

Tags javascript angularjs web video hosting activitypub
License Affero GPLv3
State development

Recent Releases

3.0.113 Jan 2021 07:05 minor feature: Important retrieving data of another user if the username contains _ when fetching my information. Upgrade documentation. Add live RTMP port in docker compose. Account feed URL. Log RTMP server error (address already in use). NPM theme links in admin theme page. Don't reject AP actors with empty description. Twitter admin config description. Duplicate entry in job list page. nl-NL broken admin config page. Bad tracker client IP when using a reverse proxy.
3.0.008 Jan 2021 13:05 minor feature: Update the default configuration to not federate unlisted videos. We recommend to admins to update this setting. Update the default configuration to remove remote video views to reduce DB size and improve performances. We recommend to admins to update this setting. Remove deprecated video abuse API. Refresh nginx configuration #3313. Replace traefik by nginx in our docker-compose template: Better consistency with our default setup (we now use the same stack) Use our default nginx template enabling many optimizations Update the documentation to take into account this change: https://docs.joinpeertube.org/install-docker . Better consistency with our default setup (we now use the same stack). Use our default nginx template enabling many optimizations. Update the documentation to take into account this change: https://docs.joinpeertube.org/install-docker. Add ability for auth plugins to redirect user on logout #32 #33. Add input-password setting to plugins #3375. Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): filter:api.accounts.videos.list.params filter:api.accounts.videos.list.result filter:api.video-channels.videos.list.params filter:api.video-channels.videos.list.result . filter:api.accounts.videos.list.params. filter:api.accounts.videos.list.result. filter:api.video-channels.videos.list.params. filter:api.video-channels.videos.list.result. Authenticate the user if possible in plugin router #3400. Support live streaming #3250. Create a live video using the PeerTube interface and start streaming using your favorite streaming software (OBS, ffmpeg...) If the admin allows it, add ability for users to save a replay of their live Support live transcoding in multiple resolutions Admins can set a limit of created lives per user/instance and a duration limit This is the first step of live streaming, we'll consolidate the feature next year . Create a live video using the PeerTube interface and start streaming using your favorite streaming software
3.0.0-rc.117 Dec 2020 09:25 minor feature: The minimum ffmpeg version required is now 4.1. Deprecate static routes that will be removed in 3.0 (you may not have to do anything if you used paths returned by the video REST API): /static/avatars/: use /lazy-static/avatars/ instead. /static/previews/: use /lazy-static/previews/ instead. /static/video-captions/: use /lazy-static/video-captions/ instead. . /static/avatars/: use /lazy-static/avatars/ instead. /static/previews/: use /lazy-static/previews/ instead. /static/video-captions/: use /lazy-static/video-captions/ instead. Use playlistPosition URL parameter for playlists instead of videoId to set the current playlist position. Better error message on PostgreSQL connection error. Add ssl option support for PostgreSQL connection. Player video annotation (alpha). Add embed API (https://docs.joinpeertube.org/#/api-embed-player): playNextVideo method playPreviousVideo method getCurrentPosition method . playNextVideo method. playPreviousVideo method. getCurrentPosition method. Embed URL parameters Add ability to disable PeerTube link in embed using an URL param (peertubeLink=0) . Add ability to disable PeerTube link in embed using an URL param (peertubeLink=0). Add plugins support in embed. Add client plugin hooks (https://docs.joinpeertube.org/#/api-plugins): action:embed.player.loaded (for embed) . action:embed.player.loaded (for embed). Add custom fields in video update/upload form using registerVideoField (https://docs.joinpeertube.org/#/contribute-plugins?id=add-custom-fields-to-video-form). Moderation: Add ability to report comments and accounts. Add messaging system between local reporter of an abuse and moderators so they can easily communicate. Users can now see their abuse reports, and have notifications when an abuse state changed (accepted/rejected) or when moderators added a new message. Add embed to block list details @rigelk in #2926 . Add ability to report comments and accounts. Add messaging system between local reporter of an a
2.4.009 Sep 2020 13:25 minor feature: The minimum ffmpeg version required is now 4.1. Deprecate static routes that will be removed in 3.0 (you may not have to do anything if you used paths returned by the video REST API): /static/avatars/: use /lazy-static/avatars/ instead. /static/previews/: use /lazy-static/previews/ instead. /static/video-captions/: use /lazy-static/video-captions/ instead. . /static/avatars/: use /lazy-static/avatars/ instead. /static/previews/: use /lazy-static/previews/ instead. /static/video-captions/: use /lazy-static/video-captions/ instead. Use playlistPosition URL parameter for playlists instead of videoId to set the current playlist position. Better error message on PostgreSQL connection error. Add ssl option support for PostgreSQL connection. Player video annotation (alpha). Add embed API (https://docs.joinpeertube.org/#/api-embed-player): playNextVideo method playPreviousVideo method getCurrentPosition method . playNextVideo method. playPreviousVideo method. getCurrentPosition method. Embed URL parameters Add ability to disable PeerTube link in embed using an URL param (peertubeLink=0) . Add ability to disable PeerTube link in embed using an URL param (peertubeLink=0). Add plugins support in embed. Add client plugin hooks (https://docs.joinpeertube.org/#/api-plugins): action:embed.player.loaded (for embed) . action:embed.player.loaded (for embed). Add custom fields in video update/upload form using registerVideoField (https://docs.joinpeertube.org/#/contribute-plugins?id=add-custom-fields-to-video-form). Moderation: Add ability to report comments and accounts. Add messaging system between local reporter of an abuse and moderators so they can easily communicate. Users can now see their abuse reports, and have notifications when an abuse state changed (accepted/rejected) or when moderators added a new message. Add embed to block list details @rigelk in #2926 . Add ability to report comments and accounts. Add messaging system between local reporter of an a
2.4.0-rc.128 Aug 2020 06:45 minor feature: Add client_overrides directory in configuration file. You must configure it in your production.yaml. Deprecate /videos/abuse endpoint. A new endpoint to report videos will be created in PeerTube 2.4 and will also allow to report accounts and comments (/videos/abuse will be removed in 3.0). Renamed videos blacklist feature to videos blocks/blocklist. Add feeds routes to the openapi spec @rigelk. Add notifications routes to the openapi spec @rigelk. Add redundancy routes to the openapi spec @rigelk. Add plugins routes to the openapi spec @rigelk. Add examples, descriptions and missing filters for abuses routes in the openapi spec @rigelk. Update CentOS insutructions in dependencies.md @cgarwood82 in 2904. Switched image processing library from native dependency sharp to pure JS implementation jimp. Admins don't have to compile sharp anymore and jimp is lighter. Provide specific engine boundaries for NodeJS and Yarn @rigelk in 0c4bacb. Add ability to set database.name config option @gramakri in #2898. POSTGRES env variables in docker-compose. OpenDKIM permissions in docker-compose setup @kimsible in #2868. Auto block videos (alpha). Add ability to override client assets: logo - favicon - PWA icons - PWA manifest name and description @kimsible in #2897. Add global search support (has to be explicitely enabled by admins). Add ability for admins to display a banner on their instance. Support Vietnamese and Kabyle languages. Also re-establish Occitan language locale despite lack of support in Angular. Federation: Make federation of unlisted videos an instance-level server preference @Tak in #2802 Sort ActivityPub video object files by resolution in descending order Send complete video description in ActivityPub video objects . Make federation of unlisted videos an instance-level server preference @Tak in #2802. Sort ActivityPub video object files by resolution in descending order. Send complete video description in ActivityPub video objects. Moderation: Add abilit
2.3.022 Jul 2020 06:05 minor feature: Add client_overrides directory in configuration file. You must configure it in your production.yaml. Deprecate /videos/abuse endpoint. A new endpoint to report videos will be created in PeerTube 2.4 and will also allow to report accounts and comments (/videos/abuse will be removed in 3.0). Renamed videos blacklist feature to videos blocks/blocklist. Add feeds routes to the openapi spec @rigelk. Add notifications routes to the openapi spec @rigelk. Add redundancy routes to the openapi spec @rigelk. Add plugins routes to the openapi spec @rigelk. Add examples, descriptions and missing filters for abuses routes in the openapi spec @rigelk. Update CentOS insutructions in dependencies.md @cgarwood82 in 2904. Switched image processing library from native dependency sharp to pure JS implementation jimp. Admins don't have to compile sharp anymore and jimp is lighter. Provide specific engine boundaries for NodeJS and Yarn @rigelk in 0c4bacb. Add ability to set database.name config option @gramakri in #2898. POSTGRES env variables in docker-compose. OpenDKIM permissions in docker-compose setup @kimsible in #2868. Auto block videos (alpha). Add ability to override client assets: logo - favicon - PWA icons - PWA manifest name and description @kimsible in #2897. Add global search support (has to be explicitely enabled by admins). Add ability for admins to display a banner on their instance. Support Vietnamese and Kabyle languages. Also re-establish Occitan language locale despite lack of support in Angular. Federation: Make federation of unlisted videos an instance-level server preference @Tak in #2802 Sort ActivityPub video object files by resolution in descending order Send complete video description in ActivityPub video objects . Make federation of unlisted videos an instance-level server preference @Tak in #2802. Sort ActivityPub video object files by resolution in descending order. Send complete video description in ActivityPub video objects. Moderation: Add abilit
2.3.0-rc.107 Jul 2020 19:05 minor feature: /! VERY IMPORTANT /! We added a unique index on actors usernames to some federation. Please check now if you have conflicts: Go inside your database using sudo -u postgres psql peertube_prod and run select "preferredUsername" from actor where "serverId" is null group by "preferredUsername" having count(*) 1; If you have some results, it seems you have duplicate channels/accounts. For every entry, you'll have to change the preferredUsername of the entry you want (so they are unique). The updated actors could have some federations. Go inside your database using sudo -u postgres psql peertube_prod and run select "preferredUsername" from actor where "serverId" is null group by "preferredUsername" having count(*) 1;. If you have some results, it seems you have duplicate channels/accounts. For every entry, you'll have to change the preferredUsername of the entry you want (so they are unique). The updated actors could have some federations. Changed auto_follow_index setting configuration: you now have to use the complete URL in index_url. If you used the default one, you now need to use https://instances.joinpeertube.org/api/v1/instances/hosts. This way, you can also use a direct raw URL (Gitlab, Github, pastebin, etc.) using a simple text format and easily maintain small communities or instance recommendation lists. PeerTube requires NodeJS v10 or v12. Add redundancy CLI: https://docs.joinpeertube.org/#/maintain-tools?id=peertube-redundancyjs. Add ability to pass remaining options to youtube-dl binary in peertube-import script. Important HLS storage configuration: https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/config/production.yaml#L48. Add DKIM support to Docker. Add nginx configuration to redirect videos to an S3 bucket and update of the corresponding documentation. Add embed API (https://docs.joinpeertube.org/#/api-embed-player): playbackState can be ended playbackStatusUpdate has a duration field setCaption and getCaptions method
2.2.003 Jun 2020 18:25 minor feature: /! VERY IMPORTANT /! We added a unique index on actors usernames to some federation. Please check now if you have conflicts: Go inside your database using sudo -u postgres psql peertube_prod and run select "preferredUsername" from actor where "serverId" is null group by "preferredUsername" having count(*) 1; If you have some results, it seems you have duplicate channels/accounts. For every entry, you'll have to change the preferredUsername of the entry you want (so they are unique). The updated actors could have some federations. Go inside your database using sudo -u postgres psql peertube_prod and run select "preferredUsername" from actor where "serverId" is null group by "preferredUsername" having count(*) 1;. If you have some results, it seems you have duplicate channels/accounts. For every entry, you'll have to change the preferredUsername of the entry you want (so they are unique). The updated actors could have some federations. Changed auto_follow_index setting configuration: you now have to use the complete URL in index_url. If you used the default one, you now need to use https://instances.joinpeertube.org/api/v1/instances/hosts. This way, you can also use a direct raw URL (Gitlab, Github, pastebin, etc.) using a simple text format and easily maintain small communities or instance recommendation lists. PeerTube requires NodeJS v10 or v12. Add redundancy CLI: https://docs.joinpeertube.org/#/maintain-tools?id=peertube-redundancyjs. Add ability to pass remaining options to youtube-dl binary in peertube-import script. Important HLS storage configuration: https://github.com/Chocobozzz/PeerTube/blob/develop/support/docker/production/config/production.yaml#L48. Add DKIM support to Docker. Add nginx configuration to redirect videos to an S3 bucket and update of the corresponding documentation. Add embed API (https://docs.joinpeertube.org/#/api-embed-player): playbackState can be ended playbackStatusUpdate has a duration field setCaption and getCaptions method