Files
platform-external-webrtc/webrtc/voice_engine/voe_rtp_rtcp_impl.h
stefan@webrtc.org 4ef438e2de Remove the send-side cname getter APIs from voice and video engine.
These APIs aren't being used, and introduces deadlocks when using GetStats() in the new Call api. Having getters for cname at the send-side is pointless, as it's always the user who sets the cname.

R=henrika@webrtc.org, pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/16899004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6659 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 09:55:30 +00:00

110 lines
4.0 KiB
C++

/*
* Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
#ifndef WEBRTC_VOICE_ENGINE_VOE_RTP_RTCP_IMPL_H
#define WEBRTC_VOICE_ENGINE_VOE_RTP_RTCP_IMPL_H
#include "webrtc/voice_engine/include/voe_rtp_rtcp.h"
#include "webrtc/voice_engine/shared_data.h"
namespace webrtc {
class VoERTP_RTCPImpl : public VoERTP_RTCP
{
public:
// RTCP
virtual int SetRTCPStatus(int channel, bool enable);
virtual int GetRTCPStatus(int channel, bool& enabled);
virtual int SetRTCP_CNAME(int channel, const char cName[256]);
virtual int GetRemoteRTCP_CNAME(int channel, char cName[256]);
virtual int GetRemoteRTCPData(int channel,
unsigned int& NTPHigh,
unsigned int& NTPLow,
unsigned int& timestamp,
unsigned int& playoutTimestamp,
unsigned int* jitter = NULL,
unsigned short* fractionLost = NULL);
// SSRC
virtual int SetLocalSSRC(int channel, unsigned int ssrc);
virtual int GetLocalSSRC(int channel, unsigned int& ssrc);
virtual int GetRemoteSSRC(int channel, unsigned int& ssrc);
// RTP Header Extension for Client-to-Mixer Audio Level Indication
virtual int SetSendAudioLevelIndicationStatus(int channel,
bool enable,
unsigned char id);
virtual int SetReceiveAudioLevelIndicationStatus(int channel,
bool enable,
unsigned char id);
// RTP Header Extension for Absolute Sender Time
virtual int SetSendAbsoluteSenderTimeStatus(int channel,
bool enable,
unsigned char id);
virtual int SetReceiveAbsoluteSenderTimeStatus(int channel,
bool enable,
unsigned char id);
// Statistics
virtual int GetRTPStatistics(int channel,
unsigned int& averageJitterMs,
unsigned int& maxJitterMs,
unsigned int& discardedPackets);
virtual int GetRTCPStatistics(int channel, CallStatistics& stats);
virtual int GetRemoteRTCPReportBlocks(
int channel, std::vector<ReportBlock>* report_blocks);
// RED
virtual int SetREDStatus(int channel,
bool enable,
int redPayloadtype = -1);
virtual int GetREDStatus(int channel, bool& enabled, int& redPayloadtype);
//NACK
virtual int SetNACKStatus(int channel,
bool enable,
int maxNoPackets);
// Store RTP and RTCP packets and dump to file (compatible with rtpplay)
virtual int StartRTPDump(int channel,
const char fileNameUTF8[1024],
RTPDirections direction = kRtpIncoming);
virtual int StopRTPDump(int channel,
RTPDirections direction = kRtpIncoming);
virtual int RTPDumpIsActive(int channel,
RTPDirections direction = kRtpIncoming);
virtual int SetVideoEngineBWETarget(int channel, ViENetwork* vie_network,
int video_channel);
protected:
VoERTP_RTCPImpl(voe::SharedData* shared);
virtual ~VoERTP_RTCPImpl();
private:
voe::SharedData* _shared;
};
} // namespace webrtc
#endif // WEBRTC_VOICE_ENGINE_VOE_RTP_RTCP_IMPL_H