/Screenbox

Primary LanguageC#GNU General Public License v3.0GPL-3.0

Screenbox

The modern media player for Windows

Store link

Screenbox is a modern video player with a focus on performance and ease of use on a wide range of Windows devices. It features a beautiful, friendly user interface while being fast and lightweight. Screenbox is available on Windows devices and Xbox consoles.

Screenbox is built on top of LibVLCSharp and the Universal Windows Platform (UWP).

Screenshot of the home page

Screenshot of the video player

Some notable features:

  • Fluent design user interface
  • Gesture support for seeking and changing volume
  • Window resize hotkeys (number row 1-4)
  • YouTube inspired hotkey layout
  • Picture-in-picture mode
  • Save video frame as image
  • Chromecast support
  • Browse and play media over the network

And many more on the way!

Contribute

Feel free to open an issue if you want to report a bug, give feedback, or just want to ask a question. PRs are very welcome!

Translation

Crowdin

Help translate the app on Crowdin! Crowdin offers an intuitive UX for you to get started with localization and is therefore the recommended tool for the job.

If you wish to translate the app to other languages without Crowdin, follow the steps below.

Adding a new language

Requires Visual Studio 2022 and the Multilingual App Toolkit extension.

  • Fork and clone this repo.
  • Open in VS 2022.
  • Right click on the Screenbox project.
  • Select Multilingual App Toolkit > Add translation language.
    • If you get a message saying "Translation Provider Manager Issue," just click Ok and ignore it. It's unrelated to adding a language.
  • Select a language.
  • Once you select a language, new .xlf files will be created in the MultilingualResources folder.
  • Follow the steps of "Improving an existing language" below.

Improving an existing language

  • Inside the MultilingualResources folder, open the .xlf of the language you want to translate.
  • If you're using a text editor, translate the strings inside the <target> node. Then change the state property to translated.
  • If you're using the Multilingual Editor, translate the strings inside the Translation text field. Make sure to save to preserve your changes.
  • Once you're done, commit your changes, push to GitHub, and make a pull request.