Commit Graph

141 Commits

Author SHA1 Message Date
Chocobozzz
5e82c1932e Correctly set tags to replays of permanent lives 2024-08-05 16:23:44 +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
22e9d9a1fe Fix updating hls infohash on privacy update 2024-07-31 09:26:54 +02:00
Chocobozzz
44919a8d57 Fix hidden runner jobs tab
If remote runners feature is only enabled on transcription
2024-07-31 08:56:33 +02:00
Chocobozzz
300676f62b Don't replace caption on transcription 2024-07-12 16:20:26 +02:00
Chocobozzz
e99e4aa93c Run transcription after studio 2024-07-11 11:29:46 +02:00
Chocobozzz
c5de5ef1d0 Fix registering unamed settings 2024-07-10 12:12:07 +02:00
Chocobozzz
471bf5bbce Don't block video files on transcription 2024-07-04 11:18:04 +02:00
Chocobozzz
8ab6f23a00 Don't block video update on storyboard generation 2024-07-03 15:40:10 +02:00
Chocobozzz
2d26eff129 Don't create pendingTranscription twice 2024-07-03 08:52:05 +02:00
Chocobozzz
01b3396c80 Better view handling with looped videos 2024-07-02 09:41:33 +02:00
Chocobozzz
ebcf3329f5 More robust transcription error job handler 2024-07-01 14:38:19 +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
9772280e99 Upgrade to angular 18 & vite 2024-06-26 08:33:54 +02:00
Chocobozzz
05d84f659d Fix loading actor involved in video 2024-06-21 16:05:40 +02:00
Chocobozzz
985e79f61e Fix lint and tests 2024-06-21 15:28:09 +02:00
Chocobozzz
a722194809 Update server dependencies 2024-06-21 14:39:50 +02:00
Chocobozzz
802601c241 Fix channel update federation 2024-06-20 08:48:24 +02:00
Chocobozzz
346be1d478 Support Service AP actors 2024-06-19 17:08:59 +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
585050821a Also prune storyboards and actor images 2024-06-05 15:47:37 +02:00
Chocobozzz
3427330611 Support update object storage urls 2024-06-05 09:01:40 +02:00
Chocobozzz
96b9748585 Support CLI move of original video file 2024-06-04 09:08:24 +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
568a1b1e85 Fix segmentsSha256Url in export 2024-06-03 09:44:12 +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
Chocobozzz
6a4db88e5c Handle 410 HTTP response code for AP objects 2024-05-30 10:28:20 +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
kontrollanten
1eb8fc2c06 fix(server/plugins): avoid duplicate settings
Filter settings so that the name property is unique.

closes #6356
2024-05-17 10:43:47 +02:00
Chocobozzz
5dd0721bee Merge branch 'release/6.1.0' into develop 2024-05-16 11:39:53 +02:00
Chocobozzz
3d105296e6 Fix concurrent live streams serialization issue 2024-05-16 11:38:36 +02:00
kontrollanten
2177995056 feat(server): dont client cache HTML files
Tell the clients to not cache the HTML response.

closes #6393
2024-05-13 11:17:50 +02:00
Chocobozzz
afb28272f5 Check video rights before providing AP information 2024-04-26 10:09:38 +02:00
Chocobozzz
b8635c2606 Compact json-ld AP objects 2024-04-25 11:21:55 +02:00
Chocobozzz
f84ac3ba41 Fix local video creator crash 2024-04-05 08:29:23 +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
kontrollanten
6f6abcabfb feat(plugins): add peertubeHelpers.loadByIdOrUUIDWithFiles (#6302) 2024-04-04 08:20:09 +02:00
Chocobozzz
9b70c8e7e8 Do not take into account empty view sections 2024-04-03 14:25:21 +02:00
Chocobozzz
3f8454ce63 Fix creating remote tracker URLs on video creation 2024-03-27 15:26:15 +01:00
Chocobozzz
11521f231f Generate small versions of banners too 2024-03-27 15:08:09 +01:00
Chocobozzz
5b8da4e051 Method typo 2024-03-25 15:14:56 +01:00
Chocobozzz
be19d9be34 Move email templates in assets directory 2024-03-20 09:15:07 +01:00
Chocobozzz
c09e27d77a Optimize transcoding profile building 2024-03-19 09:53:59 +01:00
Chocobozzz
0e718cb7b2 Fix cancel on stall error message 2024-03-19 08:39:41 +01:00
Chocobozzz
0301d77254 Don't cancel finished jobs 2024-03-19 08:39:23 +01:00
Chocobozzz
c727a34cb6 Prevent aborting another live session 2024-03-18 16:09:22 +01:00
soonsouth
01af40a55f chore: fix some comments
Signed-off-by: soonsouth <cuibuwei@163.com>
2024-03-18 08:12:12 +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