RDK Documentation (Open Sourced RDK Components)
MockStreamAbstractionAAMP Class Reference
Inheritance diagram for MockStreamAbstractionAAMP:
Inheritance graph
Collaboration diagram for MockStreamAbstractionAAMP:
Collaboration graph

Public Member Functions

 MockStreamAbstractionAAMP (AampLogManager *logObj, PrivateInstanceAAMP *aamp)
 
 MOCK_METHOD (void, NotifyPlaybackPaused,(bool paused))
 
 MOCK_METHOD (void, DumpProfiles,())
 
 MOCK_METHOD (AAMPStatusType, Init,(TuneType tuneType))
 
 MOCK_METHOD (void, Start,())
 
 MOCK_METHOD (void, Stop,(bool clearChannelData))
 
 MOCK_METHOD (void, GetStreamFormat,(StreamOutputFormat &primaryOutputFormat, StreamOutputFormat &audioOutputFormat, StreamOutputFormat &auxAudioOutputFormat, StreamOutputFormat &subtitleOutputFormat))
 
 MOCK_METHOD (double, GetStreamPosition,())
 
 MOCK_METHOD (double, GetFirstPTS,())
 
 MOCK_METHOD (double, GetStartTimeOfFirstPTS,())
 
 MOCK_METHOD (MediaTrack *, GetMediaTrack,(TrackType type))
 
 MOCK_METHOD (double, GetBufferedDuration,())
 
 MOCK_METHOD (int, GetBWIndex,(long bandwidth))
 
 MOCK_METHOD (std::vector< long >, GetVideoBitrates,())
 
 MOCK_METHOD (std::vector< long >, GetAudioBitrates,())
 
 MOCK_METHOD (void, StartInjection,())
 
 MOCK_METHOD (void, StopInjection,())
 
 MOCK_METHOD (void, SeekPosUpdate,(double secondsRelativeToTuneTime))
 
 MOCK_METHOD (std::vector< StreamInfo * >, GetAvailableVideoTracks,())
 
 MOCK_METHOD (std::vector< StreamInfo * >, GetAvailableThumbnailTracks,())
 
 MOCK_METHOD (bool, SetThumbnailTrack,(int))
 
 MOCK_METHOD (std::vector< ThumbnailData >, GetThumbnailRangeData,(double, double, std::string *, int *, int *, int *, int *))
 
 MOCK_METHOD (StreamInfo *, GetStreamInfo,(int idx))
 
 MOCK_METHOD (bool, Is4KStream,(int &height, long &bandwidth))
 
- Public Member Functions inherited from StreamAbstractionAAMP
 StreamAbstractionAAMP (AampLogManager *logObj, PrivateInstanceAAMP *aamp)
 StreamAbstractionAAMP constructor.
 
virtual ~StreamAbstractionAAMP ()
 StreamAbstractionAAMP destructor.
 
 StreamAbstractionAAMP (const StreamAbstractionAAMP &)=delete
 StreamAbstractionAAMP Copy Constructor.
 
StreamAbstractionAAMPoperator= (const StreamAbstractionAAMP &)=delete
 StreamAbstractionAAMP assignment operator overloading.
 
virtual void DumpProfiles (void)=0
 Dump profiles for debugging. To be implemented by sub classes. More...
 
virtual AAMPStatusType Init (TuneType tuneType)=0
 Initialize a newly created object. To be implemented by sub classes. More...
 
virtual void Start ()=0
 Start streaming. More...
 
virtual void Stop (bool clearChannelData)=0
 Stops streaming. More...
 
virtual void GetStreamFormat (StreamOutputFormat &primaryOutputFormat, StreamOutputFormat &audioOutputFormat, StreamOutputFormat &auxAudioOutputFormat, StreamOutputFormat &subtitleOutputFormat)=0
 Get output format of stream. More...
 
virtual double GetStreamPosition ()=0
 Get current stream position. More...
 
virtual double GetFirstPTS ()=0
 Get PTS of first sample. More...
 
virtual double GetStartTimeOfFirstPTS ()=0
 Get Start time PTS of first sample. More...
 
virtual MediaTrackGetMediaTrack (TrackType type)=0
 Return MediaTrack of requested type. More...
 
void WaitForVideoTrackCatchup ()
 Waits audio track injection until caught up with video track. Used internally by injection logic. More...
 
void ReassessAndResumeAudioTrack (bool abort)
 Unblock track if caught up with video or downloads are stopped. More...
 
void SetTsbBandwidth (long tsbBandwidth)
 When TSB is involved, use this to set bandwidth to be reported. More...
 
long GetTsbBandwidth ()
 When TSB is involved, use this to get bandwidth to be reported. More...
 
void SetESChangeStatus (void)
 Set elementary stream type change status for reconfigure the pipeline. More...
 
void ResetESChangeStatus (void)
 Reset elementary stream type change status once the pipeline reconfigured. More...
 
bool GetESChangeStatus (void)
 Get elementary stream type change status for reconfigure the pipeline.. More...
 
bool RampDownProfile (long http_error)
 Rampdown profile. More...
 
void GetDesiredProfileOnBuffer (int currProfileIndex, int &newProfileIndex)
 Get Desired Profile based on Buffer availability. More...
 
void GetDesiredProfileOnSteadyState (int currProfileIndex, int &newProfileIndex, long nwBandwidth)
 Get Desired Profile on steady state. More...
 
void ConfigureTimeoutOnBuffer ()
 Configure download timeouts based on buffer. More...
 
virtual double GetBufferedDuration (void)=0
 Function to get the buffer duration of stream. More...
 
bool IsLowestProfile (int currentProfileIndex)
 Check whether the current profile is lowest. More...
 
long getOriginalCurlError (long http_error)
 Convert custom curl errors to original. More...
 
bool CheckForRampDownProfile (long http_error)
 Check for ramdown profile. More...
 
void CheckForProfileChange (void)
 Checks and update profile based on bandwidth. More...
 
int GetIframeTrack ()
 Get iframe track index. This shall be called only after UpdateIframeTracks() is done. More...
 
void UpdateIframeTracks ()
 Update iframe tracks. Subclasses shall invoke this after StreamInfo is populated . More...
 
double LastVideoFragParsedTimeMS (void)
 Get the last video fragment parsed time. More...
 
int GetDesiredProfile (bool getMidProfile)
 Get the desired profile to start fetching. More...
 
void UpdateRampdownProfileReason (void)
 Update rampdown profile on network failure. More...
 
void NotifyBitRateUpdate (int profileIndex, const StreamInfo &cacheFragStreamInfo, double position)
 Notify bitrate updates to application. Used internally by injection logic. More...
 
virtual bool IsInitialCachingSupported ()
 Check if Initial Fragment Caching is supported. More...
 
bool IsStreamerAtLivePoint ()
 Whether we are playing at live point or not. More...
 
virtual bool Is4KStream (int &height, long &bandwidth)=0
 check if current stream have 4K content More...
 
virtual bool GetPreferredLiveOffsetFromConfig ()
 Set the offset value Live object. More...
 
virtual void NotifyPlaybackPaused (bool paused)
 Function called when playback is paused to update related flags. More...
 
bool CheckIfPlayerRunningDry (void)
 Check if player caches are running dry. More...
 
void CheckForPlaybackStall (bool fragmentParsed)
 Check if playback has stalled and update related flags. More...
 
void NotifyFirstFragmentInjected (void)
 MediaTracks shall call this to notify first fragment is injected. More...
 
double GetElapsedTime ()
 Get elapsed time of play-back. More...
 
virtual double GetFirstPeriodStartTime ()
 
virtual double GetFirstPeriodDynamicStartTime ()
 
virtual uint32_t GetCurrPeriodTimeScale ()
 
bool CheckForRampDownLimitReached ()
 Check for ramp down limit reached by player. More...
 
int GetMaxBWProfile ()
 Get profile index of highest bandwidth. More...
 
