Squeezeback

Bakery’s Squeezeback feature enables dynamic ad insertion with picture-in-picture (dual-box) or L-bar layouts during live streaming events. It allows brands to configure squeeze parameters and manage ad break orchestration for synchronized multi-viewer experiences.

Note: L-bar layout is not yet implemented. Currently only dual-box layout is available.

Overview

Squeezeback transforms traditional ad breaks by maintaining content visibility while displaying ads simultaneously. This creates an enhanced viewer experience where content continues playing in a reduced view while ads are shown in a separate box.

Squeezeback Workflow

┌──────────────────┐
│  Brand Config    │
│  (Defaults)      │
└────────┬─────────┘
         │
         │ Inherits
         ▼
┌──────────────────┐
│  Event Config    │
│  (Overrides)     │
└────────┬─────────┘
         │
         │ Associates
         ▼
┌──────────────────┐
│ Configured Ads   │
│ (Pre-loaded)     │
└────────┬─────────┘
         │
         │ Used During
         ▼
┌──────────────────┐
│  Ad Break        │◄────────┐
│  Orchestration   │         │
└────────┬─────────┘         │
         │                   │
         │ Start → Extend    │
         │                   │
         ▼                   │
┌──────────────────┐         │
│ Squeezeback      │         │
│ Stream           │         │
└────────┬─────────┘         │
         │                   │
         │ Terminate         │
         └───────────────────┘
         (Back to Normal)

Supported Layouts

  • Dual-Box: Content and ad displayed side-by-side in separate boxes
  • L-Bar: Content squeezed with ad positioned in an L-shaped configuration (Not yet implemented)

Key Features

  • Brand-level configuration with event-specific overrides
  • Configurable squeeze ratios for content and ad boxes
  • Customizable positioning (horizontal and vertical)
  • Animation control for smooth squeeze-in/out transitions
  • Frame styling with configurable thickness and colors
  • Concurrent stream limiting to manage server load
  • Ad break orchestration (start, extend, terminate)
  • Pre-configured ads with automatic transcoding support
  • DRM support via JWT tokens

API Resources

  • Brand Config - Brand-level squeezeback configuration and defaults
  • Event Config - Event-specific squeezeback configuration with inheritance
  • Configured Ads - Pre-configured ads for squeeze events
  • Ad Breaks - Ad break orchestration endpoints (start, extend, terminate)

DAI Proxy Flow

  • DAI Proxy Architecture - FsMulti integration with Google DAI for squeezeback on IMA SDK-managed streams. Covers CDN manifest proxying, preroll targeting capture, and how DAI proxy streams reuse the existing squeezeback engine.

Streaming Endpoint

Once configured, squeezeback events are accessed via a streaming endpoint that returns the manipulated HLS manifest with squeezeback segments integrated. See the Swagger API Documentation for AdPilot and FsMulti endpoint details.


Table of contents


This site uses Just the Docs, a documentation theme for Jekyll.