79 Commits

Author SHA1 Message Date
Chocobozzz
e002b6fcd6 Add channelUpdatedAt list subscriptions sort 2025-02-12 14:37:24 +01:00
Chocobozzz
9b19c6ad3d Fix client build 2025-02-10 16:17:00 +01:00
Chocobozzz
50b067f9cd Separate player in dedicated build
* Separate player in a dedicated build, that we can control using vite.
   We had too many issues with Angular build system and we can now
   have the same build between the embed and the client. We can also
   embed SVG directly in the CSS
 * Upgrade p2p-media-loader to v2
 * Update internal infohashes to reflect this p2p-media-loader protocol
   change (they are updated at PeerTube startup)
 * Minimum required iOS version is now v14
2025-02-10 15:38:20 +01:00
Chocobozzz
260447942a Add ability to put captions in object storage
Deprecate:
 * `path` and `url` of `ActorImage` (used to represent account/channel
   avatars/banners) in favour of `fileUrl`
 * `path` of `AvatarInfo` (used in notifications) in favour of `fileUrl`
 * `captionPath` of `VideoCaption` in favour of `fileUrl`
 * `storyboardPath` of `Storyboard` in favour of `fileUrl`
2025-02-07 09:35:39 +01:00
Chocobozzz
7a4e353718 Add web video redundancy migration 2025-02-04 08:11:54 +01:00
Chocobozzz
cfd8c3c40e Update server dependencies
Breaking: rename parse-log script option `-nt` to `-n`
2025-02-03 10:19:11 +01:00
Chocobozzz
05f105d03f Remove web video redundancy support
It's not used anymore in the player since several major versions now, so
there's no point in continuing to store these video files
2025-01-31 11:13:13 +01:00
Chocobozzz
a4f836c042 Increase image upload size 2025-01-28 15:09:39 +01:00
Khyvodul
1a568cc65c feat: 6167 Add autoplay setting in the admin settings section (#6788)
* feat-6167: Add autoplay setting for new users in GUI admin section

* feat-6167: Add new localization for admin GUI

* Fix user configuration not taking default auto play setting into account when creating a new user

* Revert "feat-6167: Add new localization for admin GUI"

This reverts commit fcdb05c8ea.

* Move autoplay in defaults section

---------

Co-authored-by: Chocobozzz <me@florianbigard.com>
2025-01-14 13:25:17 +01:00
Chocobozzz
f4d6cecf10 Redesign about pages 2025-01-09 10:29:17 +01:00
Chocobozzz
f83674c143 Global client redesign
* Split "my library" into "video space (channels, videos...)" and "my library (playlists, history...)"
 * Split "admin" into "overview (users, videos...)", "moderation (abuses, blocks, registrations...)" and "settings (configuration, runners...)"
 * Reorganize the header and the left menu: account settings/notifications are now in the header
 * Add instance information context in the left menu
 * Merge dedicated videos pages for "recently added", "trending", "local videos" into a "browse videos" page that includes quick filters
 * Clean up entire CSS
 * Clean CSS variables so it's easier to theme PeerTube (some new variables fallback to old variables to limit currnet themes breakages)
 * Replace the current light theme into a new one (beige)
 * Add a dark (brown) theme (included in PeerTube core)
 * Fix accessibility issues with old light theme colors (white on orange button for example)
 * Redesign the left menu, the horizontal menu, form controls and buttons, "Discover videos" page and common video filters panel
 * Replace/remove/add some global icon
2024-11-23 14:44:49 +01:00
Chocobozzz
3842a527f6 Remove deprecated server code 2024-11-04 10:23:01 +01:00
Chocobozzz
70ee15d3aa Add ability to configure stun servers 2024-10-24 10:36:17 +02:00
Chocobozzz
150d9f197d Fix .mov upload on some windows 2024-10-21 11:35:44 +02:00
Chocobozzz
e18ac0a468 Improve local search relevancy 2024-09-12 10:19:01 +02:00
Chocobozzz
be7bc3a6a9 More precise storyboard
Prefer to have unused black sprites at the end of the image instead of
missing sprites of the end of the video
2024-09-11 14:29:51 +02:00
Chocobozzz
48492c6d19 Fix build language export 2024-08-14 15:39:37 +02:00
Chocobozzz
d24d221550 Add SSRF protection 2024-08-14 15:33:57 +02:00
Chocobozzz
e6de476ae8 Add ability to disable federation 2024-08-14 14:12:37 +02:00
Chocobozzz
5439a591e0 Add ability to set proxies to youtube-dl 2024-08-13 10:49:31 +02:00
Chocobozzz
bbaf96d60d Support max FPS configuration 2024-08-13 09:38:36 +02:00
Chocobozzz
486183fe62 Speed up built-in db migration 2024-08-05 16:23:39 +02:00
Chocobozzz
816f346a60 Separate HLS audio and video streams
Allows:
  * The HLS player to propose an "Audio only" resolution
  * The live to output an "Audio only" resolution
  * The live to ingest and output an "Audio only" stream

 This feature is under a config for VOD videos and is enabled by default for lives

 In the future we can imagine:
  * To propose multiple audio streams for a specific video
  * To ingest an audio only VOD and just output an audio only "video"
    (the player would play the audio file and PeerTube would not
    generate additional resolutions)

This commit introduce a new way to download videos:
 * Add "/download/videos/generate/:videoId" endpoint where PeerTube can
   mux an audio only and a video only file to a mp4 container
 * The download client modal introduces a new default panel where the
   user can choose resolutions it wants to download
2024-08-05 08:31:59 +02:00
Chocobozzz
4342ec8525 Comment for torrent consistency issues 2024-07-29 08:55:33 +02:00
Chocobozzz
f81bc3d3dc Relax client log rate limiting 2024-07-02 09:43:07 +02:00
Chocobozzz
fd4831e502 Metadata to know if the caption is auto generated 2024-06-28 08:44:59 +02:00
Chocobozzz
1bfb791e05 Integrate transcription in PeerTube 2024-06-28 08:44:58 +02:00
Chocobozzz
985e79f61e Fix lint and tests 2024-06-21 15:28:09 +02:00
kontrollanten
ca26687e1f feat: config option object_storage.max_request_attempts (#6418)
* feat: config option object_storage.max_attempts

Backblaze recommends to have a high amount of attempts since they've
designed their architecture so that it will return 5xx errors to
indicate that the client should do a new attempt.

https://www.backblaze.com/blog/b2-503-500-server-error/

closes #6415

* Rephrase comment

---------

Co-authored-by: Chocobozzz <me@florianbigard.com>
2024-06-11 13:57:18 +02:00
Chocobozzz
54c140c800 Support object storage in prune script
Also prune original files and user exports
2024-06-03 16:37:44 +02:00
Chocobozzz
7c9f07e140 Improve Video AP compatibility
Compat with text/html descriptions
Compat with SPDX for licences
Compat with missing sensitive attribute
Compat with missing tag attribute
Compat with missing video file magnet URI
Compat with missing streaming playlist segmentsSha256Url
Compat with optional comments/likes/dislikes/shares URI in video object

Add more debug logs when the object is not valid
2024-06-03 09:36:29 +02:00
Chocobozzz
1e3a5b25c3 Plan to have multiple sizes in the future 2024-05-31 09:02:34 +02:00
Gergo Bogdan
3fbe849183 #5618 - added configuration fields for Thumbnails and Previews, if no config is provided, the previous, default values are configured 2024-05-31 08:57:23 +02:00
Chocobozzz
671c6c1f96 Fix auto tags migration 2024-05-29 15:06:08 +02:00
Chocobozzz
29329d6c45 Implement auto tag on comments and videos
* Comments and videos can be automatically tagged using core rules or
   watched word lists
 * These tags can be used to automatically filter videos and comments
 * Introduce a new video comment policy where comments must be approved
   first
 * Comments may have to be approved if the user auto block them using
   core rules or watched word lists
 * Implement FEP-5624 to federate reply control policies
2024-05-29 15:03:14 +02:00
Chocobozzz
4ea659d569 Handle videos with FPS < 1 2024-05-29 08:56:53 +02:00
Chocobozzz
e7ebcb16ac Fix big user export file size 2024-05-16 11:18:50 +02:00
Chocobozzz
b8635c2606 Compact json-ld AP objects 2024-04-25 11:21:55 +02:00
Chocobozzz
b824480af7 Fix video source size column on db migration 2024-04-22 14:41:46 +02:00
Chocobozzz
5cb3e6a0b8 Use sessionId instead of IP to identify viewer
Breaking: YAML config `ip_view_expiration` is renamed `view_expiration`
Breaking: Views are taken into account after 10 seconds instead of 30
seconds (can be changed in YAML config)

Purpose of this commit is to get closer to other video platforms where
some platforms count views on play (mux, vimeo) or others use a very low
delay (instagram, tiktok)

We also want to improve the viewer identification, where we no longer
use the IP but the `sessionId` generated by the web browser. Multiple
viewers behind a NAT can now be able to be identified as independent
viewers (this method is also used by vimeo or mux)
2024-04-04 16:27:40 +02:00
Chocobozzz
e43326ed5b Support "Spanish (Latin America)" metadata lang 2024-04-03 15:20:18 +02:00
Chocobozzz
11521f231f Generate small versions of banners too 2024-03-27 15:08:09 +01:00
Chocobozzz
c10c3c5e79 Add finish sign language 2024-03-18 11:28:43 +01:00
chagai95
e57c3024f4 Add config option to keep original video file (basic first version) (#6157)
* testing not removing old file and adding columb to db

* implement feature

* remove unnecessary config changes

* use only keptOriginalFileName, change keptOriginalFileName to keptOriginalFilename for consistency with with videoFile table, slight refactor with basename()

* save original video files to dedicated directory original-video-files

* begin implementing object storage (bucket) support

---------

Co-authored-by: chagai.friedlander <chagai.friedlander@fairkom.eu>
Co-authored-by: Ian <ian.kraft@hotmail.com>
Co-authored-by: Chocobozzz <me@florianbigard.com>
2024-03-15 15:47:18 +01:00
Chocobozzz
4596ec2a9f Add ability to sort videos by file size 2024-03-08 15:15:03 +01:00
Chocobozzz
10e78bb778 Remove twitter whitelisted option
It doesn't seem to be required
2024-03-08 10:54:29 +01:00
Chocobozzz
98781f353d Add user history in import/export 2024-02-28 16:48:59 +01:00
Chocobozzz
b6b1aaa56f Add video aspect ratio in server 2024-02-27 15:24:34 +01:00
Chocobozzz
68d006b6fc Add config to disable storing lives in s3 2024-02-26 16:14:40 +01:00
Chocobozzz
109e93c139 Generate 600x600 and 1500x1500 avatars 2024-02-26 15:00:22 +01:00