virtual int GetBWIndex (long bandwidth)=0
 Get profile index of given bandwidth. More...
 
ABRManager & GetABRManager ()
 Get the ABRManager reference. More...
 
virtual int GetProfileCount ()
 Get number of profiles/ representations from subclass. More...
 
virtual int GetProfileIndexForBandwidth (long mTsbBandwidth)
 Get profile index for TsbBandwidth. More...
 
long GetCurProfIdxBW ()
 
virtual long GetMaxBitrate ()
 Gets Max bitrate supported. More...
 
long GetVideoBitrate (void)
 Get the bitrate of current video profile selected. More...
 
long GetAudioBitrate (void)
 Get the bitrate of current audio profile selected. More...
 
void SetVideoBitrate (long bitrate)
 Set a preferred bitrate for video. More...
 
virtual std::vector< long > GetVideoBitrates (void)=0
 Get available video bitrates. More...
 
virtual std::vector< long > GetAudioBitrates (void)=0
 Get available audio bitrates. More...
 
bool IsStreamerStalled (void)
 Check if playback stalled in fragment collector side. More...
 
virtual void StopInjection (void)=0
 Stop injection of fragments.
 
virtual void StartInjection (void)=0
 Start injection of fragments.
 
bool IsMuxedStream ()
 Check if current stream is muxed. More...
 
virtual void NotifyFirstVideoPTS (unsigned long long pts, unsigned long timeScale)
 Receives first video PTS for the current playback. More...
 
virtual void StartSubtitleParser ()
 Kicks off subtitle display - sent at start of video presentation. More...
 
virtual void PauseSubtitleParser (bool pause)
 Pause/unpause subtitles. More...
 
void WaitForAudioTrackCatchup (void)
 Waits subtitle track injection until caught up with muxed/audio track. Used internally by injection logic. More...
 
void AbortWaitForAudioTrackCatchup (bool force)
 Unblock subtitle track injector if downloads are stopped. More...
 
virtual void SetCDAIObject (CDAIObject *cdaiObj)
 Set Client Side DAI object instance. More...
 
virtual bool IsEOSReached ()
 Checks if streamer reached end of stream. More...
 
virtual std::vector< AudioTrackInfo > & GetAvailableAudioTracks (bool allTrack=false)
 Get available audio tracks. More...
 
virtual std::vector< TextTrackInfo > & GetAvailableTextTracks (bool allTrack=false)
 Get available text tracks. More...
 
virtual void SeekPosUpdate (double secondsRelativeToTuneTime)=0
 Update seek position when player is initialized. More...
 
double GetLastInjectedFragmentPosition ()
 Function to returns last injected fragment position. More...
 
bool ProcessDiscontinuity (TrackType type)
 Function to process discontinuity. More...
 
void AbortWaitForDiscontinuity ()
 Function to abort any wait for discontinuity by injector theads. More...
 
void CheckForMediaTrackInjectionStall (TrackType type)
 Function to check if any media tracks are stalled on discontinuity. More...
 
double GetBufferedVideoDurationSec ()
 Get buffered video duration in seconds. More...
 
void UpdateStreamInfoBitrateData (int profileIndex, StreamInfo &cacheFragStreamInfo)
 Function to update stream info of current fetched fragment. More...
 
virtual int GetAudioTrack ()
 Get current audio track. More...
 
virtual bool GetCurrentAudioTrack (AudioTrackInfo &audioTrack)
 Get current audio track information. More...
 
virtual bool GetCurrentTextTrack (TextTrackInfo &textTrack)
 Get current text track. More...
 
int GetTextTrack ()
 Get current text track. More...
 
void RefreshSubtitles ()
 Refresh subtitle track. More...
 
virtual void SetVideoRectangle (int x, int y, int w, int h)
 setVideoRectangle sets the position coordinates (x,y) & size (w,h) for OTA streams only More...
 
virtual std::vector< StreamInfo * > GetAvailableVideoTracks (void)=0
 
virtual std::vector< StreamInfo * > GetAvailableThumbnailTracks (void)=0
 Get available thumbnail bitrates. More...
 
