VPLAY-12461: better documentation for LLDASH configuration needed#1137
VPLAY-12461: better documentation for LLDASH configuration needed#1137Reshma-JO07 wants to merge 1 commit intodev_sprint_25_2from
Conversation
There was a problem hiding this comment.
Pull request overview
This PR improves the documentation for Low Latency DASH (LLDASH) configuration parameters in both the code-level Doxygen comments (AampConfig.h) and the public API documentation (AAMP-UVE-API.md). The goal is to provide clearer, more actionable descriptions of what each latency-related and ABR buffer config parameter does, including the specific playback rate effects.
Changes:
- Updated Doxygen comments for
eAAMPConfig_MinABRNWBufferRampDownandeAAMPConfig_LowLatencyMinBufferinAampConfig.hwith more descriptive explanations. - Rewrote descriptions for
lowLatencyMinValue,lowLatencyTargetValue,lowLatencyMaxValue,maxABRBufferRampup, andminABRBufferRampdownin the API documentation to clarify their behavioral effects. - Removed
lowLatencyMinBufferandlowLatencyTargetBufferentries from the API documentation table.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| AampConfig.h | Updated Doxygen comments for two config enum values with more descriptive documentation. |
| AAMP-UVE-API.md | Rewrote descriptions for several LLDASH and ABR config parameters; removed two still-valid config entries (lowLatencyMinBuffer, lowLatencyTargetBuffer). |
eac6067 to
31805fa
Compare
31805fa to
49d8186
Compare
49d8186 to
5a32ad1
Compare
|
Changes look good |
6b514db to
662997d
Compare
662997d to
cb427bc
Compare
cb427bc to
97945cf
Compare
97945cf to
59caa3a
Compare
Reason for change: Add better documentation for LLD configs Test Procedure: Not Applicable. Risks: Low Signed-off-by: Reshma-JO07 <sreshmaraphaelk@gmail.com>
59caa3a to
7e39151
Compare
| | contentProtectionDataUpdateTimeout | Number | 5000 | Timeout for Content Protection Data Update on Dynamic Key Rotation (milliseconds). Player waits for [setContentProtectionDataConfig](#setcontentprotectiondataconfig_json-string) API update within the timeout interval. On timeout, uses last configured values. Also refer API [setContentProtectionDataUpdateTimeout](#setcontentprotectiondataupdatetimeout_timeout). | | ||
| | disableLowLatencyABR | Boolean | true | Enable Low Latency ABR handling. | | ||
| | disablePlaylistIndexEvent | Boolean | true | Enable/disable generation of playlist indexed event by AAMP on tune/trickplay/seek. | | ||
| | downloadBufferChunks | Number | 20 | Low Latency fragment chunk cache length. | | ||
| | enableLowLatencyCorrection | Boolean | true | Enable latency correction. If disabled, latency may gradually drift from the live edge, especially under poor network conditions. | | ||
| | enableLowLatencyDash | Boolean | true | Enable Low Latency DASH playback mode. Allows media chunks to be injected earlier (even before full fragment download completes), allowing player to start and stay closer to live edge. | | ||
| | enableSubscribedTags | Boolean | true | Enable/disable subscribed tags. | | ||
| | enableVideoEndEvent | Boolean | true | Enable/disable Video End event generation. | | ||
| | enableVideoRectangle | Boolean | true | Enable/disable setting of rectangle property for sink element. | |
There was a problem hiding this comment.
The main initConfig() properties table no longer lists several LL-DASH/LLD-related configuration keys (e.g., enableLowLatencyDash, disableLowLatencyABR, enableLowLatencyCorrection, latencyMonitorDelayMs, latencyMonitorIntervalMs, etc.), but these keys are still registered in AampConfig.cpp and can be passed via initConfig(). Please re-add them to this table or add a clear pointer here to the dedicated LLD section so users can discover all supported config keys.
| ### Configuration | ||
|
|
||
| All LLD configuration properties are grouped below by function. | ||
|
|
||
| #### Core Enable / Disable | ||
|
|
||
| | Property | Type | Default | Description | | ||
| | -------- | ---- | ------- | ----------- | | ||
| | enableLowLatencyDash | Boolean | true | Enable Low Latency DASH playback mode. Allows media chunks to be injected earlier (even before full fragment download completes), allowing player to start and stay closer to live edge. | |
There was a problem hiding this comment.
This section says “All LLD configuration properties are grouped below by function.”, but the list is incomplete: several LLD-related initConfig properties are supported (registered in AampConfig.cpp) but not documented here (e.g., disableLowLatencyABR, enableLowLatencyCorrection, downloadBufferChunks, latencyMonitorDelayMs, latencyMonitorIntervalMs, and the latency playback-rate properties). Please document the full set (or explicitly state what is intentionally unsupported/ignored).
| | -------- | ---- | ------- | ----------- | | ||
| | lowLatencyMinValue | Number | 3 | If latency drops below this (seconds), playback slows to 0.97x until latency recovers to lowLatencyTargetValue. | | ||
| | lowLatencyTargetValue | Number | 6 | The latency value (seconds) at which an active rate correction stops and playback returns to 1x. | | ||
| | lowLatencyMaxValue | Number | 9 | If latency exceeds this (seconds) and buffer is at or above lowLatencyTargetBuffer, playback speeds up to 1.03x until latency drops to lowLatencyTargetValue. | |
There was a problem hiding this comment.
lowLatencyMaxValue’s description references lowLatencyTargetBuffer, but lowLatencyTargetBuffer (and lowLatencyMinBuffer) are not documented anywhere in this LLD section even though they are valid initConfig properties (see AampConfig.cpp). Please either document these buffer-threshold properties here or remove/replace the reference so the table is self-contained.
| | lowLatencyMaxValue | Number | 9 | If latency exceeds this (seconds) and buffer is at or above lowLatencyTargetBuffer, playback speeds up to 1.03x until latency drops to lowLatencyTargetValue. | | |
| | lowLatencyMaxValue | Number | 9 | If latency exceeds this (seconds), playback speeds up to 1.03x until latency drops to lowLatencyTargetValue. | |
| player.initConfig({ | ||
| enableLowLatencyDash: true, | ||
| lowLatencyMinValue: 3, | ||
| lowLatencyTargetValue: 6, |
There was a problem hiding this comment.
The “Example Configuration” comment says “lower latency target (4 sec)”, but the example sets lowLatencyTargetValue: 6. Please update the comment or the values so the example is internally consistent (and matches the intended guidance).
| lowLatencyTargetValue: 6, | |
| lowLatencyTargetValue: 4, |
Reason for change: Add better documentation for LLD configs
Test Procedure: Not Applicable.
Risks: Low