📄 rtpaudiosource.h
字号:
// RTPAudioSource.h: interface for the RTPAudioSource class.
//
//////////////////////////////////////////////////////////////////////
#ifndef AFX_RTPAUDIOSOURCE_H__9A0DE2C0_90A9_4F86_B13C_58D1181EB505__INCLUDED_
#define AFX_RTPAUDIOSOURCE_H__9A0DE2C0_90A9_4F86_B13C_58D1181EB505__INCLUDED_
#include "AudioSource.h"
#include "Parameters.h"
#ifndef WIN32
#include "linTypes.h"
#include "UdpStack.hxx"
#endif
enum Modes {ACTIVE_MODE=0, PASSIVE_MODE};
class RTPAudioSource : public AudioSource
{
public:
RTPAudioSource();
virtual ~RTPAudioSource();
int SetReceivePort(unsigned short receivePort);
int StartSource();
int StopSource();
#ifdef WIN32
int SourceThreadStarted(HANDLE sourceThreadHandle, DWORD sourceThreadID);
int SourceThreadStopped(HANDLE sourceThreadHandle, DWORD sourceThreadID);
#else
int SourceThreadStarted(vthread_t sourceThreadHandle, DWORD sourceThreadID);
int SourceThreadStopped(vthread_t sourceThreadHandle, DWORD sourceThreadID);
#endif
int UnprepareSource(); // if the filter is in ACTIVE_MODE, then it waits on a socket
// so user needs to call UnprepareSource (which closes the socket)
// before the SourceThreadProc can end. Hence this method is public
protected:
int GenerateData(AudioSample **ppAudioSample);
int SetTraceLevel();
private:
int CreateSocket();
int CloseSocket();
int PrepareSource();
private:
#ifdef WIN32
SOCKET rtpSocket;
#else
int rtpSocket;
#endif
unsigned short receivePort;
char receiveBuffer[RTPAUDIOSOURCE_RECEIVEBUFFER_SIZE];
int mode;
bool bRunning;
CRITICAL_SECTION filterMutex;
};
#endif // !defined(AFX_RTPAUDIOSOURCE_H__9A0DE2C0_90A9_4F86_B13C_58D1181EB505__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -