aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/lib/job-queue/handlers/video-transcoding.ts
Commit message (Collapse)AuthorAgeFilesLines
* esModuleInterop to trueChocobozzz2021-08-271-7/+7
|
* Better logs for transcodingChocobozzz2021-08-261-13/+28
|
* Add support for saving video files to object storage (#4290)Jelle Besseling2021-08-171-54/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Improve target bitrate calculationChocobozzz2021-08-061-2/+2
|
* Remove deprecated transcoding job namesChocobozzz2021-08-051-12/+1
|
* Use random names for VOD HLS playlistsChocobozzz2021-07-261-2/+1
|
* Fix lintChocobozzz2021-06-151-1/+0
|
* Fix missing transactionsChocobozzz2021-06-151-27/+23
|
* Cleanup models directory organizationChocobozzz2021-05-111-1/+1
|
* Move transcoding files in their own directoryChocobozzz2021-05-111-1/+1
|
* Fix lintChocobozzz2021-05-051-1/+0
|
* Fix transcoding job priorityChocobozzz2021-05-051-3/+3
| | | | | New resolution jobs are also important if waiting for transcoding is enabled since we publish the video after the first resolution generation
* Correctly wait transcoding before federatingChocobozzz2021-02-221-16/+22
|
* Dissociate video file names and video uuidChocobozzz2021-02-181-1/+1
|
* Allow to specify transcoding and import jobs concurrencyChocobozzz2021-02-081-19/+25
|
* Fix HLS generation after import scriptChocobozzz2021-02-021-1/+1
|
* Transcode audio uploads to lower resolutionsChocobozzz2021-02-021-0/+2
| | | | Better consistency
* Correctly remove torrents with HLS onlyChocobozzz2021-02-011-0/+1
|
* Safely remove webtorrent filesChocobozzz2021-01-251-4/+6
| | | | Only remove them on max quality HLS playlist generation
* Add priority to transcoding jobsChocobozzz2021-01-251-34/+57
| | | | | | | | | | (1 = highest priority) 100 for new resolutions 10 for original file optimization Add a malus for transcoding jobs depending on how many uploads the user did in the last 7 days
* Refactor transcoding job handlersChocobozzz2021-01-211-67/+132
|
* Support progress for ffmpeg tasksChocobozzz2021-01-211-4/+5
|
* Fix buildChocobozzz2020-12-221-1/+1
|
* Force HLS transcodingChocobozzz2020-12-221-8/+18
| | | | | | Fix weird behaviour with some web browsers. Don't really know if it's a ffmpeg bug, a safari bug or a peertube bug, but forcing transcoding seems to fix this playback bug
* Split ffmpeg utils with ffprobe utilsChocobozzz2020-11-251-1/+1
|
* Add modal to display live informationChocobozzz2020-11-091-22/+1
|
* Add ability to save live replayChocobozzz2020-11-091-8/+22
|
* Live streaming implementation first stepChocobozzz2020-11-091-1/+1
|
* Fix resolution for portrait videosChocobozzz2020-08-031-4/+5
|
* Split types and typingsChocobozzz2020-06-181-1/+1
|
* Add moderation helpers to pluginsChocobozzz2020-05-071-1/+1
|
* Fix HLS audio only transcodingChocobozzz2020-05-051-0/+1
|
* Avoir some circular dependenciesChocobozzz2020-05-041-35/+7
|
* Move to eslintcontainChocobozzz2020-02-031-10/+7
|
* Add ability to disable webtorrentChocobozzz2019-11-251-55/+64
| | | | In favour of HLS
* Stronger model typingsChocobozzz2019-08-191-3/+4
|
* Correctly notify on auto blacklistChocobozzz2019-07-241-2/+2
|
* Add audio support in uploadChocobozzz2019-05-161-15/+41
|
* Move config in its own fileChocobozzz2019-04-111-1/+2
|
* add quarantine videos feature (#1637)Josh Morel2019-04-021-8/+4
| | | | | | | | | | | | | | | | | | | | * add quarantine videos feature * increase Notification settings test timeout to 20000ms. was completing 7000 locally but timing out after 10000 on travis * fix quarantine video test issues -propagate misspelling -remove skip from server/tests/client.ts * WIP use blacklist for moderator video approval instead of video.quarantine boolean * finish auto-blacklist feature
* Move video file import in its own fileChocobozzz2019-03-191-29/+5
|
* Rename video-file job to video-transcodingChocobozzz2019-03-191-0/+204