https://github.com/austinsonger/gridcast
GridCast is a macOS/Windows Electron application that allows users to play multiple M3U8 streams and MP4 files in a dynamic 2x2 grid layout. Built with Electron.js, MPV, and HLS.js, it provides a seamless way to load, manage, and persist playlists for multiple video streams.
https://github.com/austinsonger/gridcast
grid-layout-video live-stream-viewer mac macos macos-video-app minimal-ui-player multi-stream-player persistent-playlists playlist-management video-player video-streaming windows
Last synced: 2 months ago
JSON representation
GridCast is a macOS/Windows Electron application that allows users to play multiple M3U8 streams and MP4 files in a dynamic 2x2 grid layout. Built with Electron.js, MPV, and HLS.js, it provides a seamless way to load, manage, and persist playlists for multiple video streams.
- Host: GitHub
- URL: https://github.com/austinsonger/gridcast
- Owner: austinsonger
- Created: 2025-01-31T16:31:19.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-03-12T00:10:05.000Z (3 months ago)
- Last Synced: 2025-03-19T01:54:37.899Z (3 months ago)
- Topics: grid-layout-video, live-stream-viewer, mac, macos, macos-video-app, minimal-ui-player, multi-stream-player, persistent-playlists, playlist-management, video-player, video-streaming, windows
- Language: JavaScript
- Homepage:
- Size: 1.16 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
> You will need a tool to get the m3u8 url like https://github.com/puemos/hls-downloader
# GridCast
GridCast is a **macOS Electron application** that allows users to play multiple M3U8 streams and MP4 files in a **dynamic 2x2 grid layout**. Built with **Electron.js**, **MPV**, and **HLS.js**, it provides a seamless way to load, manage, and persist playlists for multiple video streams.
### After the application opens up
### Adding a m3u8 URL or MP4
### When 4 Live Streams are running
---
## **Features**
✅ **2x2 Grid Layout** – Four independent video players
✅ **MPV & HLS.js Integration** – Supports M3U8 streams & MP4 playback
✅ **Stream Loading** – Load M3U8 URLs or upload MP4 files
✅ **Persistent Playlists** – Playlists are saved & restored on launch
✅ **Hover-Based UI** – Controls appear only when needed
✅ **Error Handling** – Alerts users for failed streams
✅ **Minimal UI Design** – Clean and auto-hiding interface## **Installation**
### **Download the App**
1. Navigate to the **Releases** section on GitHub.
2. Download the latest **`GridCast.dmg`** for your macOS architecture (**x64** or **arm64**).
3. Open the `.dmg` file and drag `GridCast` into your **Applications** folder.---
## **Usage**
1. **Launch the App** – Open `GridCast` from the Applications folder.
2. **Load a Stream** – Click on a video player to input an M3U8 URL or upload an MP4 file.
3. **Manage Playlists**:
- Click **"Add to Playlist"** after loading a stream.
- View the playlist by hovering over the video player.
- Click a playlist item to switch streams.
- Remove a playlist item by clicking the **"Remove"** button.
4. **Auto-Save & Restore** – Playlists are saved and will load when the app is restarted.---
## **Development Setup**
### **1. Clone the Repository**
```sh
git clone https://github.com/yourusername/gridcast.git
cd gridcast
```## Install Dependencies
```sh
npm install
```## Run the App Locally
```sh
npm start
```## Build for macOS
```sh
npm run build:macos
```## Dependencies
- Electron.js – Desktop application framework
- MPV.js – Video player integration
- HLS.js – M3U8 stream support
- electron-builder – Packaging and distribution
- electron-packager – App bundling## Contributing
- Fork the repository and create a new branch.
- Make your changes and commit them.
- Submit a pull request.## License
📜 Licensed under the
## Author
- 💻 Created by Austin Songer
- 📧 Contact: [email protected]