RDK Documentation (Open Sourced RDK Components)
|
GStreamer Abstraction class for the implementation of AAMPGstPlayer and gstaamp plugin. More...
#include <main_aamp.h>
Public Member Functions | |
virtual void | Configure (StreamOutputFormat format, StreamOutputFormat audioFormat, StreamOutputFormat auxFormat, StreamOutputFormat subFormat, bool bESChangeStatus, bool forwardAudioToAux, bool setReadyAfterPipelineCreation=false) |
Configure output formats. More... | |
virtual bool | SendCopy (MediaType mediaType, const void *ptr, size_t len, double fpts, double fdts, double fDuration)=0 |
API to send audio/video buffer into the sink. More... | |
virtual bool | SendTransfer (MediaType mediaType, void *ptr, size_t len, double fpts, double fdts, double fDuration, bool initFragment=false)=0 |
API to send audio/video buffer into the sink. More... | |
virtual void | EndOfStreamReached (MediaType mediaType) |
Notifies EOS to sink. More... | |
virtual void | Stream (void) |
Start the stream. More... | |
virtual void | Stop (bool keepLastFrame) |
virtual void | DumpStatus (void) |
Dump the sink status for debugging purpose. More... | |
virtual void | Flush (double position=0, int rate=1, bool shouldTearDown=true) |
Flush the pipeline. More... | |
virtual bool | SetPlayBackRate (double rate) |
Set player rate to audio/video sink. More... | |
virtual bool | AdjustPlayBackRate (double position, double rate) |
Adjust the pipeline. More... | |
virtual bool | Pause (bool pause, bool forceStopGstreamerPreBuffering) |
Enabled or disable playback pause. More... | |
virtual long | GetDurationMilliseconds (void) |
Get playback duration in milliseconds. More... | |
virtual long | GetPositionMilliseconds (void) |
Get playback position in milliseconds. More... | |
virtual long long | GetVideoPTS (void) |
Get Video 90 KHz Video PTS. More... | |
virtual unsigned long | getCCDecoderHandle (void) |
Get closed caption handle. More... | |
virtual void | SetVideoRectangle (int x, int y, int w, int h) |
Set video display rectangle co-ordinates. More... | |
virtual void | SetVideoZoom (VideoZoomMode zoom) |
Set video zoom state. More... | |
virtual void | SetVideoMute (bool muted) |
Set video mute state. More... | |
virtual void | SetSubtitleMute (bool muted) |
Set subtitle mute state. More... | |
virtual void | SetSubtitlePtsOffset (std::uint64_t pts_offset) |
Set subtitle pts offset in sink. More... | |
virtual void | SetAudioVolume (int volume) |
Set volume level. More... | |
virtual | ~StreamSink () |
StreamSink Dtor. | |
virtual bool | Discontinuity (MediaType mediaType)=0 |
Process PTS discontinuity for a stream type. More... | |
virtual bool | CheckForPTSChangeWithTimeout (long timeout) |
Check if PTS is changing. More... | |
virtual bool | IsCacheEmpty (MediaType mediaType) |
Check whether cach is empty. More... | |
virtual void | ResetEOSSignalledFlag () |
Reset EOS SignalledFlag. | |
virtual void | NotifyFragmentCachingComplete () |
API to notify that fragment caching done. More... | |
virtual void | NotifyFragmentCachingOngoing () |
API to notify that fragment caching is ongoing. More... | |
virtual void | GetVideoSize (int &w, int &h) |
Get the video dimensions. More... | |
virtual void | QueueProtectionEvent (const char *protSystemId, const void *ptr, size_t len, MediaType type) |
Queue-up the protection event. More... | |
virtual void | ClearProtectionEvent () |
Clear the protection event. More... | |
virtual void | SignalTrickModeDiscontinuity () |
Signal discontinuity on trickmode if restamping is done by stream sink. More... | |
virtual void | SeekStreamSink (double position, double rate) |
Seek stream sink to desired position and playback rate with a flushing seek. More... | |
virtual std::string | GetVideoRectangle () |
Get the video window co-ordinates. More... | |
virtual void | StopBuffering (bool forceStop) |
Stop buffering in sink. More... | |
GStreamer Abstraction class for the implementation of AAMPGstPlayer and gstaamp plugin.
Definition at line 385 of file main_aamp.h.
|
inlinevirtual |
Configure output formats.
[in] | format | - Video output format. |
[in] | audioFormat | - Audio output format. |
[in] | auxFormat | - Aux audio output format. |
[in] | bESChangeStatus | - Flag to keep force configure the pipeline value |
[in] | forwardAudioToAux | - Flag denotes if audio buffers have to be forwarded to aux pipeline |
[in] | setReadyAfterPipelineCreation | - Flag denotes if pipeline has to be reset to ready or not |
Reimplemented in AAMPGstPlayer.
Definition at line 400 of file main_aamp.h.
|
pure virtual |
API to send audio/video buffer into the sink.
[in] | mediaType | - Type of the media. |
[in] | ptr | - Pointer to the buffer; caller responsible of freeing memory |
[in] | len | - Buffer length. |
[in] | fpts | - Presentation Time Stamp. |
[in] | fdts | - Decode Time Stamp |
[in] | fDuration | - Buffer duration. |
Implemented in AAMPGstPlayer.
|
pure virtual |
API to send audio/video buffer into the sink.
[in] | mediaType | - Type of the media. |
[in] | buffer | - Pointer to the GrowableBuffer; ownership is taken by the sink |
[in] | fpts | - Presentation Time Stamp. |
[in] | fdts | - Decode Time Stamp |
[in] | fDuration | - Buffer duration. |
[in] | initFragment | - flag for buffer type (init, data) |
Implemented in AAMPGstPlayer.
|
inlinevirtual |
Notifies EOS to sink.
[in] | mediaType | - Media Type |
Reimplemented in AAMPGstPlayer.
Definition at line 434 of file main_aamp.h.
|
inlinevirtual |
Start the stream.
Reimplemented in AAMPGstPlayer.
Definition at line 441 of file main_aamp.h.
|
inlinevirtual |
[in] | keepLastFrame | - Keep the last frame on screen (true/false) |
Reimplemented in AAMPGstPlayer.
Definition at line 449 of file main_aamp.h.
|
inlinevirtual |
Dump the sink status for debugging purpose.
Reimplemented in AAMPGstPlayer.
Definition at line 456 of file main_aamp.h.
|
inlinevirtual |
Flush the pipeline.
[in] | position | - playback position |
[in] | rate | - Speed |
[in] | shouldTearDown | - if pipeline is not in a valid state, tear down pipeline |
Reimplemented in AAMPGstPlayer.
Definition at line 466 of file main_aamp.h.
|
inlinevirtual |
Set player rate to audio/video sink.
[in] | rate | - Speed |
Reimplemented in AAMPGstPlayer.
Definition at line 474 of file main_aamp.h.
|
inlinevirtual |
Adjust the pipeline.
[in] | position | - playback position |
[in] | rate | - Speed |
Reimplemented in AAMPGstPlayer.
Definition at line 482 of file main_aamp.h.
|
inlinevirtual |
Enabled or disable playback pause.
[in] | pause | Enable/Disable |
[in] | forceStopGstreamerPreBuffering | - true for disabling bufferinprogress |
Reimplemented in AAMPGstPlayer.
Definition at line 491 of file main_aamp.h.
|
inlinevirtual |
Get playback duration in milliseconds.
Reimplemented in AAMPGstPlayer.
Definition at line 498 of file main_aamp.h.
|
inlinevirtual |
Get playback position in milliseconds.
Reimplemented in AAMPGstPlayer.
Definition at line 505 of file main_aamp.h.
|
inlinevirtual |
Get Video 90 KHz Video PTS.
Reimplemented in AAMPGstPlayer.
Definition at line 512 of file main_aamp.h.
|
inlinevirtual |
Get closed caption handle.
Reimplemented in AAMPGstPlayer.
Definition at line 519 of file main_aamp.h.
|
inlinevirtual |
Set video display rectangle co-ordinates.
[in] | x | - x position |
[in] | y | - y position |
[in] | w | - Width |
[in] | h | - Height |
Reimplemented in AAMPGstPlayer.
Definition at line 530 of file main_aamp.h.
|
inlinevirtual |
Set video zoom state.
[in] | zoom | - Zoom mode |
Reimplemented in AAMPGstPlayer.
Definition at line 538 of file main_aamp.h.
|
inlinevirtual |
Set video mute state.
[in] | muted | - true: video muted, false: video unmuted |
Reimplemented in AAMPGstPlayer.
Definition at line 546 of file main_aamp.h.
|
inlinevirtual |
Set subtitle mute state.
[in] | muted | - true: subtitle muted, false: subtitle unmuted |
Reimplemented in AAMPGstPlayer.
Definition at line 554 of file main_aamp.h.
|
inlinevirtual |
Set subtitle pts offset in sink.
[in] | pts_offset | - pts offset for subs display |
Reimplemented in AAMPGstPlayer.
Definition at line 562 of file main_aamp.h.
|
inlinevirtual |
Set volume level.
[in] | volume | - Minimum 0, maximum 100. |
Reimplemented in AAMPGstPlayer.
Definition at line 570 of file main_aamp.h.
|
pure virtual |
Process PTS discontinuity for a stream type.
[in] | mediaType | - Media Type |
Implemented in AAMPGstPlayer.
|
inlinevirtual |
Check if PTS is changing.
[in] | timeout | - max time period within which PTS hasn't changed |
true | if PTS is changing, false if PTS hasn't changed for timeout msecs |
Reimplemented in AAMPGstPlayer.
Definition at line 592 of file main_aamp.h.
|
inlinevirtual |
Check whether cach is empty.
[in] | mediaType | - Media Type |
Reimplemented in AAMPGstPlayer.
Definition at line 600 of file main_aamp.h.
|
inlinevirtual |
API to notify that fragment caching done.
Reimplemented in AAMPGstPlayer.
Definition at line 612 of file main_aamp.h.
|
inlinevirtual |
API to notify that fragment caching is ongoing.
Reimplemented in AAMPGstPlayer.
Definition at line 619 of file main_aamp.h.
|
inlinevirtual |
Get the video dimensions.
[out] | w | - Width |
[out] | h | - Height |
Reimplemented in AAMPGstPlayer.
Definition at line 628 of file main_aamp.h.
|
inlinevirtual |
Queue-up the protection event.
[in] | protSystemId | - DRM system ID. |
[in] | ptr | - Pointer to the protection data. |
[in] | len | - Length of the protection data. |
Reimplemented in AAMPGstPlayer.
Definition at line 638 of file main_aamp.h.
|
inlinevirtual |
Clear the protection event.
Reimplemented in AAMPGstPlayer.
Definition at line 645 of file main_aamp.h.
|
inlinevirtual |
Signal discontinuity on trickmode if restamping is done by stream sink.
Reimplemented in AAMPGstPlayer.
Definition at line 652 of file main_aamp.h.
|
inlinevirtual |
Seek stream sink to desired position and playback rate with a flushing seek.
[in] | position | - desired playback position. |
[in] | rate | - desired playback rate. |
Reimplemented in AAMPGstPlayer.
Definition at line 661 of file main_aamp.h.
|
inlinevirtual |
Get the video window co-ordinates.
Reimplemented in AAMPGstPlayer.
Definition at line 668 of file main_aamp.h.
|
inlinevirtual |
Stop buffering in sink.
[in] | forceStop | - true if buffering to be stopped without any checks |
Reimplemented in AAMPGstPlayer.
Definition at line 676 of file main_aamp.h.