/XR3Player

🎧 🎼 The MOST ADVANCED JavaFX Media Player

Primary LanguageJavaGNU Lesser General Public License v3.0LGPL-3.0

ko-fi

XR3Player is running with Java 21 as minimum JDK

I am busy making mobile apps this period so i am maintining only for now


XR3Player ( Download )

The most advanced Java Media Player/Organizer you will ever find out there


Latest Version Join the chat at https://gitter.im/XR3Player/Lobby Download XR3Player Total Downloads License: LGPL v3 GitHub issues Patreon donate button PayPal donate button

Video
First

Attention for future contributors

Check the section HOW TO RUN PROJECT because it needs just 20 seconds of adding some extra VM parameters .

Platform Support ( 64 bit )

Installer Windows x64 MacOS x64 Linux x64 Android IOS
Download link X (help wanted) X (help wanted) X (planning) X (planning)
DJ UI Chromium Web Browser
First web_browser
Multiple Users Advanced UI
login_mode main_mode

HOW TO RUN PROJECT

To build XR3Player, you will need:

  • [JDK 21]
  • Maven - Version 3.8.1++

Open IntelliJ and fork the project (https://github.com/goxr3plus/XR3Player).

2019-08-01_18-04-22

In order to run the project you should add the following VM Options ( easy using IntelliJ , Eclipse or Netbeans ) :

--add-exports javafx.controls/com.sun.javafx.scene.control.behavior=com.jfoenix
--add-exports javafx.controls/com.sun.javafx.scene.control=com.jfoenix
--add-exports javafx.base/com.sun.javafx.binding=com.jfoenix
--add-exports javafx.graphics/com.sun.javafx.stage=com.jfoenix
--add-exports javafx.base/com.sun.javafx.event=com.jfoenix
--add-exports javafx.graphics/com.sun.javafx.scene=org.controlsfx.controls,
--add-exports javafx.graphics/com.sun.javafx.scene.traversal=org.controlsfx.controls

Ready to go :)

This is only for me when i build the new installers ( i wrote this to not forget in future )

How i package for the installer : Maven clean and then Maven package from the lifecycles .

It prepares a XR3Player_lib and a XR3Player.jar and it copies then using the assemply into a zip called XR3Player Update xxx . zip

image

image

Modular

  • As XR3Player codebase keeps growing i decided to make it modular so it's main components are the below :
    • XR3Player Core ( The main code of XR3Player )
    • XR3Capture ( For capturing the computer screen )
    • Stream Player ( Audio Library 100% Java )
    • //TODO JVisualizations ( Advanced Java Audio Visualizations Library )
    • //TODO JAmplitudeVisuals ( Advanced Java Library for representing Audio Amplitude Visualizations )

Features

  • Done ✔️
    • Support almost all audio formats through smart converting to .mp3
    • Amazing Audio Spectrum Visualizers
    • Audio Amplitudes Waveform
    • Chromium Web Browser
    • Full Dropbox access
    • Multiple User Accounts
    • Configurable via multiple settings
    • Advanced Tag Editor
    • File Organizer and Explorer
    • Multiple Libraries/Playlists support
    • System monitor ( CPU , RAM )
    • Audio Effects and Filters
  • TODO 🚧
    • XR3Player is actively developed. More features will come!
    • Support all audio file formats by default
    • Support all video file formats by default
    • Speech Recongition
    • Smart AI Assistant
    • Online Subscription website
    • Android and IOS applications

Java Audio Tutorials and API's by GOXR3PLUS STUDIO

QUESTIONS

System Requirements

1) At least 4 Cores CPU > 2.0 GHZ CPU Intel or AMD 
 
2) A good GPU (Graphics Processing Unit) [ It requires graphic power for visualizers ]

3) At least 4GB DDR3|DDR4 Ram [ Java Programs are known to consume a little bit more RAM ;) ]

License

https://www.google.com/search?q=GNU+LGPL+3.0&oq=GNU+LGPL+3.0&aqs=chrome..69i57j0.6247j0j4&sourceid=chrome&ie=UTF-8

About JxBrowser -- JX BROWSER IS BEING REMOVED

XR3Player uses JxBrowser http://www.teamdev.com/jxbrowser, which is a proprietary software, owned by TeamDev Ltd. The use of JxBrowser >is governed by JxBrowser Product Licence Agreement http://www.teamdev.com/jxbrowser-licence-agreement. You may not use JxBrowser separately from XR3Player project without explicit permission of TeamDev Ltd.

Specs / Open-source libraries:

  • Ikonli Font Icons packs Ikonli provides icon packs that can be used in Java applications. Currently Swing and JavaFX UI toolkits are supported.
  • ControlsFX UI controls and useful API for JavaFX 8.0 and beyond .
  • JFoenix JavaFX Material Design Library .
  • RichTextFX RichTextFX provides a memory-efficient text area for JavaFX that allows the developer to style ranges of text, display custom objects in-line (no more HTMLEditor), and override the default behavior only where necessary without overriding any other part of the behavior.
  • FX-BorderlessScene Undecorated JavaFX Scene with implemented move, resize, minimise, maximise, close and Windows Aero Snap controls.
  • JavaSysmon2 Manage OS processes and get cpu and memory stats cross-platform in Java.
  • Jnativehook Global keyboard and mouse listeners for Java .
  • Sqlite-jdbc SQLite JDBC Driver .
  • Commons-Validator A common issue when receiving data either electronically or from user input is verifying the integrity of the data. This work is repetitive and becomes even more complicated when different sets of validation rules need to be applied to the same set of data based on locale. Error messages may also vary by locale. This package addresses some of these issues to speed development and maintenance of validation rules.
  • EasyBind EasyBind leverages lambdas to reduce boilerplate when creating custom bindings, provides a type-safe alternative to Bindings.select* methods (inspired by Anton Nashatyrev's feature request, planned for JavaFX 9) and adds monadic operations to ObservableValue.
  • JSoup Java library for working with real-world HTML. It provides a very convenient API for extracting and manipulating data, using the best of DOM, CSS, and jquery-like methods.
  • JSON-Simple Java 7+ toolkit to quickly develop RFC 4627 JSON compatible applications
  • Java-Google-Speech-API J.A.R.V.I.S. Java Speech API: Just A Reliable Vocal Interpreter & Synthesizer. This is a project for the Java Speech API. The program interprets vocal inputs into text and synthesizes voices from text input. The program supports dozens of languages and even has the ability to auto-detect languages!
  • JAudioTagger Jaudiotagger is the Audio Tagging library used by Jaikoz for tagging data in Audio files.
  • Java-Stream-Player Java Advanced Audio Controller Library (WAV, AU, AIFF, MP3, OGG VORBIS, FLAC, MONKEY's AUDIO and SPEEX audio formats ).
  • JavaFX-Web-Browser Embeddable or Standalone JavaFX Web Browser.
  • Mp3agic A java library for reading mp3 files and reading / manipulating the ID3 tags (ID3v1 and ID3v2.2 through ID3v2.4).
  • JAVE2 The JAVE (Java Audio Video Encoder) library is Java wrapper on the ffmpeg project

Build Status