Commit Graph

1153 Commits (0f7195fa401a0b647961cf1fcc57412445d80acd)

Author SHA1 Message Date
Chocobozzz ac907dc7c1 Improve viewer counter
More precise, avoid weird decrease, reuse an id to federate viewers
2022-04-15 09:49:35 +02:00
Chocobozzz dfbcefc20d Improve views/viewers documentation 2022-04-15 09:49:35 +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 69d48ee30c
Don't clean mastodon rates
Workaround of https://github.com/mastodon/mastodon/issues/13571
2022-04-15 09:17:16 +02:00
Chocobozzz c6d20c84a7
Disallow unlisted video indexation 2022-04-08 16:28:14 +02:00
Chocobozzz a219c9100b
Refactor AP context builder 2022-03-24 09:40:46 +01:00
Chocobozzz 7e98a7df7d
Remove activitypub helper
Put functions in lib/activitypub instead
2022-03-23 14:24:50 +01:00
Chocobozzz 92e66e04f7
Rename studio to editor 2022-03-22 17:24:32 +01:00
Chocobozzz 1808a1f8e4
Add video edition finished notification 2022-03-22 16:25:14 +01:00
Chocobozzz f4110e0a72
Update server dependencies 2022-03-21 14:20:47 +01:00
Chocobozzz 57e4e1c1a9
Don't store remote rates of remote videos
In the future we'll stop to expose all available rates to improve users
privacy
2022-03-18 11:21:50 +01:00
Chocobozzz 2769876fb2
Fix client html cache on theme update 2022-03-17 09:09:06 +01:00
Chocobozzz 52fe4b671a
Fix torrent creation 2022-03-16 18:35:05 +01:00
Chocobozzz f012319a64
Process video torrents in order
Prevent update before video torrent generation for example
2022-03-16 15:45:58 +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
Chocobozzz cc45cc9ac1
Remove uneeded memoize 2022-03-08 11:39:56 +01:00
Chocobozzz d3d3deaa7a
Refactor user build and express file middlewares 2022-03-04 10:57:36 +01:00
Chocobozzz f7ac03ee94
Fix client html performance regression 2022-02-28 15:13:56 +01:00
Chocobozzz c729caf6cc Add basic video editor support 2022-02-28 10:42:19 +01:00
kontrollanten d0800f7661
Implement avatar miniatures (#4639)
* client: remove unused file

* refactor(client/my-actor-avatar): size from input

Read size from component input instead of scss, to make it possible to
use smaller avatar images when implemented.

* implement avatar miniatures

close #4560

* fix(test): max file size

* fix(search-index): normalize res acc to avatarMini

* refactor avatars to an array

* client/search: resize channel avatar to 120

* refactor(client/videos): remove unused function

* client(actor-avatar): set default size

* fix tests and avatars full result

When findOne is used only an array containting one avatar is returned.

* update migration version and version notations

* server/search: harmonize normalizing

* Cleanup avatar miniature PR

Co-authored-by: Chocobozzz <me@florianbigard.com>
2022-02-28 08:34:43 +01:00
Chocobozzz 9d8ef212ff
Fix broken dep 2022-02-09 17:48:15 +01:00
Chocobozzz 400ed2ab41
Add log on user plugin auth conflict 2022-02-09 11:54:18 +01:00
Chocobozzz 7630e1c893
Fix import timeout inconsistency 2022-02-09 11:54:18 +01:00
Chocobozzz c68e2b2d22
Fix plaintext markdown converter 2022-02-04 10:38:32 +01:00
Chocobozzz b25fdc73fd
Add fixme info 2022-02-02 09:20:40 +01:00
Chocobozzz a2caee9f51
Fix HLS re transcoding with object storage enabled 2022-02-01 14:19:44 +01:00
Chocobozzz 0f11ec8dd3
Prevent HLS transcoding after webtorrent transcoding 2022-02-01 11:27:38 +01:00
lutangar d2d4a5a999 Fix plugin settings manager definition
This mainly fix the `onSettingsChange` argument typing.
I'm not 100% sure the setting `value` can be a boolean though.
But this is how it was typed before so I just made it consistent.

Feel free to change - or suggest change - to the type names / location.
2022-01-20 13:43:20 +01:00
Chocobozzz d511df2890
Add ability to filter my imports by target URL 2022-01-19 14:58:16 +01:00
Chocobozzz 419b520ca4
Add ability to cancel & delete video imports 2022-01-19 14:31:05 +01:00
Chocobozzz 2f0a0ae217
Upgrade uploadx dependency 2022-01-18 10:47:26 +01:00
Chocobozzz ff4d2c73fd
Fix bull redis options 2022-01-14 15:06:33 +01:00
Chocobozzz c0d2eac332
Update server dependencies 2022-01-14 14:15:23 +01:00
Chocobozzz cbe2f36d93
Fix audio transcoding with video only file 2022-01-06 17:55:37 +01:00
Chocobozzz 75b7117f07
Remove unnecessary NPM_RUN_BUILD_OPTS docker arg 2022-01-06 10:37:55 +01:00
Chocobozzz f8360396ff
Stop using tsconfig register
Prefer to replace paths at compile time
2022-01-06 08:26:14 +01:00
Chocobozzz 8f5a1f36b5
Try to fix tests 2022-01-04 09:16:43 +01:00
Chocobozzz 0628157fe9
Move uuid stuff in extra utils
Since it requires an external dependency
2021-12-29 14:44:58 +01:00
Chocobozzz fb3c9e2bf5
Translate plugin settings 2021-12-29 14:08:07 +01:00
Chocobozzz 10a72a7e61
Fix tests 2021-12-28 14:12:57 +01:00
Chocobozzz f1569117f9
Cleanup unavailable remote AP resource 2021-12-28 11:37:05 +01:00
Chocobozzz ae4e417ab0
Update CREDITS 2021-12-24 14:56:33 +01:00
Chocobozzz e5d91a9b9c
Upgrade redis dep 2021-12-24 14:52:24 +01:00
Chocobozzz c7cdac4409
Fix type conflict 2021-12-24 10:40:51 +01:00
Chocobozzz d17c7b4e8c
Fix shared imports 2021-12-24 10:14:47 +01:00
Chocobozzz 5354af75b3
Fix video import transcoding 2021-12-23 13:40:47 +01:00
Chocobozzz dbd9fb44dd
Don't stuck state when move transcoding job failed 2021-12-23 11:13:06 +01:00
Chocobozzz 482b26231b
Fix audio only transcoding 2021-12-23 10:57:55 +01:00
Chocobozzz 293074ae79
Fix video upload with big preview 2021-12-17 15:50:02 +01:00
Chocobozzz f304a1580b
Fix build 2021-12-17 13:58:07 +01:00
Chocobozzz c55e3d7227
Move test functions outside extra-utils 2021-12-17 12:24:03 +01:00
Chocobozzz 6b5f72beda
Move typescript utils in its own directory 2021-12-16 18:04:16 +01:00
Chocobozzz 754c52b9b9
Add ffprobe helper 2021-12-16 17:00:46 +01:00
Chocobozzz 2e9c7877eb
Add videos.getFiles plugin helper 2021-12-16 16:49: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
lutangar 06aad80165 chore(refactor): remove shared folder dependencies to the server
Many files from the `shared` folder were importing files from the `server` folder.
When attempting to use Typescript project references to describe dependencies,
it highlighted a circular dependency beetween `shared` <-> `server`.

The Typescript project forbid such usages.
Using project references greatly improve performance by rebuilding only
the updated project and not all source files.
> see https://www.typescriptlang.org/docs/handbook/project-references.html
2021-12-16 10:08:43 +01:00
Chocobozzz 3cf68b869d
Ability for admins to set default upload values 2021-12-14 17:17:01 +01:00
Chocobozzz 14857212f1
Move b frame strategy in transcoding profile
We may use a too high value for some encoders and it allows to specify
custom values/strategy
2021-12-14 10:46:31 +01:00
Chocobozzz ab18fadfd1
Fix AP audience 2021-12-13 17:33:59 +01:00
Chocobozzz b5e1cd9a30
Handle channel owner update of remote server 2021-12-13 16:03:16 +01:00
Chocobozzz 9e847c17f9
No notification on moderator abuse 2021-12-09 14:27:32 +01:00
Chocobozzz 9b293cd6a2
Update torrent metadata on video update 2021-12-08 11:07:19 +01:00
Chocobozzz 636d73c588
Merge branch 'release/4.0.0' into develop 2021-12-07 13:47:34 +01:00
Chocobozzz 4c6757f2fd
Fix live log tags 2021-12-07 13:45:01 +01:00
Chocobozzz 80badf493a
Add mute status in account and channel pages 2021-12-07 09:46:01 +01:00
Chocobozzz 0bc53e2029
Add ability to redirect users on external auth 2021-12-03 17:04:47 +01:00
Chocobozzz 9ea02c48a7
Merge branch 'release/4.0.0' into develop 2021-12-03 14:40:52 +01:00
Chocobozzz 025d858e79
Fix pending transcoding with failed job 2021-12-03 14:40:29 +01:00
Chocobozzz 6d472b4046
Decrease time to cleanup resumable uploads 2021-12-03 14:01:38 +01:00
Chocobozzz 9213df1d79
Fix comment 2021-12-03 10:49:36 +01:00
Chocobozzz 63a3d336f6
Remove uneeded function 2021-12-03 10:14:33 +01:00
Chocobozzz ca87d95bcb
Fix plugin upgrade
Correctly decache all plugin paths
2021-12-03 10:14:17 +01:00
kontrollanten 5fc44b57f8
Add header Vary Accept-Language (#4588)
* nginx: add header Vary Accept-Language

solves #3647

* Revert "nginx: add header Vary Accept-Language"

This reverts commit 90dccf5324.

* add resp header Vary Accept-Language

solves #3647

* don't add vary header to embed page
2021-12-02 09:14:54 +01:00
Chocobozzz 1da843eeac
Don't notify when transcoding ends on manual run 2021-12-01 12:33:46 +01:00
Chocobozzz a5ee023cf3
Fix redundancy timeout 2021-11-30 08:40:30 +01:00
Chocobozzz 55cb8bc73c
Correctly escape meta tags 2021-11-30 08:31:56 +01:00
Chocobozzz 7b0c61e743
Fix build 2021-11-29 15:46:52 +01:00
Chocobozzz 4c99953acd
Fix redundancy timeout 2021-11-29 15:45:02 +01:00
Chocobozzz fa7388f087
Fix transcoding job count inconsistency 2021-11-29 11:20:17 +01:00
Chocobozzz 7137377d09
Auto update publishedAt in live restream 2021-11-26 17:36:55 +01:00
lutangar 7226e90fdc Add `req` and `res` as controllers hooks parameters
Hooks prefixed by `action:api` now give access the original express req and res.
Checkout guide.md for possible usage.
2021-11-25 09:54:22 +01:00
Chocobozzz 450de91e22
Fix E2E tests 2021-11-24 10:49:12 +01:00
Chocobozzz ad5db1044c
Add ability to run transcoding jobs 2021-11-18 15:20:57 +01:00
Chocobozzz b46cf4b920
Add ability to remove hls/webtorrent files 2021-11-18 09:04:30 +01:00
Chocobozzz 3455c2656e
Test and log request retries 2021-11-16 11:34:24 +01:00
Chocobozzz a2f99b54df
Optimize AP fetch 2021-11-16 10:28:31 +01:00
Chocobozzz 3ef5909aec
Fix extendsLocalExpiration for redundancy 2021-11-12 09:02:53 +01:00
Chocobozzz 67eeec8b95
Add minimum bitrate limit 2021-11-10 11:04:00 +01:00
Chocobozzz 020d3d3d79
Remove resumable cache after upload success 2021-11-10 09:43:33 +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 221ee1adc9 Add transcoding fail message in client 2021-11-09 15:00:21 +01:00
kontrollanten 4e29f4fe23 video: add video stranscoding_failed state 2021-11-09 15:00:21 +01:00
kontrollanten e1ab52d7ec
Add migrate-to-object-storage script (#4481)
* add migrate-to-object-storage-script

closes #4467

* add migrate-to-unique-playlist-filenames script

* fix(migrate-to-unique-playlist-filenames): update master/segments256

run updateMasterHLSPlaylist and updateSha256VODSegments after
file rename.

* Improve move to object storage scripts

* PR remarks

Co-authored-by: Chocobozzz <me@florianbigard.com>
2021-11-09 11:05:35 +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 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