int CMediaStudioProFS::NotifyStartSave() {
  // callback AP to initialize saving
  dib_Prepare(&m_SrcBih, m_pSData->wSaveWidth, m_pSData->wSaveHeight, m_pSData->wSaveBitCount);
  m_pSData->dwAudioCalls = m_bSaveAudio ? m_pSData->dwSaveFrames : 0;
  m_pSData->dwVideoCalls = m_pSData->dwSaveFrames;
  return m_pfnCallBack(m_pSData, UVDATA_START, 0, 0, &m_SrcBih, NULL);
}
Exemple #2
0
int KClient::ConnectTo(char *pszIp, unsigned short uPort)
{
	int nRet = INVALID_VALUE;
	do 
	{
		if (m_listFreeLink.empty())
		{
			ASSERT(FALSE);
			break;
		}
		IKG_SocketStream* pConnection = m_cConnector.Connect(pszIp, uPort);
		printf("connect to %s:%d...", pszIp, uPort);
		if (!pConnection)
		{
			//ASSERT(FALSE);
			printf("failed! \n");
			break;
		}
		else
		{
			printf("OK\n");
		}
		unsigned int uLinkId = m_listFreeLink.front();
		m_listFreeLink.pop_front();
		ASSERT((int)uLinkId < m_nMaxConnCount && m_ppConnections[uLinkId] == NULL);
		m_ppConnections[uLinkId] = pConnection;
		if (m_pfnCallBack)
		{
			m_pfnCallBack(m_pCallParam, uLinkId, enumClientConnectCreate);
		}
		nRet = uLinkId;
	}
	while (0);
	return nRet;
}
Exemple #3
0
void KClient::OnConnectionClose(unsigned int uLinkId)
{
	printf("disconnect \n");
	ASSERT(uLinkId < (unsigned int)m_nMaxConnCount);
	m_listFreeLink.push_back(uLinkId);
	m_ppConnections[uLinkId] = NULL;
	if (m_pfnCallBack)
	{
		m_pfnCallBack(m_pCallParam, uLinkId, enumClientConnectClose);
	}
}
int CMediaStudioProFS::NotifyEndOfAudioSamples(DWORD dwSamples) {
  return m_pfnCallBack(m_pSData, UVDATA_SAMPLE_END, 0, dwSamples, NULL, NULL);
}
int CMediaStudioProFS::CallbackGetAudioSamples(DWORD dwStart, DWORD dwSamples, PBYTE* ppData) {
  return m_pfnCallBack(m_pSData, UVDATA_AUDIO, dwStart, dwSamples, &m_SrcWfx, (PVOID*)ppData);
}
int CMediaStudioProFS::NotifyEndOfVideoFrame() {
  return m_pfnCallBack(m_pSData, UVDATA_FRAME_END, 0, 0, NULL, NULL);
}
int CMediaStudioProFS::CallbackGetVideoFrame(DWORD dwFrame, PDIB* ppDib) {
  return m_pfnCallBack(m_pSData, UVDATA_VIDEO, dwFrame, 1, &m_SrcBih, (PVOID*)ppDib);
}
int CMediaStudioProFS::NotifyEndSaveAudio() {
  return m_pfnCallBack(m_pSData, UVDATA_AUDIO_END, 0, 0, NULL, NULL);
}
int CMediaStudioProFS::NotifyEndSaveVideo() {
  return m_pfnCallBack(m_pSData, UVDATA_VIDEO_END, 0, 0, NULL, NULL);
}
int CMediaStudioProFS::NotifyStartSaveAudio() {
  // callback AP to prepare audio data
  wfx_Prepare(&m_SrcWfx, m_pSData->wSaveChannels, m_pSData->wSaveBitsPerSample, m_pSData->dwSaveSamplesPerSec);
  return m_pfnCallBack(m_pSData, UVDATA_AUDIO_BEGIN, 0, 0, &m_SrcWfx, NULL);
}
int CMediaStudioProFS::NotifyStartSaveVideo() {
  // callback AP to prepare video data
  return m_pfnCallBack(m_pSData, UVDATA_VIDEO_BEGIN, 0, 0, &m_SrcBih, NULL);
}