Pārlūkot izejas kodu

Z991239-4806 #comment 本地媒体播放代码同步

80274480 2 gadi atpakaļ
vecāks
revīzija
5537a3f99b

+ 1 - 1
Module/mod_localmediaplay/AdvertBase/AdvertBase.cpp

@@ -1,4 +1,4 @@
-#include "../stdafx.h"
+#include "stdafx.h"
 #include "AdvertBase.h"
 
 

+ 9 - 6
Module/mod_localmediaplay/AdvertManage/BaseFun.cpp

@@ -6,6 +6,7 @@
 #include <ShlDisp.h>
 #include <direct.h>
 #include <io.h>
+#include <string.h>
 #else
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -244,11 +245,12 @@ bool createDir(const string &filePath)
 
 BOOL IsDirectory(const char *pDir)
 {
-	char szCurPath[500] = {0};
-    snprintf(szCurPath, 500, "%s//*", pDir);
+	char szCurPath[MAX_PATH*2] = {0};
 #ifdef RVC_OS_WIN
-	WIN32_FIND_DATAA FindFileData;
-	ZeroMemory(&FindFileData, sizeof(WIN32_FIND_DATAA));
+	_snprintf(szCurPath, MAX_PATH * 2, "%s//*", pDir);
+
+	WIN32_FIND_DATAA FindFileData = {0};
+	//ZeroMemory(&FindFileData, sizeof(WIN32_FIND_DATAA));
 
 	HANDLE hFile = FindFirstFileA(szCurPath, &FindFileData); /**< find first file by given path. */
 
@@ -264,6 +266,7 @@ BOOL IsDirectory(const char *pDir)
 	}
 
 #else
