Oğuzhan Ekşi
@oguzhaneksi
Repositories
Recent Updates
Track Selection UI Added to Video Player
Stream Probe now includes a track selection UI so you can switch between audio languages, video quality levels, and subtitle tracks from inside the player. A new TrackSelectionSheet component and TrackOption data model handle the display and state. No extra setup required if your stream already exposes multiple tracks.
Audio and Subtitle Track Inspection in Debug Overlay
Stream Probe now captures audio and subtitle track data through the PlayerInterceptor and surfaces it in the debug overlay. Two new models, AudioTrackInfo and SubtitleTrackInfo, handle the data layer. No setup changes needed if you already use the overlay.
Audio and Subtitle Track Monitoring in the Debug Overlay
Stream Probe's debug overlay now tracks audio and subtitle switches in addition to video quality (ABR) changes. A new TrackSwitchEvent model unifies all three into a single timeline. No integration changes are required to see the new data.
Error Timeline: Visualize Playback Errors Directly in the Debug Overlay
Stream Probe now automatically tracks video playback errors in the background using PlayerInterceptor and SessionStore. A new ErrorTimeline overlay component visualizes every captured error, grouped by ErrorCategory, directly over your player. No manual instrumentation needed.
CDN Provider Detection + STALE/BYPASS Cache Status in Debug Overlay
Stream Probe can now automatically identify which CDN is serving your video stream by reading HTTP response headers, and displays the provider name in the debug overlay. Two new cache states, STALE (orange) and BYPASS (purple), are also tracked to give deeper visibility into caching behavior during playback debugging.
CDN Provider Detection and Expanded Cache Status in Debug Overlay
Stream Probe's debug overlay now automatically identifies which CDN provider is serving your video segments by parsing response headers. Two new cache statuses, STALE and BYPASS, make it easier to diagnose caching behavior without touching a log file.
DASH Streaming Support
Stream Probe adds DASH streaming support with a new DashManifestInfo model and MPD manifest parsing. Both HLS and DASH streams are now handled through the same PlayerInterceptor and SessionStore pipeline. No changes needed for existing HLS integrations.
ABR Timeline: Visualize Adaptive Bitrate Switches in the Debug Overlay
Stream Probe now captures adaptive bitrate (ABR) switch events during video playback and displays them as a visual timeline in the debug overlay. You can see exactly when each resolution switch happened and why, using the new AbrSwitchEvent model and AbrTimelineAdapter view.
Debug Overlay Filter Chips, Orientation Support, and API Refactor
Stream Probe's debug overlay now has filter chips for toggling between Variants and Segments, replacing the old scattered toggles. The overlay is fully orientation-aware, and the API has been refactored to separate player attachment from overlay display for better lifecycle control.
Segment Download Metrics & CDN Header Capture in Debug Overlay
StreamProbe now captures per-segment download metrics and CDN response header data during HLS/DASH playback. Both are surfaced live in the OverlayPanelView debug UI, giving developers direct visibility into video delivery performance without external tooling.
Debug Overlay with HLS Variant Tracking and Manifest Display
StreamProbe now has a debug overlay that shows active HLS stream variants, parsed manifest data, and analytics events live on the player screen. PlayerInterceptor was enhanced to handle analytics tracking and active track management, and a bug in VariantListAdapter's DiffUtil comparison was fixed.
Debug Overlay for HLS Manifest and Variant Tracking
StreamProbe now has a built-in debug overlay that shows HLS manifest details and the active video variant in real-time. It's powered by a new OverlayManager, updated PlayerInterceptor, and dedicated data models for stream tracking. Unit tests are included for the new logic.