void NextPlayout(void);
int ResetSourceAndPrepare(void);
int ResetPlayerModuleStatus(void);
+ void ClearRecordingPlayer(void);
/* -------------------------------------------------------------------------- */
void InitRecordingListItem();
std::vector<RecordingListItem> &GetRecordinglistItems();
return OHOS_SUCCESS;
}
+ /*
+ * @brief 退出录音播放界面后清除播放器资源
+ */
+ void RecordingModel::ClearRecordingPlayer(void)
+ {
+ if (GetPlayerCtr() != nullptr)
+ {
+ GetPlayerCtr()->Reset();
+ GetPlayerCtr()->Release();
+ SetAudioInitStatus(false);
+ ClearActivateAudioInterrupt();
+ GetPlayerCtr().reset();
+ }
+ }
+
/*
* @brief 播放器状态的控制
*/
{
int ret;
/* ------------------------------ 设置播放器的回调函数。 ----------------------------- */
- if (GetRecordingPlayerState() != PlayerStates::PLAYER_PREPARED) //如果录音播放器状态为Prepared状态无需重置回到IDLE状态和setsource,Prepare
+ if (GetRecordingPlayerState() != PlayerStates::PLAYER_PREPARED) // 如果录音播放器状态为Prepared状态无需重置回到IDLE状态和setsource,Prepare
{
ResetPlayerModuleStatus();
ResetSourceAndPrepare();
static constexpr int16 NUM_TIME_MIN = 60;
static constexpr int16 NUM_TIME_HOUR = 3600;
static constexpr int32 NUM_TIME_DAY = 86400;
-
+
/*
* @brief 显示录音时长
*/
void RecordingPresenter::OnStop(void)\r
{\r
Presenter<RecordingView>::OnStop();\r
- if (p_RecordingModel->GetPlayerCtr() != nullptr)\r
- {\r
- // p_RecordingModel->GetPlayerCtr()->Stop();\r
- p_RecordingModel->GetPlayerCtr()->Reset();\r
- p_RecordingModel->GetPlayerCtr()->Release();\r
- p_RecordingModel->SetAudioInitStatus(false);\r
- p_RecordingModel->ClearActivateAudioInterrupt();\r
- p_RecordingModel->GetPlayerCtr().reset();\r
- }\r
+ p_RecordingModel->ClearRecordingPlayer();\r
ScreenAlwaysOnCtr(0);\r
}\r
\r