?? rtpaudiosink.h
字號:
// RTPAudioSink.h: interface for the RTPAudioSink class.
//
//////////////////////////////////////////////////////////////////////
#ifndef AFX_RTPAUDIOSINK_H__D14DA56A_E37A_4BF0_9746_6A803873E24E__INCLUDED_
#define AFX_RTPAUDIOSINK_H__D14DA56A_E37A_4BF0_9746_6A803873E24E__INCLUDED_
#include <string>
#include <vector>
#ifdef WIN32
#include <Winsock.h>
#else
#include "linTypes.h"
#endif
#include "AudioSink.h"
#include "TraceUser.h"
#include "Parameters.h"
class RTPAudioSink : public AudioSink
{
public:
RTPAudioSink();
virtual ~RTPAudioSink();
int SetDestination(std::string ipAddress, unsigned short udpPort);
int SetTOS(unsigned char tosByte);
int SetLocalPort(unsigned short port);
virtual int StartSink();
virtual int StopSink();
#ifdef WIN32
virtual int SinkThreadStarted(HANDLE sinkThreadHandle, DWORD sinkThreadID);
virtual int SinkThreadStopped(HANDLE sinkThreadHandle, DWORD sinkThreadID);
#else
virtual int SinkThreadStarted(vthread_t sinkThreadHandle, DWORD sinkThreadID);
virtual int SinkThreadStopped(vthread_t sinkThreadHandle, DWORD sinkThreadID);
#endif
protected:
virtual int RenderAudioSamples(std::vector<std::pair<AudioSample *, AudioSource *> > &data);
int SetTraceLevel();
private:
int CreateSocket();
int CloseSocket();
int PrepareSink();
int UnprepareSink();
private:
unsigned long destinationIP;
std::string destinationIPString;
unsigned short destinationPort;
#ifdef WIN32
SOCKET rtpSocket;
#else
int rtpSocket;
#endif
unsigned short localPort;
unsigned char tos;
unsigned long timestamp;
unsigned long ssrc;
unsigned short seqno;
unsigned char sendBuffer[512];
bool bRunning;
bool silenceInterval;
CRITICAL_SECTION filterMutex;
};
#endif // !defined(AFX_RTPAUDIOSINK_H__D14DA56A_E37A_4BF0_9746_6A803873E24E__INCLUDED_)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -