> For the complete documentation index, see [llms.txt](https://docs.podigee.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.podigee.com/documentation/grow-and-monetize/monetization/understand-podigee-hls-audio-and-video-delivery.md).

# Understand Podigee HLS audio and video delivery

Understand how Podigee prepares, selects, inserts, delivers, and measures audio and video ads in an HLS presentation.

The Podigee Audio Video Ad Server can deliver podcast audio and video through HTTP Live Streaming (HLS). HLS divides one presentation into playlists and short media parts. A compatible player reads the playlists, selects a suitable audio and video quality, and requests the media parts as playback continues.

Podigee prepares content and Creative media before a listener starts playback. At request time, Podigee selects the eligible ads and creates the exact playlist instructions for that playback session. It does not encode or join large media files while the listener waits.

## Follow one HLS playback request

The following sequence starts when a viewer opens an eligible HLS episode:

1. The player requests the stable HLS presentation address.
2. Podigee verifies the active show, episode, source media, delivery setup, and player capability.
3. The ad decision checks the Campaigns, Creatives, schedule, targeting, pacing, frequency, rights, publisher rules, and media compatibility.
4. Podigee freezes one complete Playback Plan for every break in the presentation.
5. The player receives a master playlist and the permitted media playlists.
6. The player selects an audio and video variant that its device and network can use.
7. Podigee supplies the source and Creative media parts in the order set by the Playback Plan.
8. Podigee records delivery observations. It creates qualified commercial evidence only when the active measurement rule is complete.

The result can contain a paid ad, a house promotion, or no ad. A clean no-fill result keeps the verified episode media and omits the Creative media.

## Understand the HLS playlist structure

An HLS presentation uses more than one file:

* The **master playlist** lists the available audio, video, caption, and seeking tracks.
* A **media playlist** lists the ordered media parts for one track or quality.
* An **initialization part** describes how the player must decode a fragmented MP4 track.
* **Media parts** contain the audio or video data.
* A **caption playlist** can supply Web Video Text Tracks (WebVTT) captions.
* An **I-frame playlist** can help a compatible player seek through video.

Podigee verifies every referenced playlist and media object before it can become active. Each object has an exact content digest, byte length, role, media type, and storage identity. A playlist cannot refer to an unknown object or escape its approved media package.

## Prepare compatible source and Creative media

The source episode and each Creative need prepared renditions before delivery. Audio and video renditions must use compatible decoder settings when Podigee inserts them into the same track. If the settings do not match, Podigee blocks that prepared delivery result. It does not send a player a playlist that changes to an incompatible codec during playback.

Use **Monetization > Inventory > Break Canvas** to select the exact episode, audio version, and video version. Select **Video** as the preview track to inspect the current audio and HLS video together.

![The current One Podigee Break Canvas shows an exact episode version, its audio and video revisions, and working audio and HLS video previews.](https://2032417310-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbqUKO6lljHGzkEAzliPI%2Fuploads%2Fgit-blob-9f5fb46bed6363f496d0880439b19a7d2c470e6f%2Fdoc-monetization-057-video-break-canvas.png?alt=media)

*Confirm the exact audio and video source before you place or review a break.*

The current Break Canvas keeps the audio and video revisions visible beside the preview tracks. It also gives you one place to inspect the media and set the boundary before the delivery package is prepared.

![The current One Podigee Break Canvas shows audio and video source revisions, the selected preview track, and the video preview beside the break workspace.](https://2032417310-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbqUKO6lljHGzkEAzliPI%2Fuploads%2Fgit-blob-6b6a2560888d83b4e5a7305e225ab21c3552400f%2Fdoc-monetization-057-video-break-canvas-current.png?alt=media)

*Use the exact source revisions shown in the canvas when you check an HLS result.*

The Break Canvas ties each break to the approved episode version. If the source media changes, Podigee requires a current media binding before it can publish another delivery setup.

## Keep one decision for the complete presentation

The player can request the master playlist, several media playlists, and many media parts. These requests must not produce different ad decisions for the same playback session.

Podigee therefore creates one signed Playback Plan. The plan identifies the exact workspace, release, source media version, player capability, privacy mode, and ordered result for every break. Later playlist and media requests use that plan. They do not select another Campaign or Creative.

This rule keeps audio, video, captions, chapters, analytics, and revenue evidence connected to the same commercial result.

## Insert ads in an HLS presentation

Podigee supports delivery profiles that use server-side playlist composition or HLS interstitial instructions. The active profile depends on the player and destination capability.

For **Video ad stitching**, Podigee creates a private media playlist for the playback session. The playlist orders the immutable source and Creative media parts. Shared source and Creative bytes stay reusable in the delivery cache.

For an **HLS interstitial** profile, the playlist marks the commercial break and points the player to an approved interstitial asset or asset list. Apple Podcasts has additional requirements. The Apple Podcasts video delivery and certification article explains that delivery profile.

Open **Monetization > Evidence & Money > Live ad delivery > Recent ad decisions**. Filter the delivery method to **Video ad stitching** to review the HLS decisions that selected an ad.

![The current One Podigee Recent ad decisions page shows selected ads for Video ad stitching, with the Campaign, Creative, podcast, episode, reason, and delivery method.](https://2032417310-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbqUKO6lljHGzkEAzliPI%2Fuploads%2Fgit-blob-cea052c594c382ab94110b59563d6406d953fce0%2Fdoc-monetization-057-hls-decisions.png?alt=media)

*Filter by Video ad stitching to review the results for Podigee HLS playback.*

## Keep captions, seeking, and chapters safe

Inserted media changes the presentation timeline. Podigee derives the exact timeline from the source duration, source chapters, transcript or caption source, break positions, and Creative durations.

Podigee does not claim that every source caption or seeking track is safe after an ad is inserted. The delivery behavior depends on the profile:

* An interstitial profile can keep source-time captions and seeking information aligned because the source timeline remains separate from the interstitial.
* A stitched presentation needs exact composed captions and exact composed I-frame information.
* If a filled stitched result cannot prove these composed tracks, Podigee blocks that result instead of publishing incorrect captions or seeking data.
* A presentation with no captions can continue without a caption track.

This behavior protects accessibility and playback accuracy. It also prevents a player from showing episode captions over an unrelated ad.

## Use caching without mixing playback sessions

HLS creates many requests during one playback. Podigee keeps reusable and private data separate:

* Source and Creative media parts use immutable addresses and shared caching.
* Verified immutable playlists and timeline resources can use long cache periods.
* A personalized presentation playlist stays private and must be revalidated.
* Listener context and request identity do not enter a shared media cache key.

This structure lets many viewers reuse the same verified media bytes. It also prevents one viewer's private playlist from becoming another viewer's result.

## Connect the decision to analytics and money

An issued playlist is not automatically a paid video impression. The player can stop before the ad starts, retry a request, or close during playback.

For Podigee-owned HLS playback, signed player events can report an observed video start or an observed completed view. The event must match the exact Playback Plan, selected Creative rendition, measurement contract, player profile, and qualification window. Podigee accepts one qualified commercial event for one evidence identity. A retry returns the existing result instead of creating another charge.

Open an HLS decision to see the Campaign, Creative, podcast, episode, break, privacy mode, qualified value, and shortened references.

![The current One Podigee Ad decision details page shows a selected Video ad stitching result, its Campaign and Creative, the episode and break, the qualified value, and shortened references.](https://2032417310-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbqUKO6lljHGzkEAzliPI%2Fuploads%2Fgit-blob-6fa2d5aa01508c39a5227f63e668a910503f16f4%2Fdoc-monetization-057-hls-decision-detail.png?alt=media)

*Use the decision detail to connect one HLS result to its content and revenue records.*

Audience analytics and commercial qualification have different purposes. Audience analytics records playback observations. The commercial rule decides whether those observations qualify as billable delivery. Podigee keeps both connected to the same exact playback authority.

## Understand clean fallback

Podigee keeps verified content available when an ad cannot be inserted safely. A no-fill result can return clean source media. An incompatible Creative, missing media object, invalid playlist, caption conflict, or unverified delivery setup cannot produce a mixed or partial presentation.

The published fallback behavior belongs to the active delivery setup. An operator can investigate the recorded decision and reason without serving another ad or changing billing.

## What to check as an operator

Use these checks when you investigate Podigee HLS delivery:

1. Confirm that the show and HLS delivery profile are active.
2. Open **Inventory > Break Canvas** and confirm the exact episode, audio, and video revisions.
3. Preview the video track and confirm that the break uses the intended source version.
4. Confirm that the Campaign has an eligible video Creative with a ready rendition.
5. Filter **Recent ad decisions** by **Video ad stitching** or the required HLS profile.
6. Open the exact decision and read the result and reason.
7. Confirm the Campaign, Creative, episode, break, privacy mode, and qualified value.
8. Check captions and seeking behavior when the presentation includes those tracks.

## Expected result

The player receives one consistent HLS presentation. Podigee uses prepared and compatible audio and video media, keeps every playlist request on one Playback Plan, preserves safe timeline behavior, reuses immutable media through caching, records playback observations, and connects qualified delivery to the correct Campaign and revenue evidence.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.podigee.com/documentation/grow-and-monetize/monetization/understand-podigee-hls-audio-and-video-delivery.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
