Fixing Period Switch Ref Update Issue in SSAI Multi-Period Manifest Parsing which leads to crash #1141
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This merge request addresses a critical issue in the manifest parsing functionality for the multi-period SSAI manifest, specifically related to period transitions. The problem arises from the failure to update references correctly when encountering a period switch during parsing.
Previously, the parser would generate objects for each period with specific references. However, upon transitioning to a new period, these references were not appropriately updated since it creates a new tracks object with a new reference . Consequently, subsequent attempts to utilize the getStreamIndexToTrackGroupIndex function to retrieve track group information would employ outdated references. As a result, the parser failed to locate the necessary data, leading to application crashes.
To rectify this issue, this merge request introduces a fix that ensures the accurate updating of references during period switches. The fix involves identifying the group index using the track ID, thereby ensuring the retrieval of correct track group information across period transitions.
This enhancement aims to enhance the stability and reliability of the manifest parsing process, preventing crashes and ensuring seamless functionality, particularly during period switches.