diff --git a/AampConfig.cpp b/AampConfig.cpp index bf6a3fb0..9d9571b4 100644 --- a/AampConfig.cpp +++ b/AampConfig.cpp @@ -325,7 +325,7 @@ static const ConfigLookupEntryBool mConfigLookupTableBool[AAMPCONFIG_BOOL_COUNT] {true,"enableLowLatencyOffsetMin",eAAMPConfig_EnableLowLatencyOffsetMin,false}, {false,"syncAudioFragments",eAAMPConfig_SyncAudioFragments,false}, {false,"enableEosSmallFragment", eAAMPConfig_EnableIgnoreEosSmallFragment, false}, - {false,"useSecManager",eAAMPConfig_UseSecManager, true}, + {true,"useSecManager",eAAMPConfig_UseSecManager, true}, {false,"enablePTO", eAAMPConfig_EnablePTO,false}, {true,"enableFogConfig", eAAMPConfig_EnableAampConfigToFog, false}, {false,"xreSupportedTune",eAAMPConfig_XRESupportedTune,false}, diff --git a/aampgstplayer.cpp b/aampgstplayer.cpp index dfcef07c..b628b277 100644 --- a/aampgstplayer.cpp +++ b/aampgstplayer.cpp @@ -529,6 +529,7 @@ static void HandleRedButtonCallback(const char *data, AAMPGstPlayer * _this) { if (_this) { + AAMPLOG_INFO("Haripriya ... in Gst RedButtinCb for seiTimeCode : %s",data); _this->aamp->seiTimecode.assign(data); } } diff --git a/middleware/InterfacePlayerRDK.cpp b/middleware/InterfacePlayerRDK.cpp index 9c1337e3..f57b5d2d 100644 --- a/middleware/InterfacePlayerRDK.cpp +++ b/middleware/InterfacePlayerRDK.cpp @@ -3773,6 +3773,7 @@ bool InterfacePlayerRDK::CreatePipeline(const char *pipelineName, int PipelinePr The time base specified is in nanoseconds */ } /* Use to enable the timing synchronization with gstreamer */ + MW_LOG_ERR("HariPriya InterfacePlayerRDK - m_gstConfigParam->seiTimeCode : %d",m_gstConfigParam->seiTimeCode); gstPrivateContext->enableSEITimeCode = m_gstConfigParam->seiTimeCode; ret = true; } @@ -4535,6 +4536,7 @@ static void GstPlayer_redButtonCallback(GstElement* object, guint hours, guint m HANDLER_CONTROL_HELPER_CALLBACK_VOID(); char buffer[16]; snprintf(buffer,16,"%d:%d:%d",hours,minutes,seconds); + MW_LOG_ERR("InterfacePlayerRDK HariPriya buffer .. :%s",buffer); if(pInterfacePlayerRDK->OnHandleRedButtonCallback) { pInterfacePlayerRDK->OnHandleRedButtonCallback(buffer); @@ -4655,10 +4657,14 @@ static GstBusSyncReply bus_sync_handler(GstBus * bus, GstMessage * msg, Interfac } } - if ((NULL != msg->src) && GstPlayer_isVideoSink(GST_OBJECT_NAME(msg->src), pInterfacePlayerRDK) && (!pInterfacePlayerRDK->gstPrivateContext->usingRialtoSink)) + if ((NULL != msg->src) && (GstPlayer_isVideoSink(GST_OBJECT_NAME(msg->src), pInterfacePlayerRDK)) || ((gst_StartsWith(GST_OBJECT_NAME(msg->src), "rialtomsevideosink") == true) || + (gst_StartsWith(GST_OBJECT_NAME(msg->src), "rialtomseaudiosink") == true))) + { + MW_LOG_ERR("InterfacePlayerRDK HariPriya removed useRialtoSink check for enableSEITimeCode"); if(pInterfacePlayerRDK->gstPrivateContext->enableSEITimeCode) { + MW_LOG_ERR("InterfacePlayerRDK HariPriya enable-timecode set"); g_object_set(msg->src, "enable-timecode", 1, NULL); pInterfacePlayerRDK->SignalConnect(msg->src, "timecode-callback", G_CALLBACK(GstPlayer_redButtonCallback), pInterfacePlayerRDK); diff --git a/middleware/externals/playersecmanager/PlayerSecManager.cpp b/middleware/externals/playersecmanager/PlayerSecManager.cpp index 872b536e..f854f8ae 100755 --- a/middleware/externals/playersecmanager/PlayerSecManager.cpp +++ b/middleware/externals/playersecmanager/PlayerSecManager.cpp @@ -27,6 +27,9 @@ #include #include "_base64.h" #include // For PRId64 +#include +#include +#include static PlayerSecManager *Instance = nullptr; /**< singleton instance*/ @@ -385,12 +388,15 @@ bool PlayerSecManager::AcquireLicenseOpenOrUpdate( const char* licenseUrl, const //Shared memory pointer, key declared here, //Access token, content metadata and licence request will be passed to //secmanager via shared memory - void * shmPt_accToken = nullptr; - key_t shmKey_accToken = 0; - void * shmPt_contMeta = nullptr; - key_t shmKey_contMeta = 0; - void * shmPt_licReq = nullptr; - key_t shmKey_licReq = 0; + std::string accessTokenData = accessToken + ? std::string(accessToken, accTokenLen) + : std::string(); + std::string contentMetdataData = contentMetadata + ? std::string(contentMetadata, contMetaLen) + : std::string(); + std::string licenseRequestData = licenseRequest + ? std::string(licenseRequest, licReqLen) + : std::string(); const char* apiName = "openPlaybackSession"; JsonObject param; JsonObject response; @@ -427,39 +433,39 @@ bool PlayerSecManager::AcquireLicenseOpenOrUpdate( const char* licenseUrl, const { std::lock_guard lock(mSecMutex); - if(accTokenLen > 0 && contMetaLen > 0 && licReqLen > 0) - { - shmPt_accToken = player_CreateSharedMem(accTokenLen, shmKey_accToken); - shmPt_contMeta = player_CreateSharedMem(contMetaLen, shmKey_contMeta); - shmPt_licReq = player_CreateSharedMem(licReqLen, shmKey_licReq); - } - - //Set shared memory with the buffer - //Set shared memory with the buffer - if(nullptr != shmPt_accToken && nullptr != accessToken && - nullptr != shmPt_contMeta && nullptr != contentMetadata && - nullptr != shmPt_licReq && nullptr != licenseRequest) - { - //copy buffer to shm - memcpy(shmPt_accToken, accessToken, accTokenLen); - memcpy(shmPt_contMeta, contentMetadata, contMetaLen); - memcpy(shmPt_licReq, licenseRequest, licReqLen); - - MW_LOG_INFO("Access token, Content metadata and license request are copied successfully, passing details with SecManager"); - - //Set json params to be used by sec manager - param["accessTokenBufferKey"] = shmKey_accToken; - param["accessTokenLength"] = accTokenLen; - - param["contentMetadataBufferKey"] = shmKey_contMeta; - param["contentMetadataLength"] = contMetaLen; - - param["licenseRequestBufferKey"] = shmKey_licReq; - param["licenseRequestLength"] = licReqLen; - - //invoke "openPlaybackSession" or "updatePlaybackSession" with retries for specific error cases - do - { + if(NULL != accessToken && + NULL != contentMetadata && + NULL != licenseRequest) + { + MW_LOG_INFO("Access token, Content metadata and license request are copied successfully, passing details with SecManager"); + + //Set json params to be used by sec manager + param["accessToken"] = accessTokenData; + param["contentMetadata"] = contentMetdataData; + param["licenseRequest"] = licenseRequestData; + std::string params; + param.ToString(params); + + MW_LOG_WARN("SecManager %s param: %s",apiName, params.c_str()); + //Retry delay + std::stringstream logMsg; + logMsg << "SecManager " << apiName << " param: " << params; + std::string fullLogMessage = logMsg.str(); + std::cout<<"SecManager::::"< 0) { + MW_LOG_WARN("[ThunderAccessAAMP] Environment variable THUNDER_ACCESS is set from ENV as :%s",serverDetails); + Core::SystemInfo::SetEnvironment(_T("THUNDER_ACCESS"), _T(serverDetails)); + } else { + MW_LOG_WARN("[ThunderAccessAAMP] Environment variable THUNDER_ACCESS not set. Using default value."); + Core::SystemInfo::SetEnvironment(_T("THUNDER_ACCESS"), (_T(SERVER_DETAILS)));//default value + } if(!gSecurityPlayerData.tokenQueried) { unsigned char buffer[MAX_LENGTH] = {0};