Extension WebM 

Classification

webm

Version

4.0

Language

English

Description

Manual covering the TYPO3 extension "webm".

Keywords

webm,video,ffmpeg,performance,compression,compress,convert,mp4,ogg,x-m4v

Copyright

2023

Author

Manuel Schnabel

Email

service@passionweb.de

License

This document is published under the Open Publication License available from http://www.opencontent.org/openpub/

Rendered

Thu, 09 Jul 2026 07:55:22 +0000

The content of this document is related to TYPO3, a GNU/GPL CMS/Framework available from www.typo3.org.

Table of Contents

Introduction 

What does it do? 

Creates a _WebM_ file for every configured (and supported) video format. Either via Symfony command or hook (can be configured)

original.mp4 --> original.webm

What is WebM? 

WebM is an audiovisual media file format. It is primarily intended to offer a royalty-free alternative to use in the HTML5 video and the HTML5 audio elements. It has a sister project, WebP, for images. The development of the format is sponsored by Google, and the corresponding software is distributed under a BSD license. The WebM container is based on a profile of Matroska. WebM initially supported VP8 video and Vorbis audio streams. In 2013, it was updated to accommodate VP9 video and Opus audio. It also supports the new AV1 codec.

Drawbacks 

Note that this extension produces an additional load on your server (each supported video will be processed) and possibly creates a lot of additional files that consume disk space. Size varies depending on your configuration.

Used solutions and libraries 

This extension uses the FFmpeg solution and the PHP-FFmpeg library. You need to prepare your server for the usage and must install the necessary packages. A complete guide and further information can be found here:

Browser Support 

Achieving more together or Feedback, Feedback, Feedback 

I'm grateful for any feedback! Be it suggestions for improvement, extension requests or just a (constructive) feedback on how good or crappy the extension is.

Feel free to send me your feedback to service@passionweb.de or contact me on Slack

Administration Manual 

Target group: Administrators

Requirements 

This extension uses the FFmpeg solution and the PHP-FFmpeg library. You need to prepare your server for the usage and must install the necessary packages. A complete guide and further information can be found here:

Installation 

Add via composer.json:

composer require "passionweb/webm"
Copied!

Configuration 

Extension manager configuration 

You can set parameters for the conversion in the extension configuration.

# cat=basic; type=boolean; label=Convert video on save action in backend (default=convert with task/Symfony command)
convertOnSave = 0
Copied!

Every video will be added to the queue and will be processed with the corresponding task/Symfony command by default. If you want to convert the video with saving it you can enable that with this option. The video will not be added to the queue.

# cat=basic; type=string; label=Supported mime types (comma separated)
mimeTypes = video/mp4,video/ogg,video/x-m4v,application/ogg
Copied!

You can decide the mime types which will be considered by the convertion.

# cat=basic; type=int+; label=Max file size of original video to convert (videos which are larger wil be ignored)
maxVideoFileSize = 0
Copied!

You can set a maximum file size of the original video to convert to avoid a possible server overload. If this value is greater than 0 videos which are larger than the entered value wil be ignored during convertion.

# cat=basic; type=int+; label=Save queue items in this folder/storage
storagePid = 0
Copied!

You can set a specific folder/storage where queue items will be stored by entering the corresponding page uid.

Web server configuration 

This extension uses the FFmpeg solution and the PHP-FFmpeg library. You need to prepare your server for the usage and must install the necessary packages. A complete guide and further information can be found here:

Known Problems 

There are currently no known issues. If you encounter one please file a report at issue tracker.