Skip to content

x-software-com/mxl-plyr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CI checks CI packaging dependency status License Conventional Commits Downloads of latest release Latest stable release

MXL Plyr: Overview

MXL Plyr is an open source media player focused on the use with the MXL Recorder.

This tool is constantly evolving, and we always appreciate contributions!

Packages are available for download.

If you've never used MXL Plyr before, or if you're trying to figure out how to use it, check out our Getting Started section.

For short description of available commands, once you've installed MXL Plyr, you can run mxl-plyr --help.

Table of Contents

Getting Started

First, follow the quick start guide for Linux, depending on what you're using.

If you need a feature or encounter a problem, you can open an issue on the GitHub repo where the MXL team and community can see it.

Quick Start: Linux

Prerequisites:

Install just and download the repository

cargo install just
git clone https://github.com/x-software-com/mxl-plyr
cd mxl-plyr

Setup using the system libraries

just setup

Setup using the vcpkg libraries

just setup-vcpkg
just mxl-env

Development

To build and run the MXL Plyr:

cargo r --all-features

Packaging

Setup and build the project to verify everything is setup properly:

just config
just build

To create an AppImage execute:

just linuxdeployimg
just appimage-from-linuxdeployimg

Installing Linux Developer Tools

Across the different distributions of Linux, there are different packages you'll need to install:

AlmaLinux, Rocky Linux, CentOS and other RedHat-based distributions

$ sudo sed -i -re "s|enabled=0|enabled=1|g" /etc/yum.repos.d/almalinux-powertools.repo
$ sudo dnf install epel-release
$ sudo dnf install xz bzip2 python39-pip gcc-toolset-12 make cmake ninja-build git \
    elfutils autoconf automake libtool zlib-devel curl zip unzip tar bison flex \
    pkgconfig nasm yasm clang rsync desktop-file-utils pulseaudio-libs-devel vulkan-loader-devel \
    wayland-devel wayland-protocols-devel mesa-libGL-devel libX11-devel libXft-devel \
    libXext-devel libXrandr-devel libXi-devel libXcursor-devel libXdamage-devel libXinerama-devel \
    libxkbcommon-devel libxkbcommon-x11-devel perl-IPC-Cmd
$ pip3 install meson

Debian, Ubuntu, popOS, and other Debian-based distributions

$ sudo apt-get update
$ sudo apt-get install build-essential git tar curl zip unzip rsync clang nasm autoconf libtool \
    bison meson flex gettext patchelf libx11-dev libxft-dev libxext-dev  libx11-dev \
    xserver-xorg-dev xorg-dev libxkbcommon-dev libxkbcommon-x11-dev libx11-xcb-dev libva-dev \
    libgles2-mesa-dev  libglu1-mesa-dev freeglut3-dev mesa-common-dev libegl1-mesa-dev \
    libvulkan-dev libwayland-dev wayland-protocols libpulse-dev linux-tools-common \
    linux-tools-generic desktop-file-utils

ArchLinux, Manjaro Linux, EndeavourOS, and other ArchLinux-based distributions

To install rust follow these steps: https://wiki.archlinux.org/title/Rust

Building with vcpkg

$ sudo pacman -Sy zip nasm python-pipx python-pip meson git curl unzip tar cmake ninja clang \
    python-distutils-extra libtool flex libva libxdamage rsync pkg-config autoconf automake make \
    bison desktop-file-utils libx11 libxext libxrender libpulse wayland wayland-protocols \
    wayland-utils egl-wayland libxkbcommon libxkbcommon-x11 libxrandr libxi libxcursor libxinerama

Building with system components

$ sudo pacman -Sy git clang pkg-config gtk4 libadwaita gst-libav gst-plugin-pipewire gst-plugin-va \
    gst-plugins-bad gstreamer gst-plugins-bad-libs gst-plugins-base gst-plugins-base-libs \
    gst-plugins-good gst-plugins-ugly gstreamer-vaapi

For any other distributions, make sure you're installing at least gcc and g++. If you want to add instructions for your specific distribution, please open a PR!

Contributing

MXL Plyr is an open source project, and is thus built with your contributions. Here are some ways you can contribute:

Please refer to our Contributing Guide for more details.

Privacy

We believe that privacy is a human right, period.

MXL Plyr does respect your privacy, we collect no data and do not send any telemetry or usage data.

License

The code in this repository is licensed under either of Apache-2.0 License or MIT License at your option.