Commit Graph

190 Commits

Author SHA1 Message Date
Chocobozzz e771ff815d
Merge branch 'release/4.2.0' into develop 2022-06-03 14:32:44 +02:00
Chocobozzz 010382b603
Completely remove best default trending algorithm 2022-06-03 14:04:52 +02:00
Chocobozzz db9d882c25
Add ability to set default feed items count 2022-05-24 15:56:23 +02:00
Chocobozzz 3eba7ab815
Add ability to set a custom video import timeout 2022-05-24 14:55:07 +02:00
Chocobozzz a5a1690d08
Improve video studio comment 2022-05-23 09:25:40 +02:00
Chocobozzz d322f854c0
Prefer using null for rtmp listen setting 2022-05-04 16:12:49 +02:00
Chocobozzz 110212fd79
Fix listening host for live 2022-05-04 16:07:08 +02:00
Chocobozzz 9c5e582269
Better config comments for RTMP/RTMPS 2022-05-04 09:10:25 +02:00
Chocobozzz cfbe6be516
Add ability to provide rtmp listening hostname 2022-05-02 14:32:12 +02:00
Chocobozzz ec2fa0d0b1
Fix redis config comment 2022-04-15 11:56:41 +02:00
Chocobozzz b211106695 Support video views/viewers stats in server
* Add "currentTime" and "event" body params to view endpoint
 * Merge watching and view endpoints
 * Introduce WatchAction AP activity
 * Add tables to store viewer information of local videos
 * Add endpoints to fetch video views/viewers stats of local videos
 * Refactor views/viewers handlers
 * Support "views" and "viewers" counters for both VOD and live videos
2022-04-15 09:49:35 +02:00
Chocobozzz 92e66e04f7
Rename studio to editor 2022-03-22 17:24:32 +01:00
Doug Luce f9915efa5e Make object storage ACL configurable
Override this value to allow uploads to non-public S3
buckets. Otherwise "AccessDenied: Access Denied" errors will end up in
the log.

Fixes #4850
2022-03-16 10:58:01 +01:00
kontrollanten 60233e90d2
add client.videos.upload.maxChunkSize config (#4857)
* add client.videos.upload.maxChunkSize config

* updates after review

* remove maxChunkSize from custom-config
2022-03-16 10:57:36 +01:00
Chocobozzz f443a74649 Add latency setting support 2022-03-09 09:23:10 +01:00
kontrollanten 2c102aac13
Display avatar in video miniatures (#4823)
* show avatar in video miniatures

closes #4040

* fix: videos for api, include avatars

* add config for display video miniature avatar

* Revert "fix: videos for api, include avatars"

This reverts commit 5520a3eda6.

* video-min: set display avatar to false as default

* remove empty line

* rename display_avatar > display_author_avatar

* fix renaming displayAvatar > displayAuthorAvatar
2022-03-08 13:39:27 +01:00
kontrollanten 8d07888728
Possibility to set custom RTMP/RTMPS hostname (#4811)
* live: set custom RTMP/RTMPS hostname

closes #4786

* dont use webserver.hostname as default

* check that rtmp/s.hostname is set
2022-03-01 13:37:34 +01:00
Chocobozzz c729caf6cc Add basic video editor support 2022-02-28 10:42:19 +01:00
Chocobozzz 474542d7ac
Add additional checks when importing a video 2022-02-09 11:54:18 +01:00
Florent 22c7778630 Give the ability to define python path for youtube-dl / yt-dlp 2022-01-10 10:01:43 +01:00
Chocobozzz b65de1be4d
Use different p2p policy for embeds and webapp 2021-12-16 10:08:55 +01:00
Chocobozzz a9bfa85d2c
Add ability for admins to set default p2p policy 2021-12-16 10:08:55 +01:00
Chocobozzz 3cf68b869d
Ability for admins to set default upload values 2021-12-14 17:17:01 +01:00
Chocobozzz 0bc53e2029
Add ability to redirect users on external auth 2021-12-03 17:04:47 +01:00
Chocobozzz c5e53d0e39
cleanup_remote_interactions: true by default 2021-11-29 15:33:08 +01:00
Chocobozzz 51353d9a03 Refactor video views
Introduce viewers attribute for live videos
Count views for live videos
Reduce delay to see the viewer update for lives
Add ability to configure video views buffer interval and view ip
expiration
2021-11-09 15:00:31 +01:00
Chocobozzz 5037e0e474
Correctly close RTMPS server too 2021-11-05 11:40:49 +01:00
Chocobozzz df1db951c5
Support RTMPS 2021-11-05 11:38:17 +01:00
Florian CUNY 8dd754c767
Added 144p encoding (#4492)
* Added 144p encoding

Implements https://github.com/Chocobozzz/PeerTube/issues/4428

* Fixed typo in core-utils

* Increased BitPerPixel for 144p

* Disabled 144p by default in test.yaml

* Another try at fixing tests

* Fixed test in video-transcoder (api-3)

* Fixed test in video-imports (api-4)

* Fixed test in live-constraints (api-2)

* Tried to fix tests in api-3 again

* Revert "Tried to fix tests in api-3 again"

This reverts commit 266e1143fa37f333d149c2c2791c7bd33621ac14.

* Fixed test in config.ts (api-2)

* Try to fix test in video-hls.ts (api-3)

* Fixed test in video-transcoder.ts (api-3)

* Fix tests

Co-authored-by: Chocobozzz <me@florianbigard.com>
2021-11-05 10:23:02 +01:00
Florian CUNY 754b6f5f41
Made the video channels limit (per user) server-wide configurable (#4491)
* Made the video channels limit (per user) server-wide configurable

Implements https://github.com/Chocobozzz/PeerTube/issues/3092

Also added a "quota bar" in the account's settings page

* Fixed lint errors

* Another pass at fixing lint errors

* Applied code suggestions

* Removed 'video channels quota'
2021-10-26 16:42:10 +02:00
Chocobozzz de7f11143f
Cleanup config 2021-10-22 13:56:45 +02:00
Chocobozzz 62549e6c98
Rewrite youtube-dl import
Use python3 binary
Allows to use a custom youtube-dl release URL
Allows to use yt-dlp (youtube-dl fork)
Remove proxy config from configuration to use HTTP_PROXY and HTTPS_PROXY
env variables
2021-10-22 10:25:24 +02:00
Chocobozzz 97b6428af7
Breaking: fix inconsistencies in configuration 2021-10-20 16:29:41 +02:00
Chocobozzz cf0c8ee588
Fix admin edition disabling feature 2021-10-14 11:35:43 +02:00
Chocobozzz e89392d74a
Fix production configuration 2021-10-14 09:37:01 +02:00
Chocobozzz 94fecbc1c7
Config typo 2021-10-13 09:18:48 +02:00
Chocobozzz 80dea8f4d6
Rename config key 2021-10-12 14:25:30 +02:00
kontrollanten 7399a79f73
add option to always show channel display name (#4422)
* add option to always show channel display name

closes #4040

* show avatar in video miniatures

closes #4040

* Revert "show avatar in video miniatures"

This reverts commit 79b1a84140.

* channel display name: fix review comments
2021-10-12 14:23:44 +02:00
kontrollanten c80e458afb
extend client-overrides with default images (#4392)
* extend client-overrides with default images

Add:
* default-playlist.png
* default-avatar-account.png
* default-avatar-videochannel.png

solves #4108

* Rename to default-avatar-video-channel.png

Co-authored-by: Chocobozzz <me@florianbigard.com>
2021-10-12 13:50:40 +02:00
Jelle Besseling 8d8a037e3f
Allow configuration to be static/readonly (#4315)
* Allow configuration to be static/readonly

* Make all components disableable

* Improve disabled component styling

* Rename edits allowed field in configuration

* Fix CI
2021-10-12 13:33:44 +02:00
Jelle Besseling 0305db28c9
Add support for saving video files to object storage (#4290)
* Add support for saving video files to object storage

* Add support for custom url generation on s3 stored files

Uses two config keys to support url generation that doesn't directly go
to (compatible s3). Can be used to generate urls to any cache server or
CDN.

* Upload files to s3 concurrently and delete originals afterwards

* Only publish after move to object storage is complete

* Use base url instead of url template

* Fix mistyped config field

* Add rudenmentary way to download before transcode

* Implement Chocobozzz suggestions

https://github.com/Chocobozzz/PeerTube/pull/4290#issuecomment-891670478

The remarks in question:
    Try to use objectStorage prefix instead of s3 prefix for your function/variables/config names
    Prefer to use a tree for the config: s3.streaming_playlists_bucket -> object_storage.streaming_playlists.bucket
    Use uppercase for config: S3.STREAMING_PLAYLISTS_BUCKETINFO.bucket -> OBJECT_STORAGE.STREAMING_PLAYLISTS.BUCKET (maybe BUCKET_NAME instead of BUCKET)
    I suggest to rename moveJobsRunning to pendingMovingJobs (or better, create a dedicated videoJobInfo table with a pendingMove & videoId columns so we could also use this table to track pending transcoding jobs)
    https://github.com/Chocobozzz/PeerTube/pull/4290/files#diff-3e26d41ca4bda1de8e1747af70ca2af642abcc1e9e0bfb94239ff2165acfbde5R19 uses a string instead of an integer
    I think we should store the origin object storage URL in fileUrl, without base_url injection. Instead, inject the base_url at "runtime" so admins can easily change this configuration without running a script to update DB URLs

* Import correct function

* Support multipart upload

* Remove import of node 15.0 module stream/promises

* Extend maximum upload job length

Using the same value as for redundancy downloading seems logical

* Use dynamic part size for really large uploads

Also adds very small part size for local testing

* Fix decreasePendingMove query

* Resolve various PR comments

* Move to object storage after optimize

* Make upload size configurable and increase default

* Prune webtorrent files that are stored in object storage

* Move files after transcoding jobs

* Fix federation

* Add video path manager

* Support move to external storage job in client

* Fix live object storage tests

Co-authored-by: Chocobozzz <me@florianbigard.com>
2021-08-17 08:26:20 +02:00
ROBERT MCDOWELL 863c1bc6dc
fixed typo (#4312)
* Fixed typo
2021-08-11 10:45:49 +02:00
Chocobozzz 3b6195f799
Fix typo for minimum age 2021-07-16 16:00:31 +02:00
Rigel Kent 37ede348bb
(doc) add note in config that tmp is also used while processing 2021-06-08 11:45:03 +02:00
Poslovitch 1f256e7d3c
Implemented configurable minimum signup age
Implements https://github.com/Chocobozzz/PeerTube/issues/3612

Fixed lint and removed debug

Fixed another lint error

Apply suggestions from code review

Co-authored-by: Chocobozzz <chocobozzz@cpy.re>

Add tests for min signup age config
2021-05-28 13:56:05 +02:00
Chocobozzz 31a911190b
Fix broadcast message log level 2021-05-25 11:35:29 +02:00
Chocobozzz 8155db669b
Dissociate frameguard from csp 2021-04-12 15:33:54 +02:00
Chocobozzz 6a882428e1
Enable HLS transcoding by default 2021-04-06 09:52:53 +02:00
Chocobozzz 32a18cbf33
Add new plugin/peertube version notifs 2021-03-24 18:18:41 +01:00
Chocobozzz 74d249bc13
Add ability to cleanup remote AP interactions 2021-03-03 10:08:08 +01:00