Skip to content
This repository was archived by the owner on Jan 26, 2023. It is now read-only.
/ rdk-aamp Public archive

Commit 387b844

Browse files
Viswanathan J Bpmaria904
Viswanathan J B
authored and
pmaria904
committed
RDK-36367 : [AAMP] CurlStore to reuse curl connections within/across Player Sessions
Reason for change: Implementation of CurlStore to save/reuse curl context for AAMP Player instances. Added aamp config to enable/disable this option. Made changes to resolve stability issue. Test Procedure: Will be updated in the ticket Risks: Low Change-Id: I25650c6dafe027bfb6f09fe419c7559935c39a9a Signed-off-by: Viswanathan J B <[email protected]> RDK-36367 : [AAMP] CurlStore to reuse curl connections within/across Player Sessions Reason for change: To solve compilation warning. Test Procedure: Will be updated in the ticket Risks: Low Change-Id: Icb84641c116955badfb7f0ef72cfcaffdec6072c Signed-off-by:  Viswanathan J B <[email protected]>
1 parent e57730f commit 387b844

11 files changed

+1544
-342
lines changed

AampConfig.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -272,6 +272,8 @@ static AampConfigLookupEntry ConfigLookUpTable[] =
272272
{"gstSubtecEnabled",eAAMPConfig_GstSubtecEnabled,-1,-1},
273273
{"changeTrackWithoutRetune", eAAMPConfig_ChangeTrackWithoutRetune, -1,-1},
274274
{"contentProtectionDataUpdateTimeout",eAAMPConfig_ContentProtectionDataUpdateTimeout,{.iMinValue = 0},{.iMaxValue=-1}}
275+
,{"curlStore", eAAMPConfig_EnableCurlStore, -1, -1}
276+
,{"maxCurlStore", eAAMPConfig_MaxCurlSockStore,{.iMinValue=1},{.iMaxValue=10}}
275277
};
276278
/////////////////// Public Functions /////////////////////////////////////
277279
/**
@@ -459,6 +461,8 @@ void AampConfig::Initialize()
459461
bAampCfgValue[eAAMPConfig_PersistHighNetworkBandwidth].value = false;
460462
bAampCfgValue[eAAMPConfig_PersistLowNetworkBandwidth].value = true;
461463
bAampCfgValue[eAAMPConfig_ChangeTrackWithoutRetune].value = false;
464+
bAampCfgValue[eAAMPConfig_EnableCurlStore].value = true;
465+
462466
///////////////// Following for Integer Data type configs ////////////////////////////
463467
iAampCfgValue[eAAMPConfig_HarvestCountLimit-eAAMPConfig_IntStartValue].value = 0;
464468
iAampCfgValue[eAAMPConfig_ABRCacheLife-eAAMPConfig_IntStartValue].value = DEFAULT_ABR_CACHE_LIFE;
@@ -510,6 +514,7 @@ void AampConfig::Initialize()
510514
iAampCfgValue[eAAMPConfig_MaxInitFragCachePerTrack-eAAMPConfig_IntStartValue].value = MAX_INIT_FRAGMENT_CACHE_PER_TRACK;
511515
iAampCfgValue[eAAMPConfig_FogMaxConcurrentDownloads-eAAMPConfig_IntStartValue].value = FOG_MAX_CONCURRENT_DOWNLOADS;
512516
iAampCfgValue[eAAMPConfig_ContentProtectionDataUpdateTimeout-eAAMPConfig_IntStartValue].value = DEFAULT_CONTENT_PROTECTION_DATA_UPDATE_TIMEOUT;
517+
iAampCfgValue[eAAMPConfig_MaxCurlSockStore-eAAMPConfig_IntStartValue].value = MAX_CURL_SOCK_STORE;
513518

514519
///////////////// Following for long data types /////////////////////////////
515520
lAampCfgValue[eAAMPConfig_DiscontinuityTimeout-eAAMPConfig_LongStartValue].value = DEFAULT_DISCONTINUITY_TIMEOUT;

AampConfig.h

+2
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ typedef enum
197197
eAAMPConfig_PersistHighNetworkBandwidth, /** Flag to enable Persist High Network Bandwidth across Tunes */
198198
eAAMPConfig_PersistLowNetworkBandwidth, /** Flag to enable Persist Low Network Bandwidth across Tunes */
199199
eAAMPConfig_ChangeTrackWithoutRetune, /**< Flag to enable audio track change without disturbing video pipeline */
200+
eAAMPConfig_EnableCurlStore, /**< Enable/Disable CurlStore to save/reuse curl fds */
200201
eAAMPConfig_BoolMaxValue,
201202
/////////////////////////////////
202203
eAAMPConfig_IntStartValue,
@@ -249,6 +250,7 @@ typedef enum
249250
eAAMPConfig_MaxInitFragCachePerTrack, /**< Max no of Init fragment cache per track */
250251
eAAMPConfig_FogMaxConcurrentDownloads, /**< Concurrent download posted to fog from player*/
251252
eAAMPConfig_ContentProtectionDataUpdateTimeout, /**< Default Timeout For ContentProtectionData Update */
253+
eAAMPConfig_MaxCurlSockStore, /**< Max no of curl socket to be stored */
252254
eAAMPConfig_IntMaxValue,
253255
///////////////////////////////////
254256
eAAMPConfig_LongStartValue,

0 commit comments

Comments
 (0)