Files
wnmj-normal/Classes/Voice/YvVoiceManager.hpp

76 lines
2.0 KiB
C++
Raw Permalink Normal View History

2026-03-03 13:56:44 +08:00
#ifndef YvVoiceManager_hpp
#define YvVoiceManager_hpp
#include <stdio.h>
#include "cocos2d.h"
#include "yvListern.h"
#include "YVTool.h"
class YvVoiceManager: public YVSDK::YVListern::YVLoginListern,
public YVSDK::YVListern::YVReConnectListern,
public YVSDK::YVListern::YVStopRecordListern,
public YVSDK::YVListern::YVFinishSpeechListern,
public YVSDK::YVListern::YVFinishPlayListern,
public YVSDK::YVListern::YVUpLoadFileListern,
public YVSDK::YVListern::YVDownLoadFileListern,
public YVSDK::YVListern::YVRecordVoiceListern,
public YVSDK::YVListern::YVCPUserInfoListern,
public YVSDK::YVListern::YVDownloadVoiceListern
{
public:
static YvVoiceManager* GetInstance();
void Init();
void Cleanup();
void CpLogin(std::string nickName, std::string uuid);
virtual void onLoginListern(YVSDK::CPLoginResponce*);
void StartRecord();
virtual void onRecordVoiceListern(YVSDK::RecordVoiceNotify*);
void StopRecord();
virtual void onStopRecordListern(YVSDK::RecordStopNotify*);
void PlayRecord(std::string url);
virtual void onDownLoadFileListern(YVSDK::DownLoadFileRespond*);
virtual void onFinishPlayListern(YVSDK::StartPlayVoiceRespond*);
//<2F>Ʋ<EFBFBD><C6B2><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD><EFBFBD>¼<EFBFBD>
virtual void onDownloadVoiceListern(YVSDK::DownloadVoiceRespond*);
void UploadFile(std::string fileName);
virtual void onUpLoadFileListern(YVSDK::UpLoadFileRespond*);
virtual void onFinishSpeechListern(YVSDK::SpeechStopRespond*);
virtual void onCPUserInfoListern(YVSDK::GetCPUserInfoRespond*);
virtual void onReConnectListern(YVSDK::ReconnectionNotify*);
public:
void setUploadListern(YVSDK::YVListern::YVUpLoadFileListern * listern)
{
uploadListen = listern;
}
void setPlayFinishFunc(const std::function<void()>& fnHander)
{
onPlayFinishFunc = fnHander;
}
bool isPlaying;
private:
YVSDK::YVTool* pYVTool;
YVSDK::YVListern::YVUpLoadFileListern * uploadListen;
std::function<void()> onPlayFinishFunc;
};
#endif /* YvVoiceManager_hpp */