Commit Graph

12689 Commits

Author SHA1 Message Date
Chocobozzz b4f4432459
Viewers federation protocol v2
More efficient than the current one where instance is not fast enough to
send all viewers if a video becomes popular

The new protocol can be enabled by setting env
USE_VIEWERS_FEDERATION_V2='true'

Introduce a result field in View activity that contains the number of
viewers. This field is used by the origin instance to send the total
viewers on the video to remote instances. The difference with the
current protocol is that we don't have to send viewers individually to
remote instances.

There are 4 cases:
 * View activity from federation on Remote Video -> instance replaces
   all current viewers by a new viewer that contains the result counter
 * View activity from federation on Local Video -> instance adds the
   viewer without considering the result counter
 * Local view on Remote Video -> instance adds the viewer and send it to
   the origin instance
 * Local view on Local Video -> instance adds the viewer

Periodically PeerTube cleanups expired viewers. On local videos, the
instance sends to remote instances a View activity with the result
counter so they can update their viewers counter for that particular
video
2023-12-20 10:55:47 +01:00
Chocobozzz a73f476c8a
We don't need cookies for REST API 2023-12-20 10:55:47 +01:00
Chocobozzz dbdc20e673
Optimize views endpoint
Lazy write data in redis
2023-12-20 10:55:47 +01:00
Chocobozzz eba9528391
Optimize async middleware
Avoid using bluebird, a simple for/await is enought
2023-12-20 10:55:47 +01:00
Chocobozzz 9e0efe45ff
Improve tests 2023-12-20 10:55:28 +01:00
Chocobozzz 7b23f24b24
Fix thumbnail generation when on bad input seek 2023-12-19 08:23:38 +01:00
Chocobozzz c93b7088c2
Fix downloading video files from object storage
With title that contains non ISO 8859 characters
2023-12-19 07:26:09 +01:00
Chocobozzz c72d5ead39
Fix big play button skin applied to settings menu 2023-12-18 09:36:22 +01:00
Chocobozzz a043de80d2
Fix build concurrency issue 2023-12-18 09:36:08 +01:00
Chocobozzz 1e121c9898
Fix invalid state change notif of remote live 2023-12-15 15:58:07 +01:00
Chocobozzz 4662badde7
Fix privacy error on live update without privacy 2023-12-15 15:51:59 +01:00
Chocobozzz af8a47125f
Better isNewVideo variable/functions name 2023-12-15 14:52:12 +01:00
Chocobozzz bd1dd8fd95
Reload overviews page on logout 2023-12-15 11:23:03 +01:00
Chocobozzz 675f219639
Fix webtorrent crash
See https://github.com/Chocobozzz/PeerTube/issues/6109
2023-12-15 10:18:20 +01:00
Chocobozzz ea685879bb
Fix time to int parsing 2023-12-15 09:54:08 +01:00
Chocobozzz edc695263f
Escape quotes for html attributes 2023-12-14 11:33:08 +01:00
Chocobozzz 63c4a02ce0
Fix views events with lives 2023-12-14 11:12:18 +01:00
Chocobozzz d5fd8227b4
Avoid sending seek event on video start time 2023-12-14 09:52:50 +01:00
Chocobozzz 1aab639928
Bumped to version v6.0.2 2023-12-11 09:09:56 +01:00
Chocobozzz d72ac67bcd
Update changelog 2023-12-11 08:56:19 +01:00
Chocobozzz 5ca370e395
Fix lint 2023-12-08 14:04:20 +01:00
Chocobozzz 83e1e4dfb2
Fix backward compat upgrade script 2023-12-08 11:16:43 +01:00
Chocobozzz ba050fb0df
Fix displaying many countries 2023-12-08 11:07:49 +01:00
Chocobozzz 8031504212
Fix updating started live error 2023-12-08 10:20:15 +01:00
Chocobozzz ff338f7dda
Fix embed when waiting for a live 2023-12-08 10:13:08 +01:00
Chocobozzz b39214cb13
Fix tests 2023-12-08 09:34:35 +01:00
Chocobozzz e06e2da187
Fix cpu count when cpu info not available 2023-12-08 09:13:16 +01:00
Chocobozzz 64d9b7abd2
Fix client tests 2023-12-08 09:13:12 +01:00
Chocobozzz 83cba14a61
Originally published and reupload date consistency 2023-12-08 08:59:47 +01:00
Chocobozzz 8a22cfd628
Fix client URLs for channels and accounts 2023-12-08 08:57:14 +01:00
Chocobozzz 2fde12d7e1
Fix profile page JSONLD 2023-12-08 08:41:14 +01:00
Alejandro cf843c3f12 Text corrections 2023-12-06 08:45:06 +01:00
Alejandro 6966f37c4b Corrected reference to production.yaml 2023-12-06 08:45:06 +01:00
Chocobozzz 4fd8d34175
Ensure user is owned by plugin before updating it 2023-12-06 08:43:19 +01:00
Chocobozzz c6047e1573
Add missing logger tags 2023-11-29 16:31:29 +01:00
Chocobozzz f51bafb3fa
Fix chapters tests 2023-11-29 15:01:46 +01:00
Chocobozzz f9e710e7d4
Fix chapters import 2023-11-29 14:12:13 +01:00
Julien Rabier 7a953a6b2f Fix upgrade.sh when Peertube is installed outside the standard path (fixes #6063) 2023-11-29 11:03:44 +01:00
Chocobozzz d897a04565
Bumped to version v6.0.1 2023-11-29 10:20:14 +01:00
Chocobozzz 67cfea4270
Fix changelog 2023-11-29 10:19:33 +01:00
Chocobozzz df2d931f66
Update changelog 2023-11-29 10:18:47 +01:00
Chocobozzz ba56aadb63
Regenerate storyboard after studio 2023-11-29 09:58:20 +01:00
Chocobozzz 4826cb2c69
Add missing jobs in jobs list 2023-11-29 09:37:57 +01:00
Chocobozzz bda1d751a5
Add warning for web_videos directory name 2023-11-29 09:28:12 +01:00
Chocobozzz 9f9522e865
Fix release script 2023-11-29 08:33:39 +01:00
Chocobozzz 6c89755d04
Fix changelog 2023-11-29 08:16:19 +01:00
Chocobozzz ee6844d718
Fix web videos directory important notes 2023-11-29 08:10:26 +01:00
Chocobozzz c900788e59
Remove async-lru cache for jsonld
jsonld library has already a cache
2023-11-29 06:51:29 +01:00
Chocobozzz a5bdce80f6
Keep increasing storyboard generation ttl 2023-11-28 15:42:48 +01:00
Chocobozzz e25f7b97e9
Typo in changelog 2023-11-28 14:18:35 +01:00