Documentation Index
Fetch the complete documentation index at: https://mintlify.com/lastninja294/adgent-sdk/llms.txt
Use this file to discover all available pages before exploring further.
Overview
WhaleOS is the Smart TV platform powered by Naver’s Whale browser. The Adgent SDK provides native support for WhaleOS with optimized detection and key mapping for Whale-based TV devices.Supported Versions
- WhaleOS 1.0+: Fully supported
- Whale Browser: Compatible with Whale browser on TV devices
Platform Detection
The SDK automatically detects WhaleOS platforms using user agent patterns:- User agent matches
/WhaleTV/i - User agent matches
/Whale/i
Platform-Specific Features
Modern Browser Engine
WhaleOS is built on a modern Chromium-based browser engine, providing:- Modern JavaScript (ES2020+) support
- Full Web APIs compatibility
- Better codec support than legacy platforms
- Standard web video playback
Video Capabilities
WhaleOS platform capabilities:- Resolution: Up to 4K (varies by hardware)
- Codecs: H.264, HEVC (on compatible hardware), VP9
- HDR: Limited support (depends on TV model)
- Autoplay: Muted autoplay required
Remote Control Key Codes
WhaleOS uses standard web key codes with simplified media controls:| Key Action | Key Code | Description |
|---|---|---|
| Enter | 13 | OK/Select button |
| Back | 27 | Escape key |
| Left | 37 | Navigate left |
| Up | 38 | Navigate up |
| Right | 39 | Navigate right |
| Down | 40 | Navigate down |
| Play | 415 | Play media |
| Pause | 19 | Pause media |
| Stop | 413 | Stop playback |
Key Code Normalization
Device Information
Access WhaleOS-specific device information:Code Example
Complete example for WhaleOS platform:Known Limitations
Media Key Support
- Limited Keys: Only basic media keys (Play, Pause, Stop) are exposed
- No Color Buttons: Red, Green, Yellow, Blue buttons not available
- No Volume Controls: Volume/mute not exposed to web apps
- No Channel Controls: Channel up/down not available
- No PlayPause Toggle: Separate Play (415) and Pause (19) keys only
Platform Maturity
- Newer Platform: Less widespread than Tizen or WebOS
- Limited Testing: Fewer devices in the wild for compatibility testing
- Documentation: Less vendor documentation compared to Samsung/LG platforms
Video Features
- Variable HDR Support: HDR availability depends on hardware
- Codec Detection Required: HEVC/VP9 support varies by device
- No Hardware Decode Info: Platform does not expose detailed codec capabilities
Network & Performance
- Bitrate Limits: Conservative bitrate recommended (2500-3000 kbps)
- 4K Playback: May be unstable depending on hardware
- Memory Constraints: Similar to other TV platforms, aggressive cleanup required
External Links
- Opening external links via
openExternalLink()is not supported - The method will log a warning and return without action
Performance Optimization
Recommended Configuration
Video Encoding Guidelines
For optimal WhaleOS playback:- Codec: H.264 Main Profile Level 4.1 (primary), HEVC (optional fallback)
- Resolution: 1920x1080 recommended (4K optional for newer models)
- Bitrate: 2500-3000 kbps target
- Frame Rate: 30fps recommended
- Audio: AAC-LC, 128-192 kbps
- Container: MP4 (preferred)
Codec Detection
Debugging
Best Practices
- Moderate Bitrates: Use 2500-3000 kbps for stability
- H.264 Fallback: Always provide H.264 option for maximum compatibility
- Test Codec Support: Use
isCodecSupported()to detect HEVC/VP9 availability - Handle Escape Key: Use keyCode 27 for back button
- Muted Autoplay: Always enable muted autoplay for compliance
- Clean Up Resources: Call
sdk.destroy()when done - Modern Web APIs: Take advantage of Chromium-based features
- Graceful Degradation: Implement error handling and fallbacks
Whale Browser Specifics
WhaleOS is built on Naver Whale browser, which provides:- Chromium Base: Modern web standards support
- ES2020+ Support: Use modern JavaScript features
- Web Components: Full custom element support
- Fetch API: Native fetch with keepalive support
- Promises: Full async/await support
