Initial commit - Video Player Log Analyzer with comprehensive print report feature
Features: - Interactive dashboard with real-time statistics - NFC scan tracking and video playback analytics - Trailer randomization monitoring - 4 interactive Chart.js visualizations (Event Timeline, Hourly Activity, Top Videos, Time Between Scans) - Comprehensive print report with all charts and detailed tables - Parser correctly identifies 585 actual scans vs configuration lines - NFC mapping lookup eliminates Unknown entries - Professional purple gradient theme with responsive design
This commit is contained in:
127
README.md
Normal file
127
README.md
Normal file
@@ -0,0 +1,127 @@
|
||||
# Video Player Log Analyzer
|
||||
|
||||
HTML-based log analyzer for the Moonlight Drive-In Theater NFC video player system. Features real-time statistics dashboards, interactive charts, video playback analytics, and print-ready activity reports.
|
||||
|
||||
## Features
|
||||
|
||||
### Interactive Dashboard
|
||||
- **Real-time Statistics**: Track total NFC scans, unique videos, trailers played, and average time between scans
|
||||
- **Dynamic Charts**: 4 interactive Chart.js visualizations with filtering options
|
||||
- **Video Details**: Click any video to see detailed playback timeline and statistics
|
||||
|
||||
### Visualization Types
|
||||
1. **Event Timeline**: Scatter plot showing all NFC scans, videos, and trailers over time
|
||||
2. **Hourly Activity**: Bar chart showing event distribution across 24-hour period
|
||||
3. **Top 15 Videos**: Horizontal bar chart ranking most-played content
|
||||
4. **Time Between Scans**: Line graph tracking intervals between consecutive NFC scans
|
||||
|
||||
### Print Report
|
||||
- One-click comprehensive PDF report generation
|
||||
- Includes all 4 charts optimized for print
|
||||
- Complete tables of NFC scans and trailer playback
|
||||
- Summary statistics at-a-glance
|
||||
- Professional purple theme with clean layout
|
||||
|
||||
### Log Parsing
|
||||
- **Accurate Scan Detection**: Correctly identifies actual runtime NFC scans vs configuration loading
|
||||
- **Mapping Resolution**: Automatically resolves NFC IDs to video/folder names from log configuration
|
||||
- **Folder Support**: Recognizes sequential folder playback patterns
|
||||
- **Trailer Tracking**: Monitors randomization and prevents repeat detection
|
||||
|
||||
## Usage
|
||||
|
||||
1. **Open the HTML File**: Simply open `video_player_log_analyzer.html` in any modern web browser (Chrome, Firefox, Edge, etc.)
|
||||
|
||||
2. **Load Log File**: Click "📁 Load Log File" and select your `video_player_YYYYMMDD_HHMMSS.log` file
|
||||
|
||||
3. **Explore Data**:
|
||||
- View statistics cards at the top
|
||||
- Use chart type dropdown to switch between visualizations
|
||||
- Apply event filters (All Events / NFC Scans Only / Trailers Only)
|
||||
- Click on videos in the list to see detailed playback timelines
|
||||
|
||||
4. **Generate Report**: Click "🖨️ Print Report" button to create a comprehensive PDF report with all charts and tables
|
||||
|
||||
## Technical Details
|
||||
|
||||
### Dependencies
|
||||
- **Chart.js** (3.x): Interactive charts and graphs
|
||||
- **date-fns** (2.29.3): Date/time formatting utilities
|
||||
|
||||
All dependencies are loaded from CDN - no installation required!
|
||||
|
||||
### File Format
|
||||
Works with log files generated by the Moonlight Drive-In Theater video player system. Expected log patterns:
|
||||
- `Processing NFC input: [id]` - Actual NFC scan events
|
||||
- `Mapped NFC [id] -> [video/folder]` - Configuration mappings
|
||||
- `Selected trailer: [filename]` - Trailer playback
|
||||
- `Queued specific video: [filename]` - Video queuing
|
||||
- `Folder '[name]': Playing video [x]/[total]` - Sequential folder playback
|
||||
|
||||
### Browser Compatibility
|
||||
- Chrome 90+
|
||||
- Firefox 88+
|
||||
- Edge 90+
|
||||
- Safari 14+
|
||||
|
||||
## Print Report Features
|
||||
|
||||
### Summary Statistics
|
||||
- Total NFC Scans
|
||||
- Videos Played
|
||||
- Trailers Played
|
||||
- Average Time Between Scans
|
||||
|
||||
### Charts (Print-Optimized)
|
||||
- Event Timeline (800x200px)
|
||||
- Hourly Activity (800x300px)
|
||||
- Top 15 Videos (800x400px)
|
||||
- Time Between Scans (800x300px)
|
||||
|
||||
### Detailed Tables
|
||||
- **NFC Scans**: Scan #, Timestamp, NFC ID, Video/Folder Name
|
||||
- **Trailers**: Trailer #, Timestamp, Filename
|
||||
|
||||
### Print CSS
|
||||
- Professional purple theme (#7c3aed)
|
||||
- Alternating row colors for readability
|
||||
- Page break controls
|
||||
- Optimized headers and borders
|
||||
|
||||
## Development History
|
||||
|
||||
### Version 1.0
|
||||
- Initial release with NFC scan tracking
|
||||
- Basic chart visualizations
|
||||
- Video playback statistics
|
||||
|
||||
### Version 1.1 (Current)
|
||||
- **Fixed**: Parser now correctly identifies actual NFC scan events
|
||||
- **Added**: NFC mapping lookup to eliminate "Unknown" entries
|
||||
- **Added**: Comprehensive print report feature
|
||||
- **Added**: Error handling and debugging
|
||||
- **Improved**: Statistics accuracy (585 actual scans vs 72 config lines)
|
||||
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
video-player-log-analyzer/
|
||||
├── video_player_log_analyzer.html # Single-file application
|
||||
└── README.md # This file
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Created for the Moonlight Drive-In Theater project.
|
||||
|
||||
## Author
|
||||
|
||||
Jess @ Hideaway Gaming
|
||||
- Gitea: https://gitea.hideawaygaming.com.au/jessikitty
|
||||
- Email: jess@hideawaygaming.com.au
|
||||
|
||||
## Related Projects
|
||||
|
||||
- **Moonlight Drive-In Theater**: Main NFC-based video player system
|
||||
- **NFC Mapping Configuration**: Tag ID to video/folder mapping system
|
||||
- **Trailer Randomization**: Anti-repeat logic for trailer selection
|
||||
Reference in New Issue
Block a user