Commit Graph

192 Commits

Author SHA1 Message Date
kontrollanten 714d9c4aa7 feat(API): permissive email check in reset & verification
In order to not force users to be case sensitive when asking for
password reset or resend email verification. When there's multiple
emails where the only difference in the local is the capitalized
letters, in those cases the users has to be case sensitive.

closes #6570
2024-10-02 09:00:33 +02:00
Chocobozzz 1bca41366d
Improve caption edition 2024-09-25 16:06:36 +02:00
Chocobozzz 093a9bf749
Fix splitting audio/video of existing videos 2024-09-25 14:03:44 +02:00
Chocobozzz 9f672b01a4
Fix object storage tests 2024-09-13 08:48:53 +02:00
Chocobozzz baefe61cff
Fix duplicated resolutions when capping fps 2024-09-11 16:06:33 +02:00
Chocobozzz 8e644dedb2
Fix tests 2024-09-11 15:51:15 +02:00
Chocobozzz 71bdad9f5e
Correctly cleanup permanent live empty directories 2024-09-11 14:45:02 +02:00
Chocobozzz f9b46e816e
Fix email link escaping
See https://github.com/forwardemail/email-templates/issues/464
2024-09-06 09:31:14 +02:00
Chocobozzz 1870626af5
Fix video file storage attribute 2024-08-20 09:05:53 +02:00
Chocobozzz 27bf92235f
Fix video file object storage detection 2024-08-19 17:02:44 +02:00
Chocobozzz b2bb45cf91
Fix broken object storage playlist on file removal 2024-08-19 16:00:55 +02:00
Chocobozzz bd60f178af
Reduce errors in tests logs 2024-08-19 10:27:27 +02:00
Chocobozzz 38cc3910ff
Fix tests 2024-08-14 16:14:06 +02:00
Chocobozzz b708d2102a
Regenerate code contributors 2024-08-14 15:36:35 +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 7d52f17a35
Fix tests 2024-08-14 11:07:13 +02:00
Chocobozzz 3a2e457320
Fix tests 2024-08-13 14:51:30 +02:00
Chocobozzz 38dbafcf63
Support youtube-dl executables
Also disable youtube tests in CI due to youtube blocking
2024-08-13 14:20:08 +02:00
Chocobozzz bbaf96d60d
Support max FPS configuration 2024-08-13 09:38:36 +02:00
Chocobozzz 25684e837c
Fix client player error on fast restream 2024-08-09 10:00:34 +02:00
Chocobozzz d47d95cb6f
More robust encrypt/decrypt test 2024-08-09 09:16:00 +02:00
Chocobozzz 62bf86c186
Introduce bufferStalled playback metric 2024-08-08 14:41:34 +02:00
Chocobozzz 658241d8c6
Support cover when downloading audio 2024-08-08 10:42:15 +02:00
Chocobozzz 84e9b0bfea
Fix import tests 2024-08-08 07:32:11 +02:00
Chocobozzz 56d48fc41b
Notify local users with internal video privacy 2024-08-07 09:26:07 +02:00
Chocobozzz da992cbcab
Fix tests 2024-08-07 08:17:40 +02:00
Chocobozzz 546265e9ae
Support fowarding query params to oembed
For now only `start` for videos and `playlistPosition` for playlists are
supported
2024-08-06 11:52:21 +02:00
Chocobozzz f00d656ba1
Fix peertube runner tests 2024-08-06 11:15:05 +02:00
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 5276f236f0
Fix tracker test 2024-07-31 16:00:31 +02:00
Chocobozzz 22e9d9a1fe
Fix updating hls infohash on privacy update 2024-07-31 09:26:54 +02:00
Chocobozzz 300676f62b
Don't replace caption on transcription 2024-07-12 16:20:26 +02:00
Chocobozzz 6379d42d64
Fix tests build 2024-07-11 16:21:57 +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 efa58350eb
Fix transcription tests 2024-07-03 16:14:54 +02:00
Chocobozzz c289c86741
Add vad_filter to ctranslate transcriber
Helps us to correctly detect the language if there is no voice in the
first 30 seconds

