Reland "Android: Generate JNI code for stats"
This reverts commit 43d069a2cdb90ec8c887cf8aa68b42b7cf7ea49d. Reason for revert: Include fix for local reference overflow. Original change's description: > Revert "Android: Generate JNI code for stats" > > This reverts commit aede67a199ae0552074bfec4bb03cc9a6a5fba0f. > > Reason for revert: Causes error: > JNI ERROR (app bug): local reference table overflow (max=512)' > > Original change's description: > > Android: Generate JNI code for stats > > > > This CL also unifies the functions for converting from C++ to Java, and > > generates the boiler plate for converting C++ vectors to Java arrays. > > > > Bug: webrtc:8278 > > Change-Id: I262e9162beae8a64ba0e8b6a27e1081207b03961 > > Reviewed-on: https://webrtc-review.googlesource.com/26020 > > Commit-Queue: Magnus Jedvert <magjed@webrtc.org> > > Reviewed-by: Sami Kalliomäki <sakal@webrtc.org> > > Cr-Commit-Position: refs/heads/master@{#20918} > > TBR=magjed@webrtc.org,sakal@webrtc.org > > Change-Id: Ieb26ed8577bd489a4dd4f7542d16a7d0e11f409f > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: webrtc:8278 > Reviewed-on: https://webrtc-review.googlesource.com/26900 > Reviewed-by: Magnus Jedvert <magjed@webrtc.org> > Commit-Queue: Magnus Jedvert <magjed@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#20926} TBR=magjed@webrtc.org,sakal@webrtc.org Change-Id: I6f7097f308098e7922fbf0bed577bd69da4e1c61 Bug: webrtc:8278 Reviewed-on: https://webrtc-review.googlesource.com/26901 Commit-Queue: Magnus Jedvert <magjed@webrtc.org> Reviewed-by: Magnus Jedvert <magjed@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20951}
This commit is contained in:

committed by
Commit Bot

parent
936dfb1cb2
commit
bba8e9eb85
@ -121,12 +121,7 @@ int32_t VideoEncoderWrapper::Encode(
|
||||
ScopedLocalRefFrame local_ref_frame(jni);
|
||||
|
||||
// Construct encode info.
|
||||
jobjectArray j_frame_types =
|
||||
jni->NewObjectArray(frame_types->size(), *frame_type_class_, nullptr);
|
||||
for (size_t i = 0; i < frame_types->size(); ++i) {
|
||||
jobject j_frame_type = NativeToJavaFrameType(jni, (*frame_types)[i]);
|
||||
jni->SetObjectArrayElement(j_frame_types, i, j_frame_type);
|
||||
}
|
||||
jobjectArray j_frame_types = NativeToJavaFrameTypeArray(jni, *frame_types);
|
||||
jobject encode_info = Java_EncodeInfo_Constructor(jni, j_frame_types);
|
||||
|
||||
FrameExtraInfo info;
|
||||
@ -169,10 +164,10 @@ VideoEncoderWrapper::ScalingSettings VideoEncoderWrapper::GetScalingSettings()
|
||||
bool isOn =
|
||||
Java_VideoEncoderWrapper_getScalingSettingsOn(jni, j_scaling_settings);
|
||||
|
||||
rtc::Optional<int> low = JavaIntegerToOptionalInt(
|
||||
rtc::Optional<int> low = JavaToNativeOptionalInt(
|
||||
jni,
|
||||
Java_VideoEncoderWrapper_getScalingSettingsLow(jni, j_scaling_settings));
|
||||
rtc::Optional<int> high = JavaIntegerToOptionalInt(
|
||||
rtc::Optional<int> high = JavaToNativeOptionalInt(
|
||||
jni,
|
||||
Java_VideoEncoderWrapper_getScalingSettingsHigh(jni, j_scaling_settings));
|
||||
|
||||
@ -200,7 +195,7 @@ void VideoEncoderWrapper::OnEncodedFrame(JNIEnv* jni,
|
||||
|
||||
std::vector<uint8_t> buffer_copy(buffer_size);
|
||||
memcpy(buffer_copy.data(), buffer, buffer_size);
|
||||
const int qp = JavaIntegerToOptionalInt(jni, j_qp).value_or(-1);
|
||||
const int qp = JavaToNativeOptionalInt(jni, j_qp).value_or(-1);
|
||||
|
||||
encoder_queue_->PostTask(
|
||||
[
|
||||
|
Reference in New Issue
Block a user