HyperTizen is a Hyperion / HyperHDR capturer for Tizen TVs.
This project doesn't actually work yet (or may only partially work). It started with someone else's excellent work, and most of the "development" was done by burning through way too many AI credits. There's a good chance that half the code is complete gibberish that just looks technical. Use at your own risk, and lower your expectations accordingly.
If you somehow find this useful, or just want to support questionable AI-driven development practices:
This is an experimental fork of HyperTizen focused on exploring screen capture functionality for Tizen 8.0+ TVs. The original HyperTizen uses capture APIs that may have different availability on newer TV models. This fork provides a scaffolding structure for researching and implementing potential capture methods for Tizen 8.0+ compatibility.
This fork is focused on implementing screen capture functionality for Tizen 8.0+ TVs.
✅ Pixel Sampling Capture Method: Now IMPLEMENTED using libvideoenhance.so
- Samples 16 pixels from screen edges for ambient lighting
- Converts 10-bit RGB to NV12 format for FlatBuffers transmission
- Supports both Tizen 6 and Tizen 7+ API variants
- Requires hardware testing to verify color accuracy and coordinate mapping
- Pretty bad performance, but it works! Sorta. Basically takes the dominant color on the screen. And flickering.
Capture Architecture: HyperTizen uses a systematic ICaptureMethod interface with automatic fallback. The CaptureMethodSelector tests available methods on startup (T8SDK → T7SDK → PixelSampling) and selects the first working method.
This fork includes a real-time browser-based log viewer that's essential for debugging on your TV.
- Start HyperTizen on your TV
- Open your browser on any device on the same network
- Enter your IP:
<YOUR_TV_IP>,45678 - The log viewer will automatically connect and display real-time logs
- Real-time streaming: See logs as they happen
- Auto-reconnect: Automatically reconnects if connection is lost
- Exponential backoff: Smart retry logic prevents connection spam
- Color-coded output: Easy to read and filter
- Persistent across sessions: Reconnects when TV restarts HyperTizen
You can find your TV's IP address in:
- Settings → General → Network → Network Status → IP Settings
Or use your router's admin panel to find connected devices.
http://192.168.1.100:45678
The log viewer (logs.html). This is particularly useful for debugging capture issues, monitoring performance, and understanding what's happening on the TV.
In addition to logs, HyperTizen provides a full control panel accessible from any browser on your network.
- Start HyperTizen on your TV
- Open on your browser on any device on the same network
- Open the control panel:
- Download
controls.htmlfrom this repository and open it locally, then enter your TV's IP
- Download
The control panel (controls.html) provides the same functionality as the HyperTizenUI but through a standard browser:
Service Control:
▶️ Start/Stop capture- ⏸️ Pause/Resume capture
- 🔄 Restart HyperTizen service
- 🌈 Rainbow border indicator when capturing
SSDP Device Management:
- 🔍 Scan for Hyperion/HyperHDR devices on your network
- ✓ Select and apply devices
- View device details (name, URL)
Live Monitoring:
- 📊 Real-time service status (state, FPS, frames captured, errors)
- 📋 Live log streaming (same as logs.html)
- ⏱️ Uptime and connection status
- 🔌 Dual WebSocket status indicators (control + logs)
WebSocket Connections:
- Port 45677: Control WebSocket (send commands)
- Port 45678: Logs WebSocket (receive logs)
- Auto-reconnect with exponential backoff
- Persistent settings (saves TV IP in browser)
Open controls.html locally and enter:
TV IP: 192.168.1.100
Control Port: 45677
Logs Port: 45678
The control panel is perfect for:
- Managing HyperTizen from your phone/tablet/computer
- Testing capture without accessing the TV UI
- Monitoring service status during troubleshooting
- Selecting Hyperion/HyperHDR servers without using the TV remote
- WebSocket Log Streaming: Real-time debugging via browser (port 45678)
- Browser-Based Control Panel: Full service control and monitoring (control port 45677, logs port 45678)
- Architecture Framework: Structured
ICaptureMethodinterface with automatic fallback selection - System Info Detection: Detects Tizen version and TV capabilities
- Capture Method Selector: Tests and selects best available capture method automatically
- Log Level Filtering: Client-side filtering in browser (Debug/Info/Warning/Error/Performance)
- ✅ Pixel Sampling Capture: Full implementation using
libvideoenhance.so- 16-point edge sampling for ambient lighting
- 10-bit to 8-bit RGB conversion
- RGB to NV12 color space conversion
- FlatBuffers integration for HyperHDR/Hyperion
- Status: Code complete, terrible
- T8SDK Capture Method: Scaffolding exists, core implementation not yet added
- T7SDK Capture Method: Scaffolding exists, core implementation not yet added
Pixel Sampling Method:
⚠️ Color accuracy: Basically takes the dominant color on the screen- Flickering: Random white flicker now and then
To test the pixel sampling capture method on your Tizen 8.0+ TV:
- Build and install the updated HyperTizen package on your TV
- Start the service and monitor via WebSocket logs
- Watch for log messages showing:
PixelSampling: Library found, available- Color values being sampled (10-bit RGB)
- Connect to HyperHDR/Hyperion and verify ambient lighting displays correctly
- Test color accuracy: Display pure colors (red, green, blue) and verify they appear correctly
- Test edge mapping: Move content along edges and verify LEDs respond in correct direction
- Standard APIs: May have different availability on Tizen 8.0+ compared to earlier versions
- VideoEnhance Library:
libvideoenhance.soprovides pixel sampling API that works on Tizen 6, 7, and 8+ - Alternative Methods: VTable-based frame capture (T8SDK) and legacy APIs (T7SDK) require further research
- Framework Differences: Tizen 8.0+ has architectural changes that affect some capture capabilities
Note: The Pixel Sampling capture method is now implemented. Build and install to test on your Tizen 8.0+ TV.
To install HyperTizen on your Samsung TV running Tizen, you'll need Tizen Studio. You can download it from the official website.
-
Download the latest release from the releases page (or build from this fork).
-
Change the Host PC IP address to your PC's IP address by following this guide
-
Install the package:
tizen install -n path/to/io.gh.reisxd.HyperTizen.tpkNote that tizen is in C:\tizen-studio\tools\ide\bin on Windows and in ~/tizen-studio/tools/ide/bin on Linux.
If you get install failed[118, -12], reason: Check certificate error error, you'll have to resign the package (see below).
-
Install TizenBrew to your TV. Follow this guide.
-
Install the HyperTizen UI via TizenBrew's GitHub module manager:
Using the Module Manager:
- Press the [GREEN] button on your remote to open TizenBrew module manager
- Navigate to "Add GitHub Module"
- Enter the module path:
Install from this fork (Tizen 8+ with pixel sampling):
iceteaSA/HyperTizen/HyperTizenUIInstall from original repo (Tizen 7 only):
reisxd/HyperTizen/HyperTizenUIFormat:
<username>/<repository>/<folder-path>- Installs from the default branch (usually
main) username/repository- GitHub repository owner and namefolder-path- Path to the app folder within the repository
Note: To test development branches, you'll need to manually update files on your TV or wait for the branch to be merged to main.
-
Change the Host PC IP address to your PC's IP address by following this guide
-
After following the guide for the Tizen Studio installation, you have to create a certificate profile. You can follow this guide.
-
Sign the package:
tizen package -t tpk -s YourProfileName -o path/to/output/dir -- path/to/io.gh.reisxd.HyperTizen.tpk
# Example:
# tizen package -t tpk -s HyperTizen -o release -- io.gh.reisxd.HyperTizen.tpk- You should now be able to install the package.
See the original HyperTizen documentation for general build instructions.
For this fork, additional development tools may be required for testing and debugging the Tizen 8+ capture methods.
This fork is based on HyperTizen by reisxd.
Original HyperTizen provides Hyperion/HyperHDR capture support for Tizen TVs running Tizen 7.0 and earlier firmware versions.
Tizen 8.0+ capture research and implementation by the community. Special thanks to:
- Original HyperTizen contributors for the foundational codebase
- TizenBrew project for enabling homebrew development on Samsung TVs
- Everyone testing and contributing to Tizen 8+ capture research
- HyperTizen - Original project (Tizen 7 support)
- TizenBrew - Homebrew for Samsung Tizen TVs
- Hyperion - Ambient lighting software
- HyperHDR - HDR-capable fork of Hyperion
Contributions are welcome! If you have ideas for implementing capture methods or improving the architecture, please:
- Review the existing capture method scaffolding in
HyperTizen/Capture/ - Test your changes on actual Tizen hardware
- Submit pull requests with detailed explanations
- Use the WebSocket log viewer to document behavior and test results
Same as original HyperTizen project.
This is experimental software for research and educational purposes. Use at your own risk. This fork is not affiliated with Samsung or the official Tizen project.
This fork provides scaffolding and structure for exploring capture methods on Tizen 8.0+ TVs. Capture functionality is not yet implemented. Compatibility with specific TV models and firmware versions depends on future implementation and testing.