57 lines
3.5 KiB
Markdown
57 lines
3.5 KiB
Markdown
# RadioDJViewer v1.8.0
|
|
|
|
**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.
|
|
|
|
## 🚀 New in v1.8.0: The Web Update
|
|
* **Integrated Web Server:** Hosts a live, high-performance web widget for OBS Browser Sources.
|
|
* **Tri-State Status Indicator:**
|
|
* 🔴 **Red:** Disconnected from RadioDJ API.
|
|
* 🟢 **Green:** Connected to API (Web Server Off).
|
|
* 🔵 **Blue:** Full Broadcast Mode (API Connected + Web Server Live).
|
|
* **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.
|
|
|
|
## 🛠 Features
|
|
* Connects to RadioDJ REST API to acquire real-time song info.
|
|
* Displays title, artist, and album (with scrolling marquee for long text).
|
|
* 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.
|
|
|
|
## 📋 Requirements
|
|
* Windows 7 or later.
|
|
* .NET Framework 4.7.2.
|
|
* RadioDJ with **REST Server Plugin** enabled and accessible.
|
|
|
|
## 🔧 Installation & Setup
|
|
1. Download the release ZIP and extract all files.
|
|
2. Ensure `RadioDJViewer.exe`, `Newtonsoft.Json.dll`, and `RadioDJViewer.exe.config` are present.
|
|
3. **Run `RadioDJViewer.exe` as Administrator** (Required for the Web Server to bind to your network port).
|
|
4. Configure your profile (IP, Port, Password, and Output Folder).
|
|
5. Click **Connect**. When the status box turns **Blue**, your web server is live.
|
|
|
|
## 🌐 Web Widget & Network Setup
|
|
### **Using in OBS**
|
|
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.
|
|
|
|
### **Network Verification (Firewall)**
|
|
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`.
|
|
|
|
## 📂 URL Variables
|
|
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.
|
|
|
|
## 📝 Project Background
|
|
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.
|
|
|
|
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.
|
|
|
|
## 🔗 Links
|
|
* **Repository:** [https://git.smartcraft.me/minster586/RadioDJViewer](https://git.smartcraft.me/minster586/RadioDJViewer)
|
|
* **Contact/Stream:** [https://links.smartcraft.me/@minster586](https://links.smartcraft.me/@minster586)
|
|
|
|
---
|
|
For questions or issues, please open an issue on the repository or contact the maintainer. |