0.0.9: Multimedia

2025-04-15

Beta version 0.0.9 is here.

As mentioned in the previous blogpost, we are now shipping ffmpeg with this addon.

Godot includes a videoplayer, but it supports only Ogg Theora (.ogv). In addition, it comes with limitations.

Introducing new nodes

We are introducing 3 new nodes:

QVideoPlayerView

Below is a h264 video at 4K 60fps. Some lag, but only due to OBS recording.

Features

  • Built-in (optional) UI that resembles mpv
  • Hardware accelerated, if such hardware is available (for example, cuda)
  • Supports many codecs
  • Play from the local filesystem, or URL
  • Play rtmp, rtp, m3u8 streams
  • Built-in (optional) subtitles
  • Switch audio stream
  • Extensive API that allows for control (e.g. seeking), see API reference

Bloomberg YouTube example

As mentioned above, QVideoPlayerView can play streams, for example a live YouTube stream.

Bloomberg is always streaming at https://www.youtube.com/@markets

yt-dlp --print urls https://www.youtube.com/watch?v=iEpJwprxDdk
[copy the resulting URL]

Technology Preview

QVideoPlayerView is a technology preview, and is known to work on Linux X11 + nvidia drivers.

We are observing issues on:

  • Linux X11 + intel integrated graphics
  • Windows
  • MacOS remains untested

This will be fixed in later release(s).

For a 4x4 stress test, consult the following code.

QScreenCaptureView

This node was made specifically for Twitch streamers, who wish to incorporate their desktop in a Godot scene, which can then be streamed through OBS.

Features

  • Specify what display should be captured (by index, model name, serial number)
  • Hardware accelerated

We tested this node successfully on both Windows and Linux.

QCameraView

Provides an easy way to access a webcam / camera input.

Check-out the API reference, it allows for granular control.

We tested this node successfully on both Windows and Linux.

Downloads

Thanks for reading this blog post.

Visit the downloads page and grab yourself a release build.

For help or feedback, reach out via: - Discord - Github issue tracker

Sander Ferdinand