Revert of Remove unnecessary interface TelephoneEventHandler (patchset #3 id:40001 of https://codereview.webrtc.org/2357583002/ )

Reason for revert:
breaks downstream code

Original issue's description:
> Remove unnecessary interface TelephoneEventHandler.
>
> BUG=webrtc:2795
>
> Committed: https://crrev.com/2beb42983ca24e1326a9a7f2c06b3ad740eea2c3
> Cr-Commit-Position: refs/heads/master@{#14346}

TBR=henrik.lundin@webrtc.org,solenberg@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:2795

Review-Url: https://codereview.webrtc.org/2362673002
Cr-Commit-Position: refs/heads/master@{#14348}
This commit is contained in:
danilchap
2016-09-22 03:36:27 -07:00
committed by Commit bot
parent a70695a3e1
commit 799a9d017a
10 changed files with 65 additions and 2 deletions

View File

@ -25,7 +25,9 @@ RTPReceiverStrategy* RTPReceiverStrategy::CreateAudioStrategy(
RTPReceiverAudio::RTPReceiverAudio(RtpData* data_callback)
: RTPReceiverStrategy(data_callback),
TelephoneEventHandler(),
last_received_frequency_(8000),
telephone_event_forward_to_decoder_(false),
telephone_event_payload_type_(-1),
cng_nb_payload_type_(-1),
cng_wb_payload_type_(-1),
@ -40,6 +42,19 @@ RTPReceiverAudio::RTPReceiverAudio(RtpData* data_callback)
memset(current_remote_energy_, 0, sizeof(current_remote_energy_));
}
// Outband TelephoneEvent(DTMF) detection
void RTPReceiverAudio::SetTelephoneEventForwardToDecoder(
bool forward_to_decoder) {
rtc::CritScope lock(&crit_sect_);
telephone_event_forward_to_decoder_ = forward_to_decoder;
}
// Is forwarding of outband telephone events turned on/off?
bool RTPReceiverAudio::TelephoneEventForwardToDecoder() const {
rtc::CritScope lock(&crit_sect_);
return telephone_event_forward_to_decoder_;
}
bool RTPReceiverAudio::TelephoneEventPayloadType(
int8_t payload_type) const {
rtc::CritScope lock(&crit_sect_);
@ -341,6 +356,10 @@ int32_t RTPReceiverAudio::ParseAudioCodecSpecific(
// check if it's a DTMF event, hence something we can playout
if (telephone_event_packet) {
if (!telephone_event_forward_to_decoder_) {
// don't forward event to decoder
return 0;
}
std::set<uint8_t>::iterator first =
telephone_event_reported_.begin();
if (first != telephone_event_reported_.end() && *first > 15) {