Skip to content

VPAAMP-615 Writing to Local TSB stops in pause play pause sequence#1640

Open
hthakkar-synamedia wants to merge 2 commits into
dev_sprint_25_2from
feature/VPAAMP-615
Open

VPAAMP-615 Writing to Local TSB stops in pause play pause sequence#1640
hthakkar-synamedia wants to merge 2 commits into
dev_sprint_25_2from
feature/VPAAMP-615

Conversation

@hthakkar-synamedia

Copy link
Copy Markdown
Contributor

When the local AAMP TSB is active, the live fetcher writes segments via EnqueueWrite and does not consume slots from the GStreamer ring buffer. However, the IsFragmentCacheFull() guard in DownloadFragment fired unconditionally: with the pipeline paused, the inject thread was blocked, no ring-buffer slot was ever freed, and DownloadsAreEnabled() remained true — causing the while-loop to spin indefinitely.

Fix: Skip the ring-buffer wait when IsLocalAAMPTsbInjection() is true:

if (IsFragmentCacheFull() && !aamp->IsLocalAAMPTsbInjection())

Also adds L1 microtest to verify the fix

When the local AAMP TSB is active, the live fetcher writes segments via
EnqueueWrite and does not consume slots from the GStreamer ring buffer.
However, the IsFragmentCacheFull() guard in DownloadFragment fired
unconditionally: with the pipeline paused, the inject thread was blocked,
no ring-buffer slot was ever freed, and DownloadsAreEnabled() remained
true — causing the while-loop to spin indefinitely.

Fix: Skip the ring-buffer wait when IsLocalAAMPTsbInjection() is true:

    if (IsFragmentCacheFull() && !aamp->IsLocalAAMPTsbInjection())

Also adds L1 microtest to verify the fix
@hthakkar-synamedia hthakkar-synamedia requested a review from a team as a code owner June 22, 2026 22:50
Comment thread MediaStreamContext.cpp Outdated
Comment thread test/utests/tests/MediaStreamContextTests/FragmentDownloadTests.cpp Outdated
Comment thread test/utests/tests/MediaStreamContextTests/FragmentDownloadTests.cpp Outdated
Comment thread test/utests/tests/MediaStreamContextTests/FragmentDownloadTests.cpp Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants