|
|
@@ -38,32 +38,71 @@ int CALLBACK Test_MediaCallBack(XSDK_HANDLE hMedia, const unsigned char *pData, |
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int TestMediaRealPlay(XSDK_HANDLE hDevice,int dPos)
|
|
|
|
int TestMediaRealPlay()
|
|
|
|
{
|
|
|
|
printf("MediaRealPlay %s\r\n", __FUNCTION__);
|
|
|
|
|
|
|
|
XSDK_HANDLE hPlayer ;
|
|
|
|
XSDK_HANDLE hPlayer[6] ;
|
|
|
|
bool bPause = false;
|
|
|
|
int nSpeed = 0;
|
|
|
|
|
|
|
|
char c = 0;
|
|
|
|
int size = sizeof(hDeviceArr) / sizeof(hDeviceArr[0]);
|
|
|
|
|
|
|
|
if (hDevice)
|
|
|
|
while((c = getchar()) != 'q')
|
|
|
|
{
|
|
|
|
XSDK_MediaStop(hDevice);
|
|
|
|
switch(c)
|
|
|
|
{
|
|
|
|
case 's':
|
|
|
|
{
|
|
|
|
for (int i = 0; i < size; i++)
|
|
|
|
{
|
|
|
|
if (hPlayer[i])
|
|
|
|
{
|
|
|
|
XSDK_MediaStop(hPlayer[i]);
|
|
|
|
hPlayer[i] = 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
for (int i = 0; i < size; i++)
|
|
|
|
{
|
|
|
|
SXMediaRealPlayReq param = { 0 };
|
|
|
|
param.nChannel = 0;
|
|
|
|
param.nStreamType = 0;
|
|
|
|
param.nRequestType = EXSDK_DATA_FORMATE_FRAME;
|
|
|
|
param.pMediaCallback = Test_MediaCallBack;
|
|
|
|
param.pUserData = (void *)DeviceIdArr[i];
|
|
|
|
hPlayer[i] = XSDK_MediaRealPlay(hDeviceArr[i], ¶m);
|
|
|
|
bPause = false;
|
|
|
|
nSpeed = 0;
|
|
|
|
printf("play hMedia:: %x\r\n", hDeviceArr[i]);
|
|
|
|
XSDK_DevSynTime(hDeviceArr[i], "", 1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case 't':
|
|
|
|
{
|
|
|
|
for (int i = 0; i < size; i++)
|
|
|
|
{
|
|
|
|
if (hPlayer[i])
|
|
|
|
{
|
|
|
|
XSDK_MediaStop(hPlayer[i]);
|
|
|
|
hPlayer[i] = 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
for (int i = 0; i < size; i++)
|
|
|
|
{
|
|
|
|
if (hPlayer[i])
|
|
|
|
{
|
|
|
|
XSDK_MediaStop(hPlayer[i]);
|
|
|
|
hPlayer[i] = 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
SXMediaRealPlayReq param = { 0 };
|
|
|
|
param.nChannel = 0;
|
|
|
|
param.nStreamType = 0;
|
|
|
|
param.nRequestType = EXSDK_DATA_FORMATE_FRAME;
|
|
|
|
param.pMediaCallback = Test_MediaCallBack;
|
|
|
|
param.pUserData = (void *)DeviceIdArr[dPos];
|
|
|
|
hPlayer= XSDK_MediaRealPlay(hDevice, ¶m);
|
|
|
|
bPause = false;
|
|
|
|
nSpeed = 0;
|
|
|
|
printf("play hMedia:: %x\r\n", hDevice);
|
|
|
|
XSDK_DevSynTime(hDevice, "", 1);
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|