Back to Peertube

Admin Config Vod.Component

client/src/app/+admin/config/pages/admin-config-vod.component.html

8.2.03.3 KB
Original Source

TRANSCODING

Process uploaded videos so that they are streamable on any device. Although this is costly in terms of resources, it is a critical part of PeerTube, so proceed with caution.

Estimating a server's capacity to transcode and stream videos isn't easy and we can't tune PeerTube automatically.
However, you may want to read our guidelines before tweaking the following values.

Transcoding enabled

Input

Allows users to upload videos with additional extensions than .mp4, .ogv and .webm (for example: .avi, .mov, .mkv etc).

Allows users to upload .mp3, .ogg, .wma, .flac, .aac, or .ac3 audio files.

The file will be merged in a still image video with the preview file on upload.

If enabled, the input file is not deleted after transcoding but moved in a dedicated folder or object storage

Output

If you also enable HLS output, video storage will be multiplied by 2

If you also enable Web Videos output, video storage will be multiplied by 2 Requires ffmpeg >= 4.1

Generate HLS playlists and fragmented MP4 files resulting in a better playback than with Web Videos:

  • Resolution change is smoother
  • Faster playback especially with long videos
  • More stable playback (less bugs/infinite loading)

If enabled, remote PeerTube instances < 6.3.0 won't be able to play these videosStore the audio stream in a separate file from the video.
This option adds the ability for the HLS player to propose the "Audio only" quality to users.
It also saves disk space by not duplicating the audio stream in each resolution file

HLS audio files are not always played correctly by podcast applications

This option ensures that an optimized audio file is generated for podcast applications, even if Web Videos output is disabled

Max video FPSCap transcoded video FPS. Max resolution file still keeps the original FPS. FPS @if (formErrors.transcoding.fps.max) { {{ formErrors.transcoding.fps.max }} }

Resolutions to generate

@for (resolution of resolutions; track resolution) { @if (resolution.description) {

} } Even if it's above your maximum enabled resolution

Use remote runners to process VOD transcoding.

Remote runners have to register on your instance first.

Transcoding threads @if (getTotalTranscodingThreads().atMost) { will claim at most {{ getTotalTranscodingThreads().value }} {{ getTotalTranscodingThreads().unit }} with live transcoding } @if (!getTotalTranscodingThreads().atMost) { will claim at least {{ getTotalTranscodingThreads().value }} {{ getTotalTranscodingThreads().unit }} with live transcoding } @if (formErrors.transcoding.threads) { {{ formErrors.transcoding.threads }} }

Transcoding jobs concurrencyallows to transcode multiple files in parallel jobs in parallel @if (formErrors.transcoding.concurrency) { {{ formErrors.transcoding.concurrency }} }

Transcoding profilenew transcoding profiles can be added by PeerTube plugins @if (formErrors.transcoding.profile) { {{ formErrors.transcoding.profile }} }

VIDEO STUDIO

Allows your users to edit their video (cut, add intro/outro, add a watermark etc)

@if (!isTranscodingEnabled()) { ⚠️ You need to enable transcoding first to enable video studio }

Use remote runners to process studio transcoding tasks.

Remote runners have to register on your instance first.