2021-01-21 14:19:04 +01:00
2021-01-23 09:02:06 +01:00
2021-01-21 20:00:17 +01:00
2020-12-02 16:04:17 +01:00
2021-01-21 20:00:17 +01:00
2020-10-22 11:44:14 +02:00
2020-11-30 11:11:08 +01:00
2020-10-31 16:43:27 +01:00
2020-09-19 22:31:13 +02:00
2020-09-08 19:55:59 +02:00
2020-08-30 19:40:14 +02:00
2020-10-15 10:45:57 +02:00
2021-01-21 12:16:50 +01:00
2021-01-23 09:01:52 +01:00

Clapper

A GNOME media player build using GJS with GTK4 toolkit. The media player is using GStreamer GstPlayer API as a media backend and renders everything via OpenGL.


Windowed Mode


Fullscreen Mode


Floating Mode

WORK IN PROGRESS

This is still early WIP. Many features are not implemented yet and quite a few are still unstable.

Features:

The Flatpak package includes all required dependencies and codecs. Additionally it also has a few patches, thus some functionalities work better (or are only available) in Flatpak version (until my changes are accepted upstream). It is provided as an easy "just install and use" solution.

flatpak install https://rafostar.github.io/flatpak/com.github.rafostar.Clapper.flatpakref

Packages / Installation from source code

The pkgs folder in this repository contains build scripts for various package formats. You can use them to build package yourself or download one of pre-built packages:

Debian, Fedora, openSUSE & Ubuntu

Pre-built packages are available in my repo (see status).

Arch Linux

You can get Clapper from the AUR: clapper-git

Important: If you build Clapper from source code or install it using any other packaging system than Flatpak, you will still need some additional GStreamer elements and patches that are not upstreamed in GStreamer source code yet. The requirements and how to build from git source code are described in the wiki.

Q&A

Q: Does using GJS negatively impact video performance?
A: Absolutely not. GJS here is used to put together the GUI during startup. It has nothing to do with video rendering. All used GTK4 and GStreamer libraries are in C. Even the custom video widget that I prepared for this player (based on original GTK3 implementation) is a compiled C code. All these libs are acting "on their own" and no function calls from GJS related to video decoding and rendering are performed during playback.

Q: What settings should I set to maximize performance?
A: As of now, player works best on Wayland session. Wayland users might want to try enabling the experimental vah264dec plugin for improved performance (this plugin does not work on Xorg right now) for standard (8-bit) H.264 videos. It can be enabled from inside player preferences dialog inside Advanced -> GStreamer tab using customizable Plugin Ranking feature. Since the whole app is rendered using your GPU, users of VERY weak GPUs might try to disable the "render window shadows" option to have more GPU power available for non-fullscreen video rendering.

Other Questions?

Feel free to ask me any questions.
Use either GitHub discussions or come and talk on Matrix: #clapper-player:matrix.org

Special Thanks

Many thanks to sp1ritCS for creating and maintaining package build files.

Thanks a lot to all the people who are supporting the development with their anonymous donations through Liberapay. I ❤️ U.

Description
Level up your video experience with a modern and user-friendly media player.
Readme 25 MiB
Languages
C 96.7%
Meson 2.8%
CSS 0.5%