Adding Java wrapper for DtmfSender.

BUG=webrtc:4180

Review-Url: https://codereview.webrtc.org/2666873002
Cr-Commit-Position: refs/heads/master@{#16410}
This commit is contained in:
deadbeef
2017-02-01 21:53:09 -08:00
committed by Commit bot
parent 20cb0c1c85
commit 24af66397e
5 changed files with 167 additions and 6 deletions

View File

@ -90,6 +90,7 @@ using webrtc::DataBuffer;
using webrtc::DataChannelInit;
using webrtc::DataChannelInterface;
using webrtc::DataChannelObserver;
using webrtc::DtmfSenderInterface;
using webrtc::IceCandidateInterface;
using webrtc::LogcatTraceContext;
using webrtc::MediaConstraintsInterface;
@ -2357,16 +2358,22 @@ JOW(jboolean, RtpSender_nativeSetTrack)(JNIEnv* jni,
->SetTrack(reinterpret_cast<MediaStreamTrackInterface*>(j_track_pointer));
}
JOW(jlong, RtpSender_nativeGetTrack)(JNIEnv* jni,
jclass,
jlong j_rtp_sender_pointer,
jlong j_track_pointer) {
JOW(jlong, RtpSender_nativeGetTrack)
(JNIEnv* jni, jclass, jlong j_rtp_sender_pointer) {
return jlongFromPointer(
reinterpret_cast<RtpSenderInterface*>(j_rtp_sender_pointer)
->track()
.release());
}
JOW(jlong, RtpSender_nativeGetDtmfSender)
(JNIEnv* jni, jclass, jlong j_rtp_sender_pointer) {
return jlongFromPointer(
reinterpret_cast<RtpSenderInterface*>(j_rtp_sender_pointer)
->GetDtmfSender()
.release());
}
static void JavaRtpParametersToJsepRtpParameters(
JNIEnv* jni,
jobject j_parameters,
@ -2615,4 +2622,45 @@ JOW(void, RtpReceiver_nativeUnsetObserver)
}
}
JOW(jboolean, DtmfSender_nativeCanInsertDtmf)
(JNIEnv* jni, jclass, jlong j_dtmf_sender_pointer) {
return reinterpret_cast<DtmfSenderInterface*>(j_dtmf_sender_pointer)
->CanInsertDtmf();
}
JOW(jboolean, DtmfSender_nativeInsertDtmf)
(JNIEnv* jni,
jclass,
jlong j_dtmf_sender_pointer,
jstring tones,
jint duration,
jint inter_tone_gap) {
return reinterpret_cast<DtmfSenderInterface*>(j_dtmf_sender_pointer)
->InsertDtmf(JavaToStdString(jni, tones), duration, inter_tone_gap);
}
JOW(jstring, DtmfSender_nativeTones)
(JNIEnv* jni, jclass, jlong j_dtmf_sender_pointer) {
return JavaStringFromStdString(
jni,
reinterpret_cast<DtmfSenderInterface*>(j_dtmf_sender_pointer)->tones());
}
JOW(jint, DtmfSender_nativeDuration)
(JNIEnv* jni, jclass, jlong j_dtmf_sender_pointer) {
return reinterpret_cast<DtmfSenderInterface*>(j_dtmf_sender_pointer)
->duration();
}
JOW(jint, DtmfSender_nativeInterToneGap)
(JNIEnv* jni, jclass, jlong j_dtmf_sender_pointer) {
return reinterpret_cast<DtmfSenderInterface*>(j_dtmf_sender_pointer)
->inter_tone_gap();
}
JOW(void, DtmfSender_free)
(JNIEnv* jni, jclass, jlong j_dtmf_sender_pointer) {
reinterpret_cast<DtmfSenderInterface*>(j_dtmf_sender_pointer)->Release();
}
} // namespace webrtc_jni