Feature

Debug Overlay Filter Chips, Orientation Support, and API Refactor

TL;DR Snapshot

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.

Share this update

Stream Probe introduces an orientation-aware debug overlay with filter chips for switching between Variants and Segments views in this update.

TL;DR

The debug overlay now has a dedicated filter system to toggle between Variants and Segments, replacing the old scattered toggles. It also handles portrait and landscape layouts correctly, and the underlying API separates player attachment from overlay display for cleaner lifecycle management.

What's New

  • Filter chips added to the overlay for switching between Variants and Segments views. The old redundant manifest and segment toggles are consolidated here.
  • Orientation-aware layout: the overlay now renders correctly in both portrait and landscape modes.
  • SegmentTimelineAdapter and SegmentTimelineItemView: new components for displaying segment metrics in a timeline format.
  • API refactor: player attachment is now decoupled from overlay display, giving you finer control over lifecycle events.

How to Use

Attach the player independently from showing the overlay:

// Attach player separately
streamProbe.attach(player: avPlayer)

// Show overlay when needed
streamProbe.showOverlay()

Filter chips appear automatically in the overlay toolbar. Tap Variants or Segments to switch views.

Breaking Changes

The API for attaching a player and displaying the overlay has been separated. If you previously used a single call to do both, you will need to update your integration to call attach and show independently.

Migration Guide

  1. Replace any combined attach-and-show calls with the new separate attach(player:) and showOverlay() methods.
  2. Remove any manual toggles you added for switching between manifest and segment views. The filter chips handle this now.

FAQ

What happened to the old manifest and segment toggle buttons?

They have been consolidated into the new filter chip system in the overlay toolbar. Tap the Variants or Segments chip to switch views.

Does orientation support require any extra setup?

No. The overlay detects orientation automatically. No additional configuration is needed on your end.

Why was the player attachment API refactored?

Decoupling attachment from display gives you better control over the overlay lifecycle, especially in cases where you want to attach a player early but show the overlay conditionally (like only in debug builds).

Is the SegmentTimelineAdapter public API?

Yes. SegmentTimelineAdapter and SegmentTimelineItemView are exposed so you can reference segment metrics data if you need to build custom tooling on top of Stream Probe.