Also helps to lower hallucinations
2024-07-03 15:23:26 +02:00
Chocobozzz 2d26eff129
Don't create pendingTranscription twice 2024-07-03 08:52:05 +02:00
Chocobozzz 0870a3fe51
Fix check logs params tests 2024-07-02 13:16:59 +02:00
Chocobozzz 9ee467b9cd
Better whisper logging 2024-07-02 09:01:54 +02:00
Chocobozzz b66963fe6f
Runner can choose job type 2024-06-28 08:44:59 +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
lutangar ef14cf4a5c
feat(transcription): groundwork
chore: fiddling around some more

chore: add ctranslate2 and timestamped

chore: add performance markers

chore: refactor test

chore: change worflow name

chore: ensure Python3

chore(duration): convert to chai/mocha syntahx

chore(transcription): add individual tests for others transcribers

chore(transcription): implement formats test of all implementations

Also compare result of other implementation to the reference implementation

chore(transcription): add more test case with other language and models size and local model

chore(test): wip ctranslate 2 adapat

chore(transcription): wip transcript file and benchmark

chore(test): clean a bit

chore(test): clean a bit

chore(test): refacto timestamed spec

chore(test): update workflow

chore(test): fix glob expansion with sh

chore(test): extract some hw info

chore(test): fix async tests

chore(benchmark): add model info

feat(transcription): allow use of a local mode in timestamped-whisper

feat(transcription): extract run and profiling info in own value object

feat(transcription): extract run concept in own class an run more bench

chore(transcription): somplify run object only a uuid is now needed and add more benchmark scenario

docs(transcription): creates own package readme

docs(transcription): add local model usage

docs(transcription): update README

fix(transcription): use fr video for better comparison

chore(transcription): make openai comparison passed

docs(timestamped): clea

chore(transcription): change transcribers transcribe method signature

Introduce whisper builtin model.

fix(transcription): activate language detection

Forbid transcript creation without a language.
Add `languageDetection` flag to an engine and some assertions.

Fix an issue in `whisper-ctranslate2` :
https://github.com/Softcatala/whisper-ctranslate2/pull/93

chore(transcription): use PeerTube time helpers instead of custom ones

Update existing time function to output an integer number of seconds and add a ms human-readable time formatter with hints of tests.

chore(transcription): use PeerTube UUID helpers

chore(transcription): enable CER evaluation

Thanks to this recent fix in Jiwer <3
https://github.com/jitsi/jiwer/issues/873

chore(jiwer): creates JiWer package

I'm not very happy with the TranscriptFileEvaluator constructor... suggestions ?

chore(JiWer): add usage in README

docs(jiwer): update JiWer readme

chore(transcription): use FunMOOC video in fixtures

chore(transcription): add proper english video fixture

chore(transcription): use os tmp directory where relevant

chore(transcription): fix jiwer cli test reference.txt

chore(transcription): move benchmark out of tests

chore(transcription): remove transcription workflow

docs(transcription): add benchmark info

fix(transcription): use ms precision in other transcribers

chore(transcription): simplify most of the tests

chore(transcription): remove slashes when building path with join

chore(transcription): make fromPath method async

chore(transcription): assert path to model is a directory for CTranslate2 transcriber

chore(transcription): ctranslate2 assertion

chore(transcription): ctranslate2 assertion

chore(transcription): add preinstall script for Python dependencies

chore(transcription): add download and unzip utils functions

chore(transcription): add download and unzip utils functions

chore(transcription): download & unzip models fixtures

chore(transcription): zip

chore(transcription): raise download file test timeout

chore(transcription): simplify download file test

chore(transcription): add transcriptions test to CI

chore(transcription): raise test preconditions timeout

chore(transcription): run preinstall scripts before running ci

chore(transcription): create dedicated tmp folder for transcriber tests

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): use short video for local model test

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): raise timeout some more

chore(transcription): setup verbosity based on NODE_ENV value
2024-06-28 08:43:40 +02:00
Chocobozzz ef0a6b267b
Add server restart test 2024-06-27 11:56:48 +02:00
Chocobozzz 985e79f61e
Fix lint and tests 2024-06-21 15:28:09 +02:00
Chocobozzz 990266f149
Owner must not be able to approve its own comment 2024-06-21 10:27:03 +02:00
Chocobozzz 585050821a
Also prune storyboards and actor images 2024-06-05 15:47:37 +02:00