Added new information for web server
This commit is contained in:
90
README.md
90
README.md
@@ -1,61 +1,57 @@
|
|||||||
# RadioDJViewer
|
# RadioDJViewer v1.8.0
|
||||||
|
|
||||||
RadioDJViewer is a Windows Forms application for displaying song information and album art from a RadioDJ REST API. It is designed for use with RadioDJ automation software and provides a simple interface for viewing and exporting currently playing track details.
|
**RadioDJViewer** is a Windows Forms application designed to display song information and album art from a RadioDJ REST API. It bridges the gap between your automation software and your broadcast visuals by serving data to physical local files and a built-in network web server simultaneously.
|
||||||
|
|
||||||
## Features
|
## 🚀 New in v1.8.0: The Web Update
|
||||||
- Connects to RadioDJ REST API to acquire song info
|
* **Integrated Web Server:** Hosts a live, high-performance web widget for OBS Browser Sources.
|
||||||
- Displays title, artist, and album (with scrolling marquee for long text)
|
* **Tri-State Status Indicator:**
|
||||||
- Shows album art or a fallback image if none is available
|
* 🔴 **Red:** Disconnected from RadioDJ API.
|
||||||
- Exports title, artist, album, and album art to output folder
|
* 🟢 **Green:** Connected to API (Web Server Off).
|
||||||
- Supports multiple profiles for different RadioDJ instances
|
* 🔵 **Blue:** Full Broadcast Mode (API Connected + Web Server Live).
|
||||||
- Auto-regenerates missing `profiles.json` and fallback image
|
* **Memory-Caching:** Data is served to the web widget directly from RAM for zero-latency updates and reduced disk wear.
|
||||||
|
* **Network-Wide Access:** View your "Now Playing" widget on any device (Phones, Tablets, or second PCs) on your local network.
|
||||||
|
|
||||||
## Requirements
|
## 🛠 Features
|
||||||
- Windows 7 or later
|
* Connects to RadioDJ REST API to acquire real-time song info.
|
||||||
- .NET Framework 4.7.2
|
* Displays title, artist, and album (with scrolling marquee for long text).
|
||||||
- RadioDJ REST API running and accessible
|
* Dual-Output: Exports `.txt` and `.png` files for legacy GDI+ sources while hosting the web stream.
|
||||||
|
* Supports multiple profiles for different RadioDJ instances.
|
||||||
|
* Auto-regenerates missing `profiles.json` and fallback images.
|
||||||
|
|
||||||
## Installation
|
## 📋 Requirements
|
||||||
1. Download the release ZIP and extract all files to a folder.
|
* Windows 7 or later.
|
||||||
2. Ensure the following files are present:
|
* .NET Framework 4.7.2.
|
||||||
- `RadioDJViewer.exe`
|
* RadioDJ with **REST Server Plugin** enabled and accessible.
|
||||||
- `Newtonsoft.Json.dll`
|
|
||||||
- `RadioDJViewer.exe.config`
|
|
||||||
- (Optional) `default.jpg` and `profiles.json` (will be auto-generated if missing)
|
|
||||||
3. Run `RadioDJViewer.exe`.
|
|
||||||
|
|
||||||
## Usage
|
## 🔧 Installation & Setup
|
||||||
1. Configure a profile with the REST API URL, output folder, and image settings.
|
1. Download the release ZIP and extract all files.
|
||||||
2. Click Connect to start polling the API and display song info.
|
2. Ensure `RadioDJViewer.exe`, `Newtonsoft.Json.dll`, and `RadioDJViewer.exe.config` are present.
|
||||||
3. Output files will be saved in the selected output folder.
|
3. **Run `RadioDJViewer.exe` as Administrator** (Required for the Web Server to bind to your network port).
|
||||||
4. If album art is missing, a fallback image will be used.
|
4. Configure your profile (IP, Port, Password, and Output Folder).
|
||||||
|
5. Click **Connect**. When the status box turns **Blue**, your web server is live.
|
||||||
|
|
||||||
## Some info for you
|
## 🌐 Web Widget & Network Setup
|
||||||
1. URL format follows the format from RadioDJ (http://{ip}:{port}/np?auth={password})
|
### **Using in OBS**
|
||||||
2. The Variables that you see in the URL format like "{ip},{port} and {password}" They need to be present in format box which you would have typed out, If not the program cannot access the REST API
|
Add a **Browser Source** in OBS using the URL: `http://localhost:8181`. You can customize the look using the "Custom CSS" box in the OBS properties.
|
||||||
|
|
||||||
## License
|
### **Network Verification (Firewall)**
|
||||||
This project is licensed under the MIT License.
|
To access the widget from another device (like a phone or second PC), you must open a port in the Windows Firewall:
|
||||||
|
1. Open **Windows Firewall with Advanced Security**.
|
||||||
|
2. Create a **New Inbound Rule** -> **Port** -> **TCP**.
|
||||||
|
3. Enter Port **8181** and select **Allow the connection**.
|
||||||
|
4. Access on your phone via: `http://{your-pc-ip}:8181`.
|
||||||
|
|
||||||
## Repository
|
## 📂 URL Variables
|
||||||
[https://git.smartcraft.me/minster586/RadioDJViewer](https://git.smartcraft.me/minster586/RadioDJViewer)
|
The URL format follows the RadioDJ standard: `http://{ip}:{port}/np?auth={password}`. Ensure `{ip}`, `{port}`, and `{password}` are correctly entered in the profile settings, or the program will be unable to parse the API data.
|
||||||
|
|
||||||
## My inspiration
|
## 📝 Project Background
|
||||||
I was inspired to use this make this program by a few people as I use Radio DJ for pretty much everything music relatedwise.
|
This project was born from a desire to move away from purely web-based external tools and create a native Windows utility for stream overlays. Special thanks to [Roderick's RadioDJ Tutorials](https://www.youtube.com/@RodericksRadioDJTutorials) for the inspiration and initial logic concepts.
|
||||||
When I started this it originally was just a command line console based program written in Java which is still available and works on pretty much any OS you can think of
|
|
||||||
This started off as a thing where I wanted my actual music playing program for streams playing video games to show what was playing
|
|
||||||
A quick google search led to a bunch of things that I liked but were web based and I was trying to stick away from web based programs
|
|
||||||
And I know that particular person that I'm about to mention is probably going to look at this and get a kick out of it
|
|
||||||
It got me thinking that is there a way that I can get the information and parse that information and this program was born
|
|
||||||
|
|
||||||
[https://www.youtube.com/@RodericksRadioDJTutorials] Yes I put your Youtube channel
|
This program was developed as a learning journey into C# and .NET, with significant collaborative assistance from **Microsoft Copilot** and **Google Gemini** to refine the API parsing and web server logic.
|
||||||
|
|
||||||
All things aside it works the way that I like there are a few more changes that I want to do to it
|
## 🔗 Links
|
||||||
For example debugging and what not but it should work on pretty much any system that has .NET framework 4.7.2 Obviously it says that in the requirements
|
* **Repository:** [https://git.smartcraft.me/minster586/RadioDJViewer](https://git.smartcraft.me/minster586/RadioDJViewer)
|
||||||
I will say the biggest thing that helped me was copilot I know it seems a little strange but as I am just learning how to do this I figured why not give it a shot
|
* **Contact/Stream:** [https://links.smartcraft.me/@minster586](https://links.smartcraft.me/@minster586)
|
||||||
|
|
||||||
With that being said if you want to see it live in action you can find my links page here Pop into my streams ask me about it
|
|
||||||
[https://links.smartcraft.me/@minster586]
|
|
||||||
|
|
||||||
---
|
---
|
||||||
For questions or issues, please open an issue on the repository or contact the maintainer.
|
For questions or issues, please open an issue on the repository or contact the maintainer.
|
||||||
Reference in New Issue
Block a user