Media Wall Dashboard/Control Hub
A comprehensive control system for managing video wall displays with support for Samsung MagicInfo, OptiSigns, and custom content deployment.
- Display Control: Power, volume, input source management
- Content Management: Static content, streaming, scheduled deployment
- Multi-Platform Support: MagicInfo, OptiSigns integration
- Real-Time Monitoring: WebSocket-based status updates
- Scheduling: Automated content deployment
- Web Interface: Tablet-optimized control panel
- Python 3.8+
- Network access to displays
- Optional: MagicInfo Server, OptiSigns account
- Clone the repository:
git clone https://github.com/yourusername/video-wall-control.git
cd video-wall-control- Install dependencies:
pip install -r requirements.txt- Configure your system:
cp config.yaml.example config.yaml
# Edit config.yaml with your display IPs and credentials- Run the server:
python video_wall_server.py- Open the control panel:
http://localhost:5000
docker-compose up -dUpdate config.yaml with your display information:
displays:
1:
name: "Main Display"
ip: "192.168.1.101"
port: 1515
protocol: "tcp"magicinfo:
server_url: "http://your-magicinfo-server:7001"
username: "admin"
password: "your-password"
api_key: "your-api-key"optisigns:
server_url: "http://your-optisigns-server:8080"
api_key: "your-api-key"POST /api/displays/{id}/power- Control display powerPOST /api/displays/{id}/volume- Set volume levelPOST /api/displays/{id}/input- Change input sourceGET /api/displays/{id}/status- Get display status
POST /api/content/deploy- Deploy content to displaysPOST /api/content/schedule- Schedule content deploymentGET /api/magicinfo/channels- Get MagicInfo channelsGET /api/optisigns/playlists- Get OptiSigns playlists
- Samsung MDC Protocol (TCP/IP)
- RS232 Serial (COM ports)
- Custom HTTP APIs
sudo ./install.shdocker-compose -f docker-compose.prod.yml up -dUpdate nginx configuration for HTTPS:
server {
listen 443 ssl;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
# ... rest of config
}- Display not responding: Check network connectivity and port configuration
- MagicInfo integration fails: Verify server URL and credentials
- Content not deploying: Check file permissions and paths
tail -f /opt/video-wall-control/logs/video_wall.logFLASK_ENV=development python video_wall_server.py- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
MIT License - see LICENSE file for details
- Documentation: Wiki
- Issues: GitHub Issues
- Email: [email protected]