JNI wrapper for PeerConnection::SetBitrate.
BUG=webrtc:7395 Review-Url: https://codereview.webrtc.org/2868413004 Cr-Commit-Position: refs/heads/master@{#19243}
This commit is contained in:
parent
552ba37dac
commit
d89b0bcc8a
@ -324,6 +324,10 @@ public class PeerConnection {
|
|||||||
nativeNewGetStats(callback);
|
nativeNewGetStats(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Limits the bandwidth allocated for all RTP streams sent by this
|
||||||
|
// PeerConnection. Pass null to leave a value unchanged.
|
||||||
|
public native boolean setBitrate(Integer min, Integer current, Integer max);
|
||||||
|
|
||||||
// Starts recording an RTC event log. Ownership of the file is transfered to
|
// Starts recording an RTC event log. Ownership of the file is transfered to
|
||||||
// the native code. If an RTC event log is already being recorded, it will be
|
// the native code. If an RTC event log is already being recorded, it will be
|
||||||
// stopped and a new one will start using the provided file. Logging will
|
// stopped and a new one will start using the provided file. Logging will
|
||||||
|
|||||||
@ -815,6 +815,10 @@ public class PeerConnectionTest {
|
|||||||
answeringExpectations.dataChannel.close();
|
answeringExpectations.dataChannel.close();
|
||||||
offeringExpectations.dataChannel.close();
|
offeringExpectations.dataChannel.close();
|
||||||
|
|
||||||
|
// Test SetBitrate.
|
||||||
|
assertTrue(offeringPC.setBitrate(100000, 5000000, 500000000));
|
||||||
|
assertFalse(offeringPC.setBitrate(3, 2, 1));
|
||||||
|
|
||||||
// Free the Java-land objects and collect them.
|
// Free the Java-land objects and collect them.
|
||||||
shutdownPC(offeringPC, offeringExpectations);
|
shutdownPC(offeringPC, offeringExpectations);
|
||||||
offeringPC = null;
|
offeringPC = null;
|
||||||
|
|||||||
@ -286,6 +286,26 @@ JOW(void, PeerConnection_nativeNewGetStats)
|
|||||||
ExtractNativePC(jni, j_pc)->GetStats(callback);
|
ExtractNativePC(jni, j_pc)->GetStats(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
JOW(jboolean, PeerConnection_setBitrate)
|
||||||
|
(JNIEnv* jni, jobject j_pc, jobject j_min, jobject j_current, jobject j_max) {
|
||||||
|
webrtc::PeerConnectionInterface::BitrateParameters params;
|
||||||
|
jclass j_integer_class = jni->FindClass("java/lang/Integer");
|
||||||
|
jmethodID int_value_id = GetMethodID(jni, j_integer_class, "intValue", "()I");
|
||||||
|
if (!IsNull(jni, j_min)) {
|
||||||
|
int min_value = jni->CallIntMethod(j_min, int_value_id);
|
||||||
|
params.min_bitrate_bps = rtc::Optional<int>(min_value);
|
||||||
|
}
|
||||||
|
if (!IsNull(jni, j_current)) {
|
||||||
|
int current_value = jni->CallIntMethod(j_current, int_value_id);
|
||||||
|
params.current_bitrate_bps = rtc::Optional<int>(current_value);
|
||||||
|
}
|
||||||
|
if (!IsNull(jni, j_max)) {
|
||||||
|
int max_value = jni->CallIntMethod(j_max, int_value_id);
|
||||||
|
params.max_bitrate_bps = rtc::Optional<int>(max_value);
|
||||||
|
}
|
||||||
|
return ExtractNativePC(jni, j_pc)->SetBitrate(params).ok();
|
||||||
|
}
|
||||||
|
|
||||||
JOW(bool, PeerConnection_nativeStartRtcEventLog)
|
JOW(bool, PeerConnection_nativeStartRtcEventLog)
|
||||||
(JNIEnv* jni, jobject j_pc, int file_descriptor, int max_size_bytes) {
|
(JNIEnv* jni, jobject j_pc, int file_descriptor, int max_size_bytes) {
|
||||||
return ExtractNativePC(jni, j_pc)->StartRtcEventLog(file_descriptor,
|
return ExtractNativePC(jni, j_pc)->StartRtcEventLog(file_descriptor,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user