Reland "Implement RtpParameters.transaction_id for PC RtpSenderInterface"
This is a reland of 5faf36ef3c582350fba5ef97a3549e440d81a283 The issue in Chrome has been fixed and this should be safe to reland. TBR=deadbeef Original change's description: > Implement RtpParameters.transaction_id for PC RtpSenderInterface > > The transaction_id field should be refreshed for every getParameters() > call and checked at each setParameters() call. > This also checks that getParameters() was ever called to return a proper > error code. > > Bug: webrtc:7580 > Change-Id: I6c6fe289542e486fc422cdc61577982b0529d4c1 > Reviewed-on: https://webrtc-review.googlesource.com/70820 > Commit-Queue: Florent Castelli <orphis@webrtc.org> > Reviewed-by: Sami Kalliomäki <sakal@webrtc.org> > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org> > Reviewed-by: Kári Helgason <kthelgason@webrtc.org> > Reviewed-by: Steve Anton <steveanton@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#23120} Bug: webrtc:7580 Change-Id: Iabd41fb21afdf452c039d5513824ae334f8d1d3f Reviewed-on: https://webrtc-review.googlesource.com/76980 Commit-Queue: Florent Castelli <orphis@webrtc.org> Reviewed-by: Florent Castelli <orphis@webrtc.org> Cr-Commit-Position: refs/heads/master@{#23247}
This commit is contained in:
committed by
Commit Bot
parent
ef75ebef55
commit
cebf50ff75
@ -109,21 +109,24 @@ public class RtpParameters {
|
||||
}
|
||||
}
|
||||
|
||||
public final String transactionId;
|
||||
|
||||
public final List<Encoding> encodings;
|
||||
// Codec parameters can't currently be changed between getParameters and
|
||||
// setParameters. Though in the future it will be possible to reorder them or
|
||||
// remove them.
|
||||
public final List<Codec> codecs;
|
||||
|
||||
public RtpParameters() {
|
||||
this.encodings = new ArrayList<>();
|
||||
this.codecs = new ArrayList<>();
|
||||
@CalledByNative
|
||||
RtpParameters(String transactionId, List<Encoding> encodings, List<Codec> codecs) {
|
||||
this.transactionId = transactionId;
|
||||
this.encodings = encodings;
|
||||
this.codecs = codecs;
|
||||
}
|
||||
|
||||
@CalledByNative
|
||||
RtpParameters(List<Encoding> encodings, List<Codec> codecs) {
|
||||
this.encodings = encodings;
|
||||
this.codecs = codecs;
|
||||
String getTransactionId() {
|
||||
return transactionId;
|
||||
}
|
||||
|
||||
@CalledByNative
|
||||
|
||||
@ -59,6 +59,10 @@ RtpParameters JavaToNativeRtpParameters(JNIEnv* jni,
|
||||
const JavaRef<jobject>& j_parameters) {
|
||||
RtpParameters parameters;
|
||||
|
||||
ScopedJavaLocalRef<jstring> j_transaction_id =
|
||||
Java_RtpParameters_getTransactionId(jni, j_parameters);
|
||||
parameters.transaction_id = JavaToNativeString(jni, j_transaction_id);
|
||||
|
||||
// Convert encodings.
|
||||
ScopedJavaLocalRef<jobject> j_encodings =
|
||||
Java_RtpParameters_getEncodings(jni, j_parameters);
|
||||
@ -90,7 +94,7 @@ ScopedJavaLocalRef<jobject> NativeToJavaRtpParameters(
|
||||
JNIEnv* env,
|
||||
const RtpParameters& parameters) {
|
||||
return Java_RtpParameters_Constructor(
|
||||
env,
|
||||
env, NativeToJavaString(env, parameters.transaction_id),
|
||||
NativeToJavaList(env, parameters.encodings,
|
||||
&NativeToJavaRtpEncodingParameter),
|
||||
NativeToJavaList(env, parameters.codecs, &NativeToJavaRtpCodecParameter));
|
||||
|
||||
Reference in New Issue
Block a user