virtual bool SetThumbnailTrack (int)=0
 Set thumbnail bitrate. More...
 
virtual std::vector< ThumbnailDataGetThumbnailRangeData (double, double, std::string *, int *, int *, int *, int *)=0
 Get thumbnail data for duration value. More...
 
virtual void SetAudioTrack (int index)
 SetAudioTrack set the audio track using index value. [currently for OTA]. More...
 
virtual void SetAudioTrackByLanguage (const char *lang)
 SetAudioTrackByLanguage set the audio language. [currently for OTA]. More...
 
virtual void SetPreferredAudioLanguages ()
 SetPreferredAudioLanguages set the preferred audio languages and rendition. [currently for OTA]. More...
 
void MuteSubtitles (bool mute)
 Send a MUTE/UNMUTE packet to the subtitle renderer. More...
 
void WaitForVideoTrackCatchupForAux ()
 
virtual void ApplyContentRestrictions (std::vector< std::string > restrictions)
 Set Content Restrictions. More...
 
virtual void DisableContentRestrictions (long grace, long time, bool eventChange)
 Disable Content Restrictions - unlock. More...
 
virtual void EnableContentRestrictions ()
 Enable Content Restrictions - lock. More...
 
bool GetAudioFwdToAuxStatus ()
 Get audio forward to aux pipeline status. More...
 
void SetAudioFwdToAuxStatus (bool status)
 Set audio forward to aux pipeline status. More...
 
virtual void SetAudioTrackInfoFromMuxedStream (std::vector< AudioTrackInfo > &vector)
 Set AudioTrack info from Muxed stream. More...
 
void SetCurrentAudioTrackIndex (std::string &index)
 Set current audio track index. More...
 
virtual void ChangeMuxedAudioTrackIndex (std::string &index)
 Change muxed audio track index. More...
 
virtual void InitSubtitleParser (char *data)
 Initilaize subtitle parser for sidecar support. More...
 
virtual void ResetSubtitle ()
 reset subtitle parser created for sidecar support More...
 
virtual void MuteSubtitleOnPause ()
 mute subtitles on pause More...
 
virtual void ResumeSubtitleOnPlay (bool mute, char *data)
 resume subtitles on play More...
 
virtual void MuteSidecarSubtitles (bool mute)
 mute/unmute sidecar subtitles More...
 
virtual void ResumeSubtitleAfterSeek (bool mute, char *data)
 resume subtitles after trickplay More...
 
virtual bool SetTextStyle (const std::string &options)
 Set the text style of the subtitle to the options passed. More...
 

Additional Inherited Members

- Data Fields inherited from StreamAbstractionAAMP
PrivateInstanceAAMPaamp
 
AampLogManagermLogObj
 
bool trickplayMode
 
int currentProfileIndex
 
int currentAudioProfileIndex
 
int currentTextTrackProfileIndex
 
int profileIdxForBandwidthNotification
 
bool hasDrm
 
bool mIsAtLivePoint
 
bool mIsPlaybackStalled
 
bool mNetworkDownDetected
 
bool mCheckForRampdown
 
TuneType mTuneType
 
int mRampDownCount
 
double mProgramStartTime
 
int mTsbMaxBitrateProfileIndex
 
- Protected Member Functions inherited from StreamAbstractionAAMP
virtual StreamInfoGetStreamInfo (int idx)=0
 Get stream information of a profile from subclass. More...
 
- Protected Attributes inherited from StreamAbstractionAAMP
std::vector< AudioTrackInfomAudioTracks
 
std::vector< AudioTrackInfomAudioTracksAll
 
std::vector< TextTrackInfomTextTracksAll
 
std::vector< TextTrackInfomTextTracks
 
MediaTrackDiscontinuityState mTrackState
 
std::string mAudioTrackIndex
 
std::string mTextTrackIndex
 
bool mFwdAudioToAux
 

yes

Definition at line 26 of file MockStreamAbstractionAAMP.h.


The documentation for this class was generated from the following file: