* @pre Player state must be kNone
* @post The player state will be EsState::kIdle
* @return @c True on success, otherwise @c False
+ * @exception None
* @see Close()
*/
// LCOV_EXCL_START
* EsState::kIdle or EsState::kNone
* @post The player state will be kNone
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::Open()
*/
virtual bool Close() { return false; }
* @brief Not play the specific stream anymore.
* @remark The submitted es packets will be dropped after deactivated.
* It recommands to stop feeding the specific stream's packets.
+ * @param [in] type : stream type
* @pre The player must be set to at least #EsState::kReady
* @post The player state is same as before calling Deactivate().
* @return @c True on success, otherwise @c False.
+ * @exception None
* @see EsPlusPlayer::Deactivate().
*/
virtual bool Deactivate(const StreamType type) { return false; }
* User has to submit the specific stream from the
* current playing time for activating.
* The video stream has to be submitted from Iframe.
+ * @param [in] type : stream type
* @pre The player must be set to at least #EsState::kReady
* The StreamType must be deactivated in advance.
* Stream should be set in advance.
+ * @post The player state is same as before calling Activate().
* @return @c True on success, otherwise @c False
+ * @exception None
* @code
PrepareAsync();
Deactivate(StreamType::kVideo);
* @pre The player must be set to at least #EsState::kIdle
* @post The player state is same as before calling DeactivateAudio().
* @return @c True on success, otherwise @c False.
+ * @exception None
* @see EsPlusPlayer::DeactivateAudio()
*/
virtual bool DeactivateAudio() { return false; }
* @pre The player must be set to at least #EsState::kReady
* The audio stream must be deactivated in advance.
* Audio stream should be set in advance.
+ * @post The player state is same as before calling ActivateAudio().
* @return @c True on success, otherwise @c False
+ * @exception None
* @code
VideoStreamPtr audio_stream = AudioStream::Create();
audio_stream->SetMimeType(AudioMimeType::kAAC);
* @pre The player state must be set to #EsState::kIdle
* @post The player state will be #EsState::kReady
* @return @c true if async task is correctly started
+ * @exception None
* @see EsPlusPlayer::Open() \n
* EsPlusPlayer::Stop() \n
* EsPlusPlayer::SubmitPacket()
* @pre The player state should be #EsState::kReady
* @post The player state will be #EsState::kPlaying
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::Open() \n
* EsPlusPlayer::PrepareAsync() \n
* EsPlusPlayer::Stop() \n
* @pre The player state must be all of #EsState except #EsState::kNone
* @post The player state will be #EsState::kIdle
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::Open() \n
* EsPlusPlayer::PrepareAsync() \n
* EsPlusPlayer::Start() \n
* #EsState::kPlaying or #EsState::kPaused
* @post The player state will be #EsState::kPaused
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::Start() \n
* EsPlusPlayer::Resume()
*/
* #EsState::kPaused
* @post The player state will be #EsState::kPlaying
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::Start() \n
* EsPlusPlayer::Pause()
*/
* priority to control resource.
* @param [in] app_info : application id, version, type
* @pre The player state must be set to #EsState::kIdle
+ * @post The player state is same as before calling SetAppInfo()
* @return None
+ * @exception None
*/
virtual void SetAppInfo(const PlayerAppInfo& app_info) { return; }
/**
* priority to control resource.
* @param [in] app_info : application id, version, type, runtitle
* @pre The player state must be set to #EsState::kIdle
+ * @post The player state is same as before calling SetAppInfoEx()
* @return None
+ * @exception None
*/
virtual void SetAppInfoEx(const PlayerAppInfoEx& app_info) { return; }
/**
* mute off.
* @pre The source and feeder have to push the data as fast as playback
* rate.
+ * @post The player state is same as before calling SetPlaybackRate()
* @return @c True if set playback rate is finished without any problem
* otherwise @c False
+ * @exception None
*/
virtual bool SetPlaybackRate(const double rate, bool audio_mute) {
return false;
* the stream default in milliseconds, according to SetTimeUnitType.
* @pre The player state must be one of #EsState::kReady,
* #EsState::kPlaying or #EsState::kPaused
+ * @post None
* @return @c True if seek operation is started without any problem
* otherwise @c False
+ * @exception None
* @see EsEventListener::OnSeekDone() \n
* EsPlusPlayer::SubmitPacket()
*/
* @param [in] type : display type
* @param [in] obj : The handle to display window
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see DisplayType \n
* EsPlusPlayer::SetDisplayMode() \n
* EsPlusPlayer::SetDisplayRoi() \n
* @param [in] w : width of display window
* @param [in] h : height of display window
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see DisplayType \n
* EsPlusPlayer::SetDisplayMode() \n
* EsPlusPlayer::SetDisplayRoi() \n
* @param [in] w : width of display window
* @param [in] h : height of display window
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see DisplayType \n
* EsPlusPlayer::SetDisplayMode() \n
* EsPlusPlayer::SetDisplayRoi() \n
* @param [in] w : width of display window
* @param [in] h : height of display window
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see DisplayType \n
* EsPlusPlayer::SetDisplayMode() \n
* EsPlusPlayer::SetDisplayRoi() \n
* @brief Set the video display mode
* @param [in] mode : display mode
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see #DisplayMode
* @see EsPlusPlayer::SetDisplay()
* @see EsPlusPlayer::SetDisplayRoi()
* @pre The player state can be all of #EsState except #EsState::kNone
* \n Before set display ROI, #DisplayMode::kDstRoi must be set with
* EsPlusPlayer::SetDisplayMode().
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see DisplayMode \n
* EsPlusPlayer::SetDisplay() \n
* EsPlusPlayer::SetDisplayMode() \n
* @brief Set scaled area ratio of display
* @param [in] area : Crop ratio of src area
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @remark The minimum value of input are 0,maximun is 1.
*/
virtual bool SetVideoRoi(const CropArea& area) { return false; }
* displayed).
* @param [in] rect : render rectangle.
* @pre Should be called after SetDisplay()
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @remark The minimum value of width and height are 1.
*/
virtual bool ResizeRenderRect(const RenderRect& rect) { return false; }
* @remarks The default value is 0.
* @param [in] rotate : Rotate angle.
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::SetDisplay()
*/
virtual bool SetDisplayRotate(const DisplayRotation& rotate) { return false; }
* @remarks The default value is 0.
* @param [out] rotate : Stored rotate angle value.
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::SetDisplayRotate()
*/
virtual bool GetDisplayRotate(DisplayRotation* rotate) { return false; }
* @param [in] is_visible : The visibility of the display
* (@c true = visible, @c false = non-visible)
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::SetDisplay()
*/
virtual bool SetDisplayVisible(bool is_visible) { return false; }
* (@c true = if decrypted packets are sent in trust zone, @c false
* = otherwise)
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::SubmitTrustZonePacket()
*/
virtual bool SetTrustZoneUse(bool is_using_tz) { return false; }
* If type is kEncryptedData, Use SubmitEncryptedPacket()
* @param [in] type : whether to use trust zone memory or encrypted data
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see EsPlusPlayer::SubmitPacket() \n
* EsPlusPlayer::SubmitTrustZonePacket() \n
* EsPlusPlayer::SubmitEncryptedPacket() \\n
* EsPlusPlayer::PrepareAsync()
* @param [in] stream : audio stream object
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see AudioStream
*/
virtual bool SetStream(const AudioStreamPtr& stream) { return false; }
* EsPlusPlayer::PrepareAsync()
* @param [in] stream : video stream object
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
* @see VideoStream
*/
virtual bool SetStream(const VideoStreamPtr& stream) { return false; }
* This api must be called from a different thread than other apis
* @param [in] packet : es packet object
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c PacketSubmitStatus::kSuccess : succeed to submit es packet
* @c otherwise : fail to submit es packet
+ * @exception None
* @see SetSubmitDataType() \n
* EsPacket \n
* OnBufferStatus \n
* SetSubmitDataType() \n
* This api must be called from a different thread than other apis.
* @param [in] packet : es packet object
- * [in] tz_handle : a handle for es packet in the trust zone
+ * @param [in] tz_handle : a handle for es packet in the trust zone
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c PacketSubmitStatus::kSuccess : succeed to submit es packet
* @c otherwise : fail to submit es packet
+ * @exception None
* @see SetSubmitDataType() \n
* EsPacket \n
* OnBufferStatus \n
* SetSubmitDataType() \n
* This api must be called from a different thread than other apis.
* @param [in] packet : encrypted es packet object
- * [in] drm_info : information for decryption
+ * @param [in] drm_info : information for decryption
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c PacketSubmitStatus::kSuccess : succeed to submit es packet
* @c PacketSubmitStatus::kFull, PacketSubmitStatus::kNotPrepared :
* fail to submit es packet
+ * @exception None
* @see SetSubmitDataType() \n
* EsPacket \n
* OnBufferStatus \n
* can be set by @SetTimeUnitType
* @pre The player must be one of #EsState::kPlaying or
* #EsState::kPaused
+ * @post None
* @return @c True on success, otherwise @c False
* ("time" will be 0)
+ * @exception None
*/
virtual bool GetPlayingTime(uint64_t* time) { return false; }
/**
* frames)
* @pre The player must be one of #EsState::kPlaying or
* #EsState::kPaused or #EsState::kReady
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetAdaptiveInfo(void* padaptive_info,
const PlayerAdaptiveInfo& adaptive_type) {
* @param [in] is_mute : On mute of the sound
* (@c true = mute, @c false = non-mute)
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetAudioMute(bool is_mute) { return false; }
* @brief Set decoded video frame buffer type.
* @param [in] type : A type of decoded video frame buffer.
* @pre The player state must be set to #EsState::kIdle
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetVideoFrameBufferType(DecodedVideoFrameBufferType type) {
return false;
* when request_framerate.num/request_framerate.den <
* track_framerate.num/track_framerate.den, drop some decoded video frame.
* @pre The player state must be not #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetDecodedVideoFrameRate(const Rational& request_framerate) {
return false;
* @param [in] target_width : target width of scale.
* @param [in] target_height : target height of scale.
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetVideoFrameBufferScaleResolution(
const uint32_t& target_width, const uint32_t& target_height) {
* @brief Set volume value of player
* @param [in] volume : volume level
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetVolume(const int& volume) { return false; }
/**
* @brief Get volume value of player
* @param [out] volume : volume ptr
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetVolume(int* volume) { return false; }
/**
* @brief Flush the data in pipeline
* @param [in] type : can be kAudio/kVideo
* @pre The player state can greater than #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool Flush(const StreamType& type) { return false; }
/**
* @brief Set the type of buffer size.
* @param [in] option : A type of Buffer Option
+ * @param [in] size : A size of Buffer
* @pre The player state must be set to #EsState::kIdle
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetBufferSize(const BufferOption& option, uint64_t size) {
return false;
* EsPlusPlayer::PrepareAsync()
* @param [in] mode : one of the low latency mode to set.
* @pre The player state must be set to #EsState::kIdle
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetLowLatencyMode(const PlayerLowLatencyMode& mode) {
return false;
/**
* @brief Provided api for enabling video frame peek mode
* @pre The player state must be set to #EsState::kIdle.
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
* @see RenderVideoFrame().
*/
virtual bool SetVideoFramePeekMode() { return false; }
* @see SetVideoFramePeekMode().
*/
virtual bool RenderVideoFrame() { return false; }
+
/**
* @brief Provided api for setting unlimited max buffer mode
* @remarks The player does not limit es packet transmission although in
* buffer overrun status.
* @pre The player state must be set to #EsState::kIdle
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetUnlimitedMaxBufferMode() { return false; }
+
/**
* @brief Provided api to deliver fmm signal and getting fmm auto status
* @remarks The player just delivers fmm signal to system. It doesn't
* gaurantee activating fmm mode. System refers to fmm signal when it decides
* to activate fmm mode or not.
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @return @c ErrorType::kNone = fmm auto mode on @c
* ErrorType::kInvalidOperation = fmm audo mode off @c
* ErrorType::kInvalidState = internal operation failed
+ * @exception None
*/
virtual ErrorType SetFmmMode() { return ErrorType::kNone; }
+
/**
* @brief Provided api for setting audio codec type
+ * @param [in] type : type of audio codec
* @pre The player state must be set to #EsState::kIdle.
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetAudioCodecType(const PlayerAudioCodecType& type) {
return false;
}
/**
* @brief Provided api for setting video codec type
+ * @param [in] type : type of video codec
* @pre The player state must be set to #EsState::kIdle.
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetVideoCodecType(const PlayerVideoCodecType& type) {
return false;
/**
* @brief Provided api for setting alternative video resource(sub decoder
* and sub scaler)
- * @param [in] is_set : set alternative video resource
+ * @param [in] rsc_type : set alternative video resource
* (@c 0 [defualt] = set all video resources(decoder/scaler) to
* main resources,
* @c 1 = set all video resources(decoder/scaler) to sub
* @c 2 = set only decoder to sub resource,
* @c 3 = set only scaler to sub resource)
* @pre The player state can be all of #EsState except #EsState::kNone
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetAlternativeVideoResource(unsigned int rsc_type) {
return false;
/**
* @brief Provided api for setting alternative audio resource(sub decoder
* and audio out)
- * @param [in] is_set : set alternative audio resource
+ * @param [in] rsc_type : set alternative audio resource
* @pre The player state can be all of #EsState except #EsState::kNone
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetAlternativeAudioResource(
const PlayerAudioResourceType rsc_type) {
* if other codec type is set, this api will return false.
* @pre The player state must be one of #EsState::kReady,
* #EsState::kPlaying, #EsState::kPaused.
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SwitchAudioStreamOnTheFly(const AudioStreamPtr& stream) {
return false;
/**
* @brief Provided api for setting aifilter to video pipeline
+ * @param [in] aifilter : set AI filter
* @pre The player state must be set to #EsState::kIdle.
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetAiFilter(void* aifilter) { return false; }
/**
* #EsState::kPaused or #EsState::kPlaying.
* It have to be set to low latency mode.
* @remark esplusplayer_set_low_latency_mode().
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetRenderTimeOffset(const StreamType type, int64_t offset) {
return false;
* #EsState::kPaused or #EsState::kPlaying.
* It have to be set to low latency mode.
* @remark esplusplayer_set_low_latency_mode().
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetRenderTimeOffset(const StreamType type, int64_t* offset) {
return false;
/**
* @brief Provided api for setting catch up speed level
+ * @param [in] level : catch-up speed
* @pre The player state must be set to #EsState::kIdle,
* #EsState::kReady, #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetCatchUpSpeed(const CatchUpSpeed& level) { return false; }
+
/**
* @brief Provided api for getting current video latency status
+ * @param [in] status : video latency status
* @pre The player state must be one of #EsState::kReady,
* #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetVideoLatencyStatus(LatencyStatus* status) { return false; }
+
/**
* @brief Provided api for getting current audio latency status
+ * @param [in] status : audio latency status
* @pre The player state must be one of #EsState::kReady,
* #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetAudioLatencyStatus(LatencyStatus* status) { return false; }
+
/**
* @brief Provided api for setting video mid latency threshold for low
* latency playback
+ * @param [in] threshold : video mid latency
* @pre The player state must be set to #EsState::kIdle,
* #EsState::kReady, #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetVideoMidLatencyThreshold(const unsigned int threshold) {
return false;
/**
* @brief Provided api for setting audio mid latency threshold for low
* latency playback
+ * @param [in] threshold : audio mid latency
* @pre The player state must be set to #EsState::kIdle,
* #EsState::kReady, #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetAudioMidLatencyThreshold(const unsigned int threshold) {
return false;
/**
* @brief Provided api for setting video high latency threshold for low
* latency playback
+ * @param [in] threshold : video high latency
* @pre The player state must be set to #EsState::kIdle,
* #EsState::kReady, #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetVideoHighLatencyThreshold(const unsigned int threshold) {
return false;
/**
* @brief Provided api for setting audio high latency threshold for low
* latency playback
+ * @param [in] threshold : audio high latency
* @pre The player state must be set to #EsState::kIdle,
* #EsState::kReady, #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool SetAudioHighLatencyThreshold(const unsigned int threshold) {
return false;
/**
* @brief Provided api for getting the maximum number of frames
* @remark It has to be set game mode, and multi channel pcm
+ * @param [in] frame_count : pcm buffer size
* @pre The player state must be one of #EsState::kReady,
* #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetLowLatencyPcmBufferSize(uint64_t* frame_count) {
return false;
/**
* @brief Provided api for getting the number of currently queued frames
* @remark It has to be set game mode, and multi channel pcm
+ * @param [in] frame_count : pcm current buffer level
* @pre The player state must be one of #EsState::kReady,
* #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetLowLatencyPcmCurrentBufferLevel(uint64_t* frame_count) {
return false;
/**
* @brief Provided api for getting the underrun counts in audio out
* @remark It has to be set game mode, and multi channel pcm
+ * @param [in] underrun_count : the number of underrun
* @pre The player state must be one of #EsState::kReady,
* #EsState::kPlaying or #EsState::kPaused
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetLowLatencyPcmUnderrunCount(uint64_t* underrun_count) {
return false;
* @param [in] easing_info : target_volume, duration(milisecond), easing
* type
* @pre The player state can be all of #EsState except #EsState::kNone
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool InitAudioEasingInfo(const uint32_t init_volume,
const uint32_t init_elapsed_time,
* @param [in] easing_info : target_volume, duration(milisecond), easing
* type
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @remarks This API have to be called after calling the
* EsPlusPlayer::InitAudioEasingInfo()
- * @return @c True on success, otherwise @c False
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool UpdateAudioEasingInfo(const AudioEasingInfo& easing_info) {
return false;
* @param [out] easing_info : target_volume, duration(milisecond), easing
* type
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @remarks This API have to be called after calling the
* EsPlusPlayer::InitAudioEasingInfo()
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool GetAudioEasingInfo(uint32_t* current_volume,
uint32_t* elapsed_time,
/**
* @brief Provided api for starting audio easing
* @pre The player state should be at least #EsState::kReady
+ * @post None
* @remarks This API have to be called after calling the
* EsPlusPlayer::InitAudioEasingInfo()
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool StartAudioEasing() { return false; }
/**
* @brief Provided api for stopping audio easing
* @pre The player state can be all of #EsState except #EsState::kNone
+ * @post None
* @remarks This API have to be called after calling the
* EsPlusPlayer::InitAudioEasingInfo()
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool StopAudioEasing() { return false; }
/**
- * @brief Get virtual render resource id.
+ * @brief Get virtual remderer resource id.
* @param [in] type : The resource type of virtual id.
* @param [out] virtual_id : Stored virtual resource id value.
* @pre The player state should be #EsState::kReady, #EsState::kPlaying
/**
* @brief Return the decoded video packet.
- * @param [in] packet
+ * @param [in] packet : decoded video packet
+ * @pre The player state must be set to #EsState::kIdle.
+ * @post None
* @return @c True on success, otherwise @c False
+ * @exception None
*/
virtual bool ReturnDecodedPacket(const DecodedVideoPacket& packet) {
return false;
virtual bool SetAudioPreloading() { return false; }
/**
- * @brief Set resource allocate policy.
- * @param [in] policy : The resource allocate policy.
+ * @brief Set video scan type.
+ * @param [in] type : video scan type
* @pre The player state must be set to #EsState::kIdle.
* @post None
* @return @c True on success, otherwise @c False
* milliseconds
* @pre The player must be one of #EsState::kPlaying or
* #EsState::kPaused
+ * @post None
* @return @c True on success, otherwise @c False
* ("time_in_milliseconds" will be 0)
+ * @exception None
*/
virtual bool GetDecodingTime(StreamType type, int32_t* time_in_milliseconds) {
return false;
return false;
}
+ /**
+ * @brief Set the mode of virtual mic
+ * @pre The player state must be set to #EsState::kIdle.
+ * @post None
+ * @return @c True on success, otherwise @c False
+ * @exception None
+ */
+ virtual bool SetVirtualMicMode() { return false; }
+
// LCOV_EXCL_STOP
protected: