|
RDK Documentation (Open Sourced RDK Components)
|
Go to the documentation of this file.
25 #ifndef __AAMP_SECMANAGER_H__
26 #define __AAMP_SECMANAGER_H__
33 #define SECMANAGER_CALL_SIGN "org.rdk.SecManager.1"
34 #define WATERMARK_PLUGIN_CALLSIGN "org.rdk.Watermark.1"
76 const char* accessAttributes[][2],
const char* contentMetadata,
size_t contentMetadataLen,
77 const char* licenseRequest,
size_t licenseRequestLen,
const char* keySystemId,
78 const char* mediaUsage,
const char* accessToken,
size_t accessTokenLen,
80 char** licenseResponse,
size_t* licenseResponseLength,
81 int32_t* statusCode, int32_t* reasonCode, int32_t* businessStatus);
105 bool setVideoWindowSize(int64_t sessionId, int64_t video_width, int64_t video_height);
114 bool setPlaybackSpeedState(int64_t sessionId, int64_t playback_speed, int64_t playback_position,
bool delayNeeded =
false);
120 bool loadClutWatermark(int64_t sessionId, int64_t graphicId, int64_t watermarkClutBufferKey, int64_t watermarkImageBufferKey, int64_t clutPaletteSize,
const char* clutPaletteFormat, int64_t watermarkWidth, int64_t watermarkHeight,
float aspectRatio);
148 void RegisterEvent (
string eventName, std::function<
void(
const WPEFramework::Core::JSON::VariantContainer&)> functionHandler);
221 std::list<std::string> mRegisteredEvents;
222 bool mSchedulerStarted;
void ModifyWatermarkPalette(int graphicId, int clutKey, int imageKey)
ModifyWatermarkPalette.
shim for dispatching UVE HDMI input playback
void GetWaterMarkPalette(int sessionId, int graphicId)
GetWaterMarkPalette.
void RegisterAllEvents()
Registers all Events to input plugin.
std::mutex mSpeedStateMutex
void addWatermarkHandler(const JsonObject ¶meters)
Gets watermark image details and manages watermark rendering.
void ReleaseSession(int64_t sessionId)
To notify SecManager to release a session.
~AampSecManager()
AampScheduler Destructor.
void UpdateWatermark(int graphicId, int smKey, int smSize)
Update Wateramrk.
AampSecManager * operator=(const AampSecManager &)=delete
assignment operator disabled
bool setVideoWindowSize(int64_t sessionId, int64_t video_width, int64_t video_height)
To update session state to SecManager.
void watermarkSessionHandler(const JsonObject ¶meters)
Detects watermarking session conditions.
static AampSecManager * mInstance
void UpdateSessionState(int64_t sessionId, bool active)
To update session state to SecManager.
static void DestroyInstance()
To release AampSecManager singelton instance.
void DeleteWatermark(int graphicId)
Delete Watermark.
Class to get License from Sec Manager.
PrivateInstanceAAMP * mAamp
Scheduler class for asynchronous operations.
void CreateWatermark(int graphicId, int zIndex)
Create Watermark.
void updateWatermarkHandler(const JsonObject ¶meters)
Gets updated watermark image details and manages watermark rendering.
void showWatermarkHandler(const JsonObject ¶meters)
Handles watermark calls to be only once.
AampSecManager()
AampScheduler Constructor.
static AampSecManager * GetInstance()
To get AampSecManager instance.
void AlwaysShowWatermarkOnTop(bool show)
Show watermark image This method need to be used only when RDKShell is used for rendering....
bool loadClutWatermark(int64_t sessionId, int64_t graphicId, int64_t watermarkClutBufferKey, int64_t watermarkImageBufferKey, int64_t clutPaletteSize, const char *clutPaletteFormat, int64_t watermarkWidth, int64_t watermarkHeight, float aspectRatio)
To Load ClutWatermark.
Private functions and types used internally by AAMP.
Class representing the AAMP player's private instance, which is not exposed to outside world.
void removeWatermarkHandler(const JsonObject ¶meters)
Removes watermark image.
void UnRegisterAllEvents()
UnRegisters all Events from plugin.
bool setPlaybackSpeedState(int64_t sessionId, int64_t playback_speed, int64_t playback_position, bool delayNeeded=false)
To set Playback Speed State to SecManager.
void RegisterEvent(string eventName, std::function< void(const WPEFramework::Core::JSON::VariantContainer &)> functionHandler)
Registers Event to input plugin and to mRegisteredEvents list for later use.
ThunderAccessAAMP mSecManagerObj
Support Thunder Plugin Access from AAMP.
void ShowWatermark(bool show)
Show watermark image.
ThunderAccessAAMP mWatermarkPluginObj
bool AcquireLicense(PrivateInstanceAAMP *aamp, const char *licenseUrl, const char *moneyTraceMetdata[][2], const char *accessAttributes[][2], const char *contentMetadata, size_t contentMetadataLen, const char *licenseRequest, size_t licenseRequestLen, const char *keySystemId, const char *mediaUsage, const char *accessToken, size_t accessTokenLen, int64_t *sessionId, char **licenseResponse, size_t *licenseResponseLength, int32_t *statusCode, int32_t *reasonCode, int32_t *businessStatus)
To acquire license from SecManager.