+	snprintf(szCurPath, MAX_PATH * 2, "%s//*", pDir);
 	struct stat buf;
 	if (0 == stat(szCurPath, &buf))
 	{
@@ -282,9 +285,9 @@ BOOL DeleteDirectory(const char * DirName)
 #ifdef RVC_OS_WIN
 	//    CFileFind tempFind;        //声明一个CFileFind类变量,以用来搜索
 	char szCurPath[MAX_PATH];        //用于定义搜索格式
-	snprintf(szCurPath, MAX_PATH, "%s//*.*", DirName);    //匹配格式为*.*,即该目录下的所有文件
+	_snprintf(szCurPath, MAX_PATH, "%s//*.*", DirName);    //匹配格式为*.*,即该目录下的所有文件
 	WIN32_FIND_DATAA FindFileData;
-	ZeroMemory(&FindFileData, sizeof(WIN32_FIND_DATAA));
+	memset(&FindFileData, 0, sizeof(WIN32_FIND_DATAA));
 	HANDLE hFile = FindFirstFileA(szCurPath, &FindFileData);
 	BOOL IsFinded = TRUE;
 	while (IsFinded)

+ 3 - 3
Module/mod_localmediaplay/AdvertManage/MediaManage.cpp

@@ -216,7 +216,7 @@ bool mediaManage::AddResourceList(vector<string> resourceList)
 /*
 		if (!checkFileExist(dirPath) && createDir(dirPath) && !Unzip2Folder((BSTR)wfileName.c_str(), (BSTR)wdirPath.c_str()))
 		{
-			Dbg("unzip %s to %s fail!", fileName.c_str(), dirPath.c_str());
+			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("unzip %s to %s fail!", fileName.c_str(), dirPath.c_str());
 			continue;
 		}
 		*/
@@ -237,7 +237,7 @@ bool mediaManage::AddResourceList(vector<string> resourceList)
 		string resourcePath = dirPath + SPLIT_SLASH_STR;
 /*		if (!getUniqueDir(dirPath, resourcePath))
 		{
-			Dbg("error:find multi resource dir!");
+			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("error:find multi resource dir!");
 			continue;
 		}
 		resourcePath = dirPath + "\\" + resourcePath + "\\";
@@ -333,7 +333,7 @@ void mediaManage::InitResourceListByLocal()
 }
 
 void mediaManage::DeleteResourceList(vector<string> resourceList)
-{//��ɾ���ļ������ļ�����ֹռ�����⣬��������
+{
 	if (0 == resourceList.size())
 		return;
 

+ 14 - 0
Module/mod_localmediaplay/LocalMediaPlay_def_g.h

@@ -40,6 +40,20 @@ namespace LocalMediaPlay {
 #define PlayService_MethodSignature_StopPlayNotice -1978922649
 #define PlayService_MethodSignature_StopPlayAllMedias -1517000886
 
+#define PlayService_LogCode_StartPlayVideo "QLR040231300"
+#define PlayService_LogCode_StartPlayAudio "QLR040231301"
+#define PlayService_LogCode_StartPlayImage "QLR040231302"
+#define PlayService_LogCode_StopPlayVideo "QLR040231303"
+#define PlayService_LogCode_StopPlayAudio "QLR040231304"
+#define PlayService_LogCode_StopPlayImage "QLR040231305"
+#define PlayService_LogCode_GetLocalVideoVolume "QLR040231306"
+#define PlayService_LogCode_SetLocalVideoVolume "QLR040231307"
+#define PlayService_LogCode_GetLocalAudioVolume "QLR040231308"
+#define PlayService_LogCode_SetLocalAudioVolume "QLR040231309"
+#define PlayService_LogCode_StartPlayNotice "QLR040231310"
+#define PlayService_LogCode_StopPlayNotice "QLR040231311"
+#define PlayService_LogCode_StopPlayAllMedias "QLR040231312"
+
 struct PlayService_StartPlayVideo_Req
 {
 	int CfgInx;

+ 0 - 13
Module/mod_localmediaplay/LocalMediaPlay_server_g.h

@@ -291,7 +291,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StartPlayVideo_Req,PlayService_StartPlayVideo_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StartPlayVideo(ctx);
 					}
 					break;
@@ -301,7 +300,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StartPlayAudio_Req,PlayService_StartPlayAudio_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StartPlayAudio(ctx);
 					}
 					break;
@@ -311,7 +309,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StartPlayImage_Req,PlayService_StartPlayImage_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StartPlayImage(ctx);
 					}
 					break;
@@ -321,7 +318,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StopPlayVideo_Req,PlayService_StopPlayVideo_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StopPlayVideo(ctx);
 					}
 					break;
@@ -331,7 +327,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StopPlayAudio_Req,PlayService_StopPlayAudio_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StopPlayAudio(ctx);
 					}
 					break;
@@ -341,7 +336,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StopPlayImage_Req,PlayService_StopPlayImage_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StopPlayImage(ctx);
 					}
 					break;
@@ -351,7 +345,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_GetLocalVideoVolume_Req,PlayService_GetLocalVideoVolume_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_GetLocalVideoVolume(ctx);
 					}
 					break;
@@ -361,7 +354,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_SetLocalVideoVolume_Req,PlayService_SetLocalVideoVolume_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_SetLocalVideoVolume(ctx);
 					}
 					break;
@@ -371,7 +363,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_GetLocalAudioVolume_Req,PlayService_GetLocalAudioVolume_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_GetLocalAudioVolume(ctx);
 					}
 					break;
@@ -381,7 +372,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_SetLocalAudioVolume_Req,PlayService_SetLocalAudioVolume_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_SetLocalAudioVolume(ctx);
 					}
 					break;
@@ -391,7 +381,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StartPlayNotice_Req,PlayService_StartPlayNotice_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StartPlayNotice(ctx);
 					}
 					break;
@@ -401,7 +390,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StopPlayNotice_Req,PlayService_StopPlayNotice_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StopPlayNotice(ctx);
 					}
 					break;
@@ -411,7 +399,6 @@ public:
 						ctx.Attach(new SpReqAnsContext<PlayService_StopPlayAllMedias_Req,PlayService_StopPlayAllMedias_Ans>(pTransactionContext));
 						SpBuffer2Object(Buf, ctx->Req);
 						pTransactionContext->GetLinkContext(ctx->link);
-						EntityResource::setLink(ctx->link);
 						Handle_StopPlayAllMedias(ctx);
 					}
 					break;

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 521 - 275
Module/mod_localmediaplay/mod_localmediaplay.cpp


+ 123 - 48
Module/mod_localmediaplay/mod_localmediaplay.h

@@ -3,18 +3,20 @@
 
 #ifdef RVC_OS_WIN
 #include <Shlwapi.h>
+#pragma comment(lib, "ShLwApi.Lib")
+
 #include "../../Other/libwmpplayer/libwmpplayer.h"
 #include "../../Other/libimgplayer/libimgplayer.h"
 #else
 #include <pthread.h>
 #include <signal.h>
 #include <unistd.h>
-#include "../../Other/libmediaplayer/libmediaplayer.h"
-#include "../../Other/libpictureplayer/libpictureplayer.h"
 #include <semaphore.h>
-#include "../../Other/libaudioqueue/libaudioqueue.h"
 #endif // RVC_OS_WIN
 
+#include "../../Other/libmediaplayer/libmediaplayer.h"
+#include "../../Other/libpictureplayer/libpictureplayer.h"
+#include "../../Other/libaudioqueue/libaudioqueue.h"
 
 #include "LocalMediaPlay_server_g.h"
 #include "AdvertBase/AdvertSync.h"
@@ -22,7 +24,6 @@
 #include <iostream>
 
 
-//#include "SpTest.h"
 #include "modVer.h"
 #include "EventCode.h"
 
@@ -32,26 +33,29 @@ using namespace LocalMediaPlay;
 #define LOG_EVT_SELFCHECK_IEBROWSER_IDLE	0x50500007				//IEBrowser重启
 #define MAX_PLAY_CHANNELS					3						//最大播放通道数
 
-#define LOG_EVT_START_NOTICE_PLAY		0x31300101
-#define LOG_EVT_STOP_NOTICE_PLAY		0x31300102
-#define LOG_EVT_NOTICE_PLAY_FINISHED	0x31300103
-#define LOG_EVT_NOTICE_FILE_NOT_EXIST	0x31300104
+#define LOG_EVT_START_NOTICE_PLAY			0x31300101
+#define LOG_EVT_STOP_NOTICE_PLAY			0x31300102
+#define LOG_EVT_NOTICE_PLAY_FINISHED		0x31300103
+#define LOG_EVT_NOTICE_FILE_NOT_EXIST		0x31300104
+
+#define LOG_EVT_ADV_VIDEO_NOT_EXIST			0x31300105
+#define LOG_EVT_ADV_AUDIO_NOT_EXIST			0x31300106
+#define LOG_EVT_ADV_PIC_NOT_EXIST			0x31300107
 
-#define LOG_EVT_ADV_VIDEO_NOT_EXIST		0x31300105
-#define LOG_EVT_ADV_AUDIO_NOT_EXIST		0x31300106
-#define LOG_EVT_ADV_PIC_NOT_EXIST		0x31300107
+#define LOG_EVT_VICE_MONITOR_NOT_EXIST		0x31300108
+#define LOG_EVT_VICE_MONITOR_SET_ERROR		0x31300109
+#define LOG_EVT_NOTICE_PLAY_EARLY_TERM		0x3130010A
+#define LOG_EVT_PLAYING_AUDIO_INFOS			0x3130010B
+#define LOG_EVT_NOTICE_FILE_NOT_VALID		0x3130010C
+#define LOG_EVT_MEDIAPLAY_COST_TIME_ERROR	0x3130010D
 
-#define LOG_EVT_VICE_MONITOR_NOT_EXIST	0x31300108
-#define LOG_EVT_VICE_MONITOR_SET_ERROR	0x31300109
-#define LOG_EVT_NOTICE_PLAY_EARLY_TERM  0x3130010A
-#define LOG_EVT_PLAYING_AUDIO_INFOS		0x3130010B
 
 #ifndef RVC_AUDIO_LEN
 #define RVC_AUDIO_LEN 320
 #endif // !RVC_AUDIO_LEN
 
 #ifndef RVC_AUDIO_BUFFER_LEN
-#define RVC_AUDIO_BUFFER_LEN 320*8
+#define RVC_AUDIO_BUFFER_LEN 320*8*2
 #endif // !RVC_AUDIO_BUFFER_LEN
 
 typedef struct {
@@ -62,18 +66,24 @@ typedef struct {
 	int nWndHeight;
 }MediaPlayParam;
 
-//DWORD WINAPI qryMedia(LPVOID lpv);
-//DWORD WINAPI MediaPlayThread(LPVOID param);
-//DWORD WINAPI clearOutdata(LPVOID lpv);
-//DWORD WINAPI CheckAudioThread(LPVOID param);
+#ifdef RVC_OS_WIN
+	DWORD WINAPI qryMedia(LPVOID lpv);
+	DWORD WINAPI MediaPlayThread(LPVOID param);
+	DWORD WINAPI clearOutdata(LPVOID lpv);
+	DWORD WINAPI CheckAudioThread(LPVOID param);
+	DWORD WINAPI NoticePlayThread(LPVOID param);
+	DWORD WINAPI StartMediaPlayFunc(LPVOID param);
+	DWORD WINAPI StartAudioPlayingThreadFunc(LPVOID param);
+	DWORD WINAPI StartNoticePlayThreadFunc(LPVOID param);
+#endif
+
 
 #ifdef RVC_OS_WIN
-class CLocalMediaPlayEntity : public CWmpHostApi, public CImgHostApi, public CEntityBase, public ILogListener
+class CLocalMediaPlayEntity : public CWmpHostApi, public CImgHostApi, public CMediaHostApi, public CPicHostApi, public CEntityBase, public ILogListener
 #else
 class CLocalMediaPlayEntity : public CMediaHostApi, public CPicHostApi, public CEntityBase, public ILogListener
 #endif // RVC_OS_WIN
 {
-
 public:
 	CLocalMediaPlayEntity();
 	virtual ~CLocalMediaPlayEntity();
@@ -93,25 +103,40 @@ public:
 	
 #ifdef RVC_OS_WIN
 	virtual BOOL LoadPlayConfig(CWmpPlayConfig& config, int CfgInx);
+
 	virtual BOOL LoadPlayConfig(CImgPlayConfig& config, int CfgInx);
+
 	virtual void WmpDebug(const char* fmt, ...);
+
+	virtual void WmpLogEvt(int ievent, const char* strmsg);
+
 	virtual void ImgDebug(const char* fmt, ...);
-#else
+#endif // _WIN32
 	virtual int LoadPlayConfig(CMediaPlayConfig& config, int CfgInx);
+
 	virtual int LoadPlayConfig(CPicPlayConfig& config, int CfgInx);
+
 	virtual void Debug(media_loglevel log_level, const char* fmt, ...);
+
 	virtual void PicDebug(pic_loglevel log_level, const char* fmt, ...);
+
 	virtual void MediaPlayFinished(int iMediaType);
+
 	virtual int GetMediaPlayerIcoPath(char* strPath, size_t uLen);
+
 	virtual int GetPicPlayerIcoPath(char* strPath, size_t uLen);
+
 	virtual int GetAudioOutDevName(char* strDev, size_t uLen);
+
 	virtual int PlayingAudioDataCallback(audio_param_t* param, const void* input, unsigned long uaudiolen);
+
 	bool GetPlayFlag();
+
 	bool GetScanExitFlag();
+
 	ErrorCodeEnum GetPcmRecordFlag();
-	ErrorCodeEnum HandleRemoteRecord(const char* pszMessage);
-	
-#endif // _WIN32
+
+	ErrorCodeEnum HandleRemoteRecord(const char* pszMessage);	
 
 	virtual void OnLog(const CAutoArray<CUUID> &SubIDs, const CUUID nLogID, const LogTypeEnum eLogType, const SeverityLevelEnum eLevel,
 		const DWORD dwSysError, const DWORD dwUserCode, const DWORD dwEntityInstanceID, const WORD wEntityDevelID,
@@ -142,26 +167,40 @@ public:
 	void StopAll();
 
 	bool GetLocalVideoVolume(int nCfgInx, int &nVolume);
+
 	bool SetLocalVideoVolume(int nCfgInx, int nVolume);
+
 	std::pair<bool, int> GetLocalAudioVolume();
+
 	bool SetLocalAudioVolume(int nVolume);
+
 	bool IsRunConfigExist();
 
 	ErrorCodeEnum StartNotice(int nCfgInx, int nWndX, int nWndY, int nWndWidth, int nWndHeight, const char *pVideoName);
 
+	ErrorCodeEnum StartMediaPlayerNotice(int nCfgInx, int nWndX, int nWndY, int nWndWidth, int nWndHeight, const char *pVideoName);
+
+	ErrorCodeEnum StartFFPlayerNotice(int nCfgInx, int nWndX, int nWndY, int nWndWidth, int nWndHeight, const char *pVideoName);
+
+	void SetLogFlag(bool bflag);
+
+	bool GetLogFlag();
+
+	void SetLocalLogFlag(bool bflag);
+
+	bool GetLocalLogFlag();
+
+	void SetLocalPicLogFlag(bool bflag);
+
+	bool GetLocalPicLogFlag();
+
+	ErrorCodeEnum LoadEntityConfig();
+	
 	ErrorCodeEnum StopNotice(int nCfgInx);
 
 	ErrorCodeEnum StopPlayAllMedias();
 	
 	DeviceTypeEnum GetDeviceType();
-	
-protected:
-	// 音频播放对象指针
-#ifdef RVC_OS_WIN
-	Clibwmpplayer* m_pAudioPlayer;
-#else
-	Clibmediaplayer* m_pMediaAudioPlayer;
-#endif // RVC_OS_WIN
 
 private:
 
@@ -170,44 +209,68 @@ private:
 	// 按分隔符分隔字符串
 	void CStringSplit(char *str, char **result, const char *del);
 
-	//friend DWORD WINAPI clearOutdata(LPVOID lpv);
-	
 #ifdef RVC_OS_WIN
-	friend DWORD WINAPI MediaPlayThread(LPVOID param);
+	friend DWORD WINAPI clearOutdata(LPVOID lpv);
+
 	friend DWORD WINAPI qryMedia(LPVOID lpv);
+
+	friend DWORD WINAPI MediaPlayThread(LPVOID param);
+
 	friend DWORD WINAPI CheckAudioThread(LPVOID param);
+
+	friend DWORD WINAPI NoticePlayThread(LPVOID param);
+
+	friend DWORD WINAPI StartMediaPlayFunc(LPVOID param);
+
+	friend DWORD WINAPI StartAudioPlayingThreadFunc(LPVOID param);
+
+	friend DWORD WINAPI StartNoticePlayThreadFunc(LPVOID param);
 #else
 	friend void* queryMedia(void* param);
+	
 	friend void* StartAudioPlayingThreadFunc(void* param);
+	
 	friend void* StartMediaPlayFunc(void* param);
+	
 	friend void* StartNoticePlayThreadFunc(void* param);
 
-	int GetPlayerIcoPath(char* strPath, size_t uLen);
-	int GetAudioOutDev();
 #endif // RVC_OS_WIN
 
 	void setMediaPath();
+
 	void SecureClientRelease();
+
 	bool SecureClientConnect();
 
-	void loadDefaultMedia();
+	void loadDefaultMedia(bool fNewVersion = true);
+
+	int GetPlayerIcoPath(char* strPath, size_t uLen);
+
+	int GetAudioOutDev();
+
 private:
 	int m_id_seq;
+	
 	CUUID m_SubIDIEIdle;
+	
 	CUUID m_SubIDStartRecord;
+	
 	CUUID m_SubIDStopRecord;
 
 #ifdef RVC_OS_WIN
 	// 视频播放对象指针数组
 	Clibwmpplayer* m_pVideoPlayer[MAX_PLAY_CHANNELS];
+	// 音频播放对象指针
+	Clibwmpplayer* m_pAudioPlayer;
 	// 图片播放对象指针数组
 	Clibimgplayer* m_pImagePlayer[MAX_PLAY_CHANNELS];
-#else
+#endif // RVC_OS_WIN
 	// 媒体播放对象指针数组
 	Clibmediaplayer* m_pMediaPlayer[MAX_PLAY_CHANNELS];
-	// 图片播放对象指针数组    add by clp   20201103
+	// 图片播放对象指针数组
 	Clibpictureplayer* m_pPicturePlayer[MAX_PLAY_CHANNELS];
-#endif // RVC_OS_WIN
+	
+	Clibmediaplayer* m_pMediaAudioPlayer;
 
 	//连接获取最新广告资源
 	CAdvertSyncConnection *m_connection;
@@ -217,23 +280,33 @@ private:
 	std::string m_lastPlayAudio;
 	std::string m_lastPlayVideo;
 	DeviceTypeEnum m_eDeviceType;
-
-	bool m_bStartRecord;
+	bool m_bLogFlag;
+	bool m_bLocalLogFlag;
+	CSimpleStringA m_AudioPath;
+	bool m_bLocalPicLogFlag;
 	bool m_bRecordPCM;
+	bool m_bStartRecord;
 	bool m_bloged;
 
+	
 #ifdef RVC_OS_WIN
+	HANDLE m_scanThreadId;
+	HANDLE m_uMediaPlayThreadId;
+	HANDLE m_uNoticePlayThreadId;
 	HANDLE m_scanThread, m_playThread;
 	vector<CWmpPlayConfig> m_defaultVideo;
 	vector<CWmpPlayConfig> m_defaultAudio;
 	vector<CImgPlayConfig> m_defaultImg;
 #else
 	pthread_t m_scanThreadId;
+	pthread_t m_uMediaPlayThreadId;
+	pthread_t m_uNoticePlayThreadId;
+#endif // RVC_OS_WIN
+
 	vector<CMediaPlayConfig> m_Videos;
 	vector<CMediaPlayConfig> m_Audios;
 	vector<CPicPlayConfig> m_defaultPic;
-	pthread_t m_uMediaPlayThreadId;
-	pthread_t m_uNoticePlayThreadId;
+
 	volatile bool m_badplayflag;
 	bool m_scanexitflag;
 	CSimpleStringA m_strAudioOutDev;
@@ -245,7 +318,9 @@ private:
 	int m_leftlen;
 	int m_iseriesnumber;
 	bool m_buserstopaudio;
-#endif // RVC_OS_WIN
+	int m_iPlayType;
+	pic_loglevel m_piclevel;
+	media_loglevel m_medialevel;
 };
 
 

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels