Skip to content

ricmsd/flexplayer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FlexPlayer

FlexPlayer plays multiple video files in a grid. FlexPlayer is a desktop application built in Electron.

Features

  • D&D to add video files.
  • Play/stop, mute and loop playback of individual videos.
  • Ctrl key + mouse wheel to adjust video displayed per line.
  • Spacebar to play/stop all videos.
  • Loop playback of In/Out range.
  • Full screen playback of individual videos (full screen button at bottom right).
    • Left and right arrows to switch to other Video
  • Full screen playback without leaving the grid (F11 key).
  • Video repositioning by D&D
  • Other functions can be executed from Menu (Alt key)

Codec and Container Support

See https://www.chromium.org/audio-video/.

Notes

  • A powerful GPU is required to play large numbers of files simultaneously.
  • Still in the process of being built. It is a bit of a mess and has a lot of problems.

Screenshot

FlexPlayer

FlexPlayer

How to install

Download the latest version of the exe from the Releases page and install it, or refer to the "How to build" section below to build it yourself and generate an installer.

How to build

Requirements

  • Node.js (Tested on v18.17.1)
  • Windows OS (Tested on Windows 11, not sure if it works as expected on MacOS or Linux)

Build

git clone https://github.com/ricmsd/flexplayer.git
cd flexplayer/player
npm install
npm run build
cd ../electron
npm install
npm run forge:make

If the above is successful, the installer will output flexplayer-X.X.X Setup.exe (where X.X.X is the version number) under flexplayer/electron/out. Run this to install.

If you want to try it out without installing it, run npm run forge:start instead of npm run forge:make.

TODO

  • Add volume control
  • Improve mini player (The thumbnail that is displayed when setting seek or In/Out points)
  • D&D of folder
  • Application icon replacement