Skip to content

Commit 8f9f94f

Browse files
authored
Merge branch 'dev_sprint_25_2' into feature/VPLAY-12472_2
2 parents 8a46541 + 160cc4a commit 8f9f94f

File tree

137 files changed

+5534
-2194
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

137 files changed

+5534
-2194
lines changed

.github/instructions/cpp.instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ applyTo:
1212

1313
## C++ Guidelines
1414

15-
- Target modern C++ (C++11) for new code. Highlight where newer C++ features (C++14, C++17) could be used to improve code quality, but for the time being do not use them. If they would be of use, comment on them.
15+
- Target C++17 for new code. Use C++20+ features only when they are supported by the toolchain, clearly documented, and they provide a meaningful improvement in code quality.
1616
- Always follow the guidelines at [C++ Core Guidelines](https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines)
1717
- Highlight when existing code being studied does not follow the core guidelines and suggest improvements
1818
- Discourage the use of C-style code within C++ (e.g. avoid memcpy(), memcmp() and char* for strings). Emphasise memory safety

.github/workflows/pr-merge-jiracomment.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ jobs:
3535
JIRA_API_TOKEN: ${{ secrets.JIRA_API_TOKEN }}
3636
ISSUE_KEY: ${{ steps.extract.outputs.issue_key }}
3737
PR_URL: ${{ github.event.pull_request.html_url }}
38+
SOURCE_BRANCH: ${{ github.event.pull_request.head.ref }}
39+
SOURCE_BRANCH_URL: ${{ github.server_url }}/${{ github.repository }}/tree/${{ github.event.pull_request.head.ref }}
3840
TARGET_BRANCH: ${{ github.event.pull_request.base.ref }}
3941
MERGED_BY_LOGIN: ${{ github.event.pull_request.merged_by.login }}
4042
GITHUB_TOKEN: ${{ github.token }}
@@ -56,7 +58,7 @@ jobs:
5658
MERGED_BY_NAME="$MERGED_BY_LOGIN"
5759
fi
5860
59-
COMMENT_BODY="PR merged ${PR_URL} into ${TARGET_BRANCH} by ${MERGED_BY_NAME}"
61+
COMMENT_BODY="PR merged ${PR_URL} from [*${SOURCE_BRANCH}*|${SOURCE_BRANCH_URL}] into ${TARGET_BRANCH} by ${MERGED_BY_NAME}"
6062
PAYLOAD=$(jq -n --arg body "$COMMENT_BODY" '{body: $body}')
6163
6264
curl --fail --silent --show-error \

AAMP-UVE-API.md

Lines changed: 62 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ This document is targeted to application developers who are interested in evalua
8989
<body>
9090
<div id="videoContainer">
9191
<video style="height:100%; width:100%; position:absolute; bottom:0; left:0">
92-
<source src="dummy.mp4" type=video/ave> <!-- hole punching -->
92+
<source src="dummy.mp4" type="video/ave"> <!-- "video/ave" required as WPE browser hint to signal hole punching -->
9393
</video>
9494
</div>
9595
</body>
@@ -163,8 +163,8 @@ Configuration options are passed to AAMP using the UVE `initConfig()` method. Th
163163
| iframeDefaultBitrate | Number | 0 | Default bitrate for iframe track selection for non-4K assets (0 = auto). |
164164
| iframeDefaultBitrate4K | Number | 0 | Default bitrate for iframe track selection for 4K assets (0 = auto). |
165165
| initRampdownLimit | Number | 0 | Maximum number of rampdown/retries for initial playlist retrieval at tune/seek time. |
166-
| latencyMonitorDelay | Number | 9 | Delay in seconds before starting latency monitoring after tune completion. |
167-
| latencyMonitorInterval | Number | 1 | Time between latency checks in seconds. Changing the value will only affect monitoring and corrective actions (how frequently latency is sampled and rate corrections are attempted). |
166+
| latencyMonitorDelayMs | Number | 5000 | Delay in milliseconds before starting latency monitoring after tune completion. |
167+
| latencyMonitorIntervalMs | Number | 1000 | Time between latency checks in milliseconds. Changing the value will only affect monitoring and corrective actions (how frequently latency is sampled and rate corrections are attempted). |
168168
| licenseAnonymousRequest | Boolean | false | Enable/disable acquiring of license without token. |
169169
| licenseKeyAcquireWaitTime | Number | 5000 | License key acquire wait time (milliseconds). |
170170
| licenseRetryWaitTime | Number | 500 | License retry wait interval (milliseconds). |
@@ -258,6 +258,7 @@ Configuration options are passed to AAMP using the UVE `initConfig()` method. Th
258258
| preferredAudioType | String | - | Preferred accessibility type for descriptive audio in the available audio tracks list. Same can be done with setAudioTrack API also. |
259259
| langCodePreference | Number | 0 | Set the preferred format for language codes in other events/APIs. Available in version 2.6. Values: 0 - NO_LANGCODE_PREFERENCE, 1 - 3_CHAR_BIBLIOGRAPHIC_LANGCODE, 2 - 3_CHAR_TERMINOLOGY_LANGCODE, 3 - 2_CHAR_LANGCODE |
260260
| preferredSubtitleLanguage | String | en | ISO-639 language code used with VTT OOB captions. |
261+
| preferredTextLabel | String | - | Label of desired text track in the available text tracks list. |
261262
| nativeCCRendering | Boolean | false | Use native closed caption support in AAMP. Available in version 2.6. |
262263
| enableLiveLatencyCorrection | Boolean | false | Enable correction of playback delay during regular live streaming (non-LLD). Keeps the video close to real-time by adjusting playback speed if it drifts behind. |
263264
| liveOffsetDriftCorrectionInterval | Number | 1 | The allowed delta from live offset configured (seconds). |
@@ -1262,6 +1263,8 @@ playerInstance.setPreferredAudioLanguage( trackPreferenceObject );
12621263
| Name | Type | Description |
12631264
| ---- | ---- | ---- |
12641265
| name | String | Human readable language name e.g: sub_eng. |
1266+
| label | String | Represents the label of the text track. |
1267+
| instreamId | String | Identifier for in-band closed captions (for example, "CC1", "SERVICE1"). Typically present for CLOSED-CAPTIONS / in-band CEA-608/708 tracks when signaled via DASH MPD `<Accessibility ... value=...>`. |
12651268
| language | String | iso language code. e.g: eng |
12661269
| codec | String | codec associated with text track. e.g: stpp |
12671270
| rendition | String | Role for DASH. e.g: caption,subtitle,main. |
@@ -1390,21 +1393,23 @@ playerInstance.setPreferredAudioLanguage( trackPreferenceObject );
13901393
|Name|Type|Description|
13911394
|----|----|-----------|
13921395
| language | String | ISO-639 text language preference. 2-character and 3-character codes are supported. |
1393-
| languages | String | comma-delimited ISO-639 text language preference list from highest to lowest priority: ‘<HIGHEST>,<...>,<LOWEST>’ |
1396+
| languages | String or String[] | For JSON input, either a single ISO-639 text language code string or an array of ISO-639 language codes in priority order (for example, ["eng","spa"]). When setPreferredTextLanguage is called with a non-JSON string parameter, a comma-delimited list of ISO-639 codes from highest to lowest priority (‘<HIGHEST>,<...>,<LOWEST>’) is also accepted. |
13941397
| rendition | String | Optional preferred rendition for automatic text selection |
13951398
| instreamId | String | Optional preferred instreamId (i.e. CC1, CC2) for automatic text selection |
1396-
| label | String | Preferred Label for automatic text selection |
1397-
| accessibilityType | String | Optional preferred accessibility Node for descriptive audio.|
1398-
| accessibility | Object | Optional preferred accessibility object for audio |
1399-
| accessibility.scheme | String | Preferred Accessibility scheme Id |
1400-
| accessibility.int_value | Number | Preferred Accessibility scheme Id value |
1399+
| label | String | Optional preferred label for automatic text selection |
1400+
| accessibilityType | String | Optional preferred DASH role/type string for text track selection. This is used as the `preferred-text-type` value and is matched against `<Accessibility ... value=...>` entries with scheme `urn:mpeg:dash:role:2011`. |
1401+
| accessibility | Object | Optional preferred Accessibility node criteria for text (for example, to select descriptive / VI tracks). This corresponds to the full `<Accessibility ...>` element and is independent of `accessibilityType`. |
1402+
| accessibility.scheme | String | Preferred Accessibility scheme Id for the Accessibility node. |
1403+
| accessibility.string_value | String | Preferred Accessibility scheme Id value for the Accessibility node when expressed as a string. |
1404+
| accessibility.int_value | Number | Preferred Accessibility scheme Id value for the Accessibility node when expressed as a number. |
14011405

14021406
- ###### Example :
14031407
```js
14041408
var trackPreferenceObject =
14051409
{
14061410
"languages": ["en", "de", "mul"],
14071411
"rendition": "subtitle",
1412+
"label": "native",
14081413
"accessibility":
14091414
{
14101415
"scheme": "urn:tva:metadata:cs:AudioPurposeCS:2007",
@@ -1426,22 +1431,45 @@ playerInstance.setPreferredTextLanguage( trackPreferenceObject );
14261431
### getTextTrackInfo
14271432
- Supported UVE version 4.4 and above.
14281433
- Returns playing Text track information in JSON format.
1429-
- Currently support is limited to only out-of-band captions.
1434+
- Supports both out-of-band captions and in-band closed captions (when available).
1435+
- Note: The in-band CC identifier field for this API is named `instreamID`
1436+
(capital `ID`), whereas `getAvailableTextTracks` uses `instreamId`.
1437+
Use the exact casing expected by each API when consuming these fields.
1438+
1439+
- ###### Examples :
1440+
1441+
- Out-of-band text track (e.g., WebVTT or TTML sidecar):
14301442

1431-
- ###### Example :
14321443
```js
1433-
{
1434-
"name": "English"
1435-
"languages": "eng",
1436-
"codec": "stpp"
1437-
"type": "CLOSED-CAPTIONS"
1438-
"rendition": "alternate",
1439-
"accessibility":
1444+
[
14401445
{
1441-
"scheme": "urn:tva:metadata:cs:AudioPurposeCS:2007",
1442-
"int_value": 2
1446+
"name": "English",
1447+
"label": "native",
1448+
"language": "eng",
1449+
"codec": "stpp",
1450+
"type": "captions",
1451+
"rendition": "alternate",
1452+
"accessibility":
1453+
{
1454+
"scheme": "urn:tva:metadata:cs:AudioPurposeCS:2007",
1455+
"int_value": 2
1456+
}
14431457
}
1444-
}
1458+
]
1459+
```
1460+
1461+
- In-band closed captions (instream CC):
1462+
1463+
```js
1464+
[
1465+
{
1466+
"name": "CC1",
1467+
"label": "Service 1",
1468+
"language": "eng",
1469+
"type": "captions",
1470+
"instreamID": "1"
1471+
}
1472+
]
14451473
```
14461474
---
14471475

@@ -1452,13 +1480,13 @@ playerInstance.setPreferredTextLanguage( trackPreferenceObject );
14521480
- ###### Example :
14531481
```js
14541482
{
1455-
"preferred-text-languages" : ["eng", "ger", "mul"],
1456-
"preferred-text-labels": "subtitle",
1457-
"preferred-text-rendition": "",
1458-
"preferred-text-type": ""
1483+
"preferred-text-languages" : "eng,ger,mul",
1484+
"preferred-text-labels": "native",
1485+
"preferred-text-rendition": "alternate",
1486+
"preferred-text-type": "captions",
14591487
"preferred-text-accessibility":
14601488
{
1461-
"scheme": "urn:tva:metadata:cs:AudioPurposeCS:2007",
1489+
"schemeId": "urn:tva:metadata:cs:AudioPurposeCS:2007",
14621490
"int_value": 2
14631491
}
14641492
}
@@ -2436,7 +2464,7 @@ Example:
24362464
- sessionHandle:string
24372465
- system:string Identifies the content watermarking protection provider, i.e. "fmts_asid" (FriendMTS). Note: this is only valid when using SecManager.
24382466
- status:string Additional information regarding security system state. See below table:
2439-
2467+
24402468
| Code | Name | Definition
24412469
| --------- |------------- |--------------
24422470
| 1 | GRANTED | No security issues
@@ -2679,12 +2707,12 @@ Response:
26792707
```
26802708

26812709

2682-
## Inband (CEA608/708) Closed Caption Management (legacy XREReceiver API)
2710+
## Inband (CEA608/708) Closed Caption Management (legacy XREReceiver API)
26832711
* on scaled X1 devices this is mapped directly to receiver APIs interacting with RDK CC Manager
26842712
* here by default will inherit X1 caption style settings as set by user through guide settings
26852713
* apps can override caption styling, but typically wouldn't need to do so
26862714
* on non-XRE devices this is implemented as a wrapper for backwards compatibility, but with limitations - only default styles will ever be applied, and with no way for app to change, and won't reflect guide settings
2687-
2715+
26882716
To use legacy XREReceiver inband closed captions, first register an event listener to discover decoder handle:
26892717
```
26902718
player.addEventListener("decoderAvailable", decoderHandleAvailable);
@@ -2749,16 +2777,18 @@ player.setClosedCaptionStatus(false); // hide captions
27492777

27502778
Get/Set CC track:
27512779
```js
2752-
player.getTextTrack(); // returns JSON object listing track attributes
2753-
player.setTextTrack(trackIdentifier);
2780+
player.getTextTrack(); // returns the numeric index of the currently selected text track
2781+
player.setTextTrack(trackIndex); // set by numeric index (as returned by getTextTrack), or -1 to disable
27542782
```
27552783

27562784
Get/Set CC style options:
27572785
```js
2758-
player.getTextStyleOptions(); // returns JSON object reflecting current styling options
2786+
player.getTextStyleOptions(); // returns a JSON-formatted string reflecting current styling options
27592787
player.setTextStyleOptions(options); // set styling options (see setTextStyleOptions API for format)
27602788
```
27612789

2790+
On newer devices there is no need to call `setTextStyleOptions`, as the Text Track plugin will automatically map guide-configured caption styling.
2791+
27622792
---
27632793

27642794
<div style="page-break-after: always;"></div>

AampConfig.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -426,8 +426,8 @@ static const ConfigLookupEntryInt mConfigLookupTableInt[AAMPCONFIG_INT_COUNT+CON
426426
{ePAUSED_BEHAVIOR_AUTOPLAY_IMMEDIATE,"livePauseBehavior",eAAMPConfig_LivePauseBehavior,false,eCONFIG_RANGE_PAUSE_BEHAVIOR },
427427
{MAX_GST_VIDEO_BUFFER_BYTES,"gstVideoBufBytes", eAAMPConfig_GstVideoBufBytes,true},
428428
{MAX_GST_AUDIO_BUFFER_BYTES,"gstAudioBufBytes", eAAMPConfig_GstAudioBufBytes,true},
429-
{DEFAULT_LATENCY_MONITOR_DELAY,"latencyMonitorDelay",eAAMPConfig_LatencyMonitorDelay,false},
430-
{AAMP_LLD_LATENCY_MONITOR_INTERVAL,"latencyMonitorInterval",eAAMPConfig_LatencyMonitorInterval,false},
429+
{DEFAULT_LATENCY_MONITOR_DELAY_MS,"latencyMonitorDelayMs",eAAMPConfig_LatencyMonitorDelayMs,false},
430+
{DEFAULT_LATENCY_MONITOR_INTERVAL_MS,"latencyMonitorIntervalMs",eAAMPConfig_LatencyMonitorIntervalMs,false},
431431
{DEFAULT_CACHED_FRAGMENT_CHUNKS_PER_TRACK,"downloadBufferChunks",eAAMPConfig_MaxFragmentChunkCached,false},
432432
{DEFAULT_AAMP_ABR_CHUNK_THRESHOLD_SIZE,"abrChunkThresholdSize",eAAMPConfig_ABRChunkThresholdSize,false},
433433
{DEFAULT_MIN_LOW_LATENCY,"lowLatencyMinValue",eAAMPConfig_LLMinLatency,true},
@@ -515,7 +515,10 @@ static const ConfigLookupEntryFloat mConfigLookupTableFloat[AAMPCONFIG_FLOAT_COU
515515
{DEFAULT_UNDERFLOW_DETECT_THRESHOLD_SEC, "underflowDetectThresholdSec", eAAMPConfig_UnderflowDetectThresholdSec, true},
516516
{DEFAULT_UNDERFLOW_RESUME_THRESHOLD_SEC, "underflowResumeThresholdSec", eAAMPConfig_UnderflowResumeThresholdSec, true},
517517
{DEFAULT_UNDERFLOW_LOW_BUFFER_SEC, "underflowLowBufferSec", eAAMPConfig_UnderflowLowBufferSec, true},
518-
{DEFAULT_UNDERFLOW_HIGH_BUFFER_SEC, "underflowHighBufferSec", eAAMPConfig_UnderflowHighBufferSec, true}
518+
{DEFAULT_UNDERFLOW_HIGH_BUFFER_SEC, "underflowHighBufferSec", eAAMPConfig_UnderflowHighBufferSec, true},
519+
{DEFAULT_BUFFER_LEVEL_TO_ENABLE_LATENCY_SEC, "bufferLevelToEnableLatencySec", eAAMPConfig_BufferLevelToEnableCorrectionSec, false},
520+
{DEFAULT_REBUFFER_LATENCY_STEP_SEC, "rebufferLatencyStepSec", eAAMPConfig_RebufferLatencyStepSec, false},
521+
{DEFAULT_REBUFFER_LATENCY_MAX_INCREMENT_SEC, "rebufferLatencyMaxIncrementSec", eAAMPConfig_RebufferLatencyMaxIncrementSec, false}
519522
};
520523

521524
/**

AampConfig.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -278,8 +278,8 @@ typedef enum
278278
eAAMPConfig_LivePauseBehavior, /**< player paused state behavior */
279279
eAAMPConfig_GstVideoBufBytes, /**< Gstreamer Max Video buffering bytes*/
280280
eAAMPConfig_GstAudioBufBytes, /**< Gstreamer Max Audio buffering bytes*/
281-
eAAMPConfig_LatencyMonitorDelay, /**< Latency Monitor Delay */
282-
eAAMPConfig_LatencyMonitorInterval, /**< Latency Monitor Interval */
281+
eAAMPConfig_LatencyMonitorDelayMs, /**< Latency Monitor Delay */
282+
eAAMPConfig_LatencyMonitorIntervalMs, /**< Latency Monitor Interval */
283283
eAAMPConfig_MaxFragmentChunkCached, /**< fragment chunk cache length*/
284284
eAAMPConfig_ABRChunkThresholdSize, /**< AAMP ABR Chunk threshold size*/
285285
eAAMPConfig_LLMinLatency, /**< Low Latency Min Latency Offset */
@@ -359,6 +359,9 @@ typedef enum
359359
eAAMPConfig_UnderflowResumeThresholdSec, /**< Underflow resume threshold in seconds */
360360
eAAMPConfig_UnderflowLowBufferSec, /**< Low buffer threshold in seconds */
361361
eAAMPConfig_UnderflowHighBufferSec, /**< High buffer threshold in seconds */
362+
eAAMPConfig_BufferLevelToEnableCorrectionSec, /**< Buffer level to enable latency correction in seconds */
363+
eAAMPConfig_RebufferLatencyStepSec, /**< Step value for latency increase when rebuffering occurs */
364+
eAAMPConfig_RebufferLatencyMaxIncrementSec, /**< Max latency increment allowed due to rebuffering */
362365
eAAMPConfig_FloatMaxValue /**< Max value for float config always last element*/
363366
} AAMPConfigSettingFloat;
364367
#define AAMPCONFIG_FLOAT_COUNT (eAAMPConfig_FloatMaxValue)

AampDefine.h

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,10 @@
157157
#define DEFAULT_UNDERFLOW_LOW_BUFFER_SEC 5.0 /**< Low buffer threshold in seconds */
158158
#define DEFAULT_UNDERFLOW_HIGH_BUFFER_SEC 10.0 /**< High buffer threshold in seconds */
159159

160+
#define DEFAULT_BUFFER_LEVEL_TO_ENABLE_LATENCY_SEC 0.0 /*< Default is 0.0 means latency correction is enabled at all buffer values */
161+
#define DEFAULT_REBUFFER_LATENCY_STEP_SEC 1.0 /*< Step value for latency increase when rebuffering occurs in seconds */
162+
#define DEFAULT_REBUFFER_LATENCY_MAX_INCREMENT_SEC 6 /*< LiveOffset(15s) - MaxLatency(9s) */
163+
160164
// We can enable the following once we have a thread monitoring video PTS progress and triggering subtec clock fast update when we detect video freeze. Disabled it for now for brute force fast refresh..
161165
//#define SUBTEC_VARIABLE_CLOCK_UPDATE_RATE /* enable this to make the clock update rate dynamic*/
162166
#ifdef SUBTEC_VARIABLE_CLOCK_UPDATE_RATE
@@ -187,15 +191,14 @@
187191
#define MAX_GST_VIDEO_BUFFER_BYTES (GST_VIDEOBUFFER_SIZE_BYTES)
188192
#define MAX_GST_AUDIO_BUFFER_BYTES (GST_AUDIOBUFFER_SIZE_BYTES)
189193

190-
#define DEFAULT_LATENCY_MONITOR_DELAY 9 /**< Latency Monitor Delay */
191-
#define DEFAULT_LATENCY_MONITOR_INTERVAL 6 /**< Latency monitor Interval */
192-
#define DEFAULT_MIN_LOW_LATENCY 3 /**< min Default Latency */
193-
#define DEFAULT_MAX_LOW_LATENCY 9 /**< max Default Latency */
194-
#define DEFAULT_TARGET_LOW_LATENCY 6 /**< Target Default Latency */
194+
#define DEFAULT_LATENCY_MONITOR_DELAY_MS 5000 /**< Latency Monitor Delay */
195+
#define DEFAULT_LATENCY_MONITOR_INTERVAL_MS 1000 /**< Latency monitor interval */
196+
#define DEFAULT_MIN_LOW_LATENCY 3 /**< min Default Latency */
197+
#define DEFAULT_MAX_LOW_LATENCY 9 /**< max Default Latency */
198+
#define DEFAULT_TARGET_LOW_LATENCY 6 /**< Target Default Latency */
195199
#define DEFAULT_MIN_RATE_CORRECTION_SPEED 0.97f /**< min Rate correction speed */
196200
#define DEFAULT_MAX_RATE_CORRECTION_SPEED 1.03f /**< max Rate correction speed */
197-
#define DEFAULT_NORMAL_RATE_CORRECTION_SPEED 1.00f /**< Live Catchup Normal play rate */
198-
#define AAMP_LLD_LATENCY_MONITOR_INTERVAL (1) /**< Latency monitor interval for LLD*/
201+
#define DEFAULT_NORMAL_RATE_CORRECTION_SPEED 1.00f /**< Live Catchup Normal play rate */
199202
#define AAMP_LLD_MINIMUM_CACHE_SEGMENTS (2) /**< Number of segments to be cached minimum before rate change*/
200203
#define AAMP_LLD_LOW_BUFF_CHECK_COUNT (4) /**< Count to confirm low buffer state for LLD stream playback; 4 sec to ABR; So Allow ABR first*/
201204
#define DEFAULT_MIN_BUFFER_LOW_LATENCY (2.0f) /**< Default minimum buffer for Low latency stream*/
@@ -288,19 +291,6 @@ typedef enum
288291
AAMP_MAX_SETTING
289292
}ConfigPriority;
290293

291-
/**
292-
* @brief Latency status
293-
*/
294-
enum LatencyStatus
295-
{
296-
LATENCY_STATUS_UNKNOWN=-1, /**< The latency is Unknown */
297-
LATENCY_STATUS_MIN, /**< The latency is within range but less than minimum latency */
298-
LATENCY_STATUS_THRESHOLD_MIN, /**< The latency is within range but less than target latency but greater than minimum latency */
299-
LATENCY_STATUS_THRESHOLD, /**< The latency is equal to given latency from mpd */
300-
LATENCY_STATUS_THRESHOLD_MAX, /**< The latency is more that target latency but less than maximum latency */
301-
LATENCY_STATUS_MAX /**< The latency is more than maximum latency */
302-
};
303-
304294
/**
305295
* @brief AAMP Function return values
306296
*/

0 commit comments

Comments
 (0)