What is video transcoding and why is it important?

Stefan Ganz
Reading time: 5 min
5. March 2024
Video-Transkodierung mit VIMP

We often hear that videos need to be transcoded on the server. But why is this necessary and what exactly happens during transcoding? You will find answers to these questions in this article.

Let’s start at the beginning: You have recorded an impressive video with your smartphone, which you now want to make available to a large audience via a video platform. Depending on the smartphone, your recording will be saved in a special format. This format can vary from smartphone to smartphone, as each manufacturer tries to achieve the optimum ratio of quality to storage space utilisation for their device.

Formats and codecs

Let’s assume that your video was saved in an HEVC format. This is a comparatively new format that achieves very good quality with high compression efficiency.

HEVC stands for “High Efficiency Video Coding” and is one of many video formats. Other formats include MP4, MOV and AVI. The file extensions with the same name merely represent a container in which there is usually one video and one audio track. These tracks are available in a defined codec, e.g. H.265, H.264 or VP9 for the video image and e.g. AAC, MP3 or Opus for the audio track.

Necessity of transcoding

Of course, it is ensured that the videos recorded on the smartphone also play on this device. But what happens if the files are shared or uploaded to a video platform, as in our example?

In these cases, there is no guarantee that the video will also play on the other device or platform because the original format may not be supported. This is why videos – especially on video platforms – are first converted (transcoded) into formats supported there.

As video platforms can usually also be accessed via the browser, a special feature of the browser manufacturers comes into play here. Not all browsers support the same video formats. In particular, the HEVC videos mentioned in our example cannot yet be played in all browsers. For this reason, we must first look for a common denominator in browser support and select a target format that can be played by all browsers. The uploaded videos are automatically converted into this format.

Of course, a video could alternatively be transcoded into different formats for different browsers and devices. However, this would be very computationally intensive, would take considerably longer and would also increase the storage space required on the server. This is why you benefit from the system focussing on one format.

For compatibility and sustainability reasons, as well as to minimise the amount of data on the server, we limit our VIMP video platform solution to the MP4 video format. All uploaded videos are automatically converted into this format before they can be played via the platform. A MOV, AVI or even HEVC is therefore converted to MP4.

Multiple quality levels

In modern video platforms such as VIMP, an uploaded video is also transcoded into several quality levels so that it can be played back optimally at both high and low bandwidths.

Your uploaded video is therefore ultimately stored on the server in several quality levels, which then decides which version to play depending on the available bandwidth.

This is a great thing in that, on the one hand, the available bandwidth is used optimally and, on the other hand, interruptions for reloading videos are minimised. For example, if you are travelling in the country with your smartphone and can currently only access the video platform with a shaky 3G connection, you will see the same video as at home with your fast fibre optic connection, but from a different file, which has a different quality and therefore requires less bandwidth.

Adaptive bitrate streaming

To make the whole process even smoother, VIMP supports adaptive bitrate streaming (ABR). This involves splitting each video into many small file chunks. These are available for each video in each defined quality level and are sent to the player one after the other, where they are played back seamlessly. If the user’s available bandwidth changes during playback of the video, a chunk that better matches the available bandwidth is selected for the next transmission. This means that the video can always be played back smoothly even if the bandwidth fluctuates. The quality automatically adapts to the general conditions.

Bitrate tuning

As we have learnt, every video uploaded to VIMP is duplicated into several quality levels. As the operator of your video platform, you can define exactly which quality levels these should be (e.g. Full HD, 4K, etc.). You can go into great detail by specifying the bit rates and other values individually for each format.

The bit rate for videos refers to the amount of data that is transmitted or processed per unit of time and is specified in bits per second (bps). In the context of videos, the bit rate indicates how much data is used for a video per second to determine its quality and file size. A higher bit rate usually means better video quality, as more data can be used to display images and reduce compression artefacts. However, this also leads to larger file sizes and a higher bandwidth requirement for streaming.

The default settings in VIMP provide a good compromise between quality and file size. Sometimes, however, it makes sense to increase the bit rate for the formats, for example if your users mainly upload very text-heavy videos (such as conference or lecture recordings). By increasing the bit rate, the text displayed is sharper. With VIMP, you therefore have every opportunity to tweak the necessary “screws” for an ideal display.

Conclusion

As you can see, video transcoding is a relatively complex topic. The good thing about our video platform solution is that you only have to deal with this topic very superficially and the software takes care of the really complicated part for you.

You can concentrate fully on your content and the VIMP video platform ensures that all videos are played optimally on all devices and under all conditions.

If you have any questions or would like more information about our solutions, please call us directly on +49 (0)89 1200 1020 or use our contact form!

VIMP Installation Service

Leave the complete installation process of your VIMP platform to us.

 

The VIMP installation service includes:

To access your server from the outside, we need the following:

We recommend Linux as operating system. An installation under UNIX, BSD or Windows is also possible, but is not officially supported by us.

Minimum server requirements for installing VIMP:

Webserver

PHP

MySQL/MariaDB

Transcoding
Please install the transcoding tools exactly as described in the documentation. Installing the standard packages is not sufficient due to patent regulations.

CSS modifications
To concatenate modified CSS files, npm must be installed.

Hardware

As a minimum requirement we recommend:

For productive use we recommend:

We recommend using a RAID controller for additional data security.

VIMP Installationsservice

Überlassen Sie den kompletten Installationsprozess Ihrer VIMP-Plattform uns.

 

Der VIMP Installationsservice beinhaltet:

  • Vorbereitung Ihres Servers
  • Installation der erworbenen VIMP Software
  • Installation der Transcoding Tools

Um von außen auf Ihren Server zugreifen zu können, benötigen wir folgendes:

  • SSH-Zugriff auf Ihren Server (idealerweise als root)
  • Vorinstalliertes Hosting (Apache + MySQL/MariaDB)

Wir empfehlen Linux als Betriebssystem. Eine Installation unter UNIX, BSD oder Windows ist ebenfalls möglich, wird von uns aber nicht offiziell unterstützt.

Minimale Servervoraussetzungen für die Installation von VIMP:

Webserver

  • Apache2
    • Version 2.4 empfohlen
  • oder NGINX

PHP

  • Version 7.1 – 8.0
  • GD-Bibliothek, openssl, cURL, MySQL, mbstring, PDO, pdo_mysql und XSL-Erweiterungen müssen installiert sein
  • PHP CLI (Command Line Interface) muss installiert sein
  • SourceGuardian Extension (außer für ViMP Ultimate Extended)

MySQL/MariaDB

  • MySQL: Version 5.7 – 8.0
  • MariaDB: Mindestens Version 10.2
  • InnoDB muss installiert sein

Transcoding
Die Transcoding-Tools bitte genau wie in der Dokumentation beschrieben installieren. Die Installation der Standardpakete ist aufgrund patentrechtlicher Bestimmungen nicht ausreichend.

  • FFmpeg
  • FFProbe
  • exiftool (>10.8)
  • time

CSS-Anpassungen
Um modifizierte CSS-Dateien zu verketten, muss npm installiert sein.

Hardware

Als Mindestanforderung empfehlen wir:

  • Quad-Core-Prozessor
  • 8 GB RAM
  • 500 GB Festplattenspeicher (die benötigte Größe hängt im Wesentlichen von der Medienzahl ab)

Für den produktiven Einsatz empfehlen wir:

  • Hexa-Core-Prozessor oder besser (mehr Kerne ermöglichen insbesondere eine schnellere Transcodierung der Medien)
  • 32 GB RAM oder mehr
  • 2000 GB Festplattenspeicher oder mehr (die benötigte Größe hängt im Wesentlichen von der Medienzahl ab)

Wir empfehlen die Verwendung eines RAID-Controllers für zusätzliche Datensicherheit.

Kontakt aufnehmen

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Request demo

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Contact us

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Demo anfordern

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Kontakt aufnehmen

"*" indicates required fields

This field is for validation purposes and should be left unchanged.