Avoid allocation/copy by using GetFloatArrayRegion.

Bug: None
Change-Id: Ia049591f1d8d819d651ec8f359f318a7b9c12e43
Reviewed-on: https://webrtc-review.googlesource.com/74001
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23088}
This commit is contained in:
Mirko Bonadei
2018-05-03 10:35:23 +02:00
committed by Commit Bot
parent 26b9e12289
commit edcd2cc572

View File

@ -125,11 +125,7 @@ int64_t GetJavaVideoFrameTimestampNs(JNIEnv* jni,
Matrix::Matrix(JNIEnv* jni, const JavaRef<jfloatArray>& a) {
RTC_CHECK_EQ(16, jni->GetArrayLength(a.obj()));
jfloat* ptr = jni->GetFloatArrayElements(a.obj(), nullptr);
for (int i = 0; i < 16; ++i) {
elem_[i] = ptr[i];
}
jni->ReleaseFloatArrayElements(a.obj(), ptr, 0);
jni->GetFloatArrayRegion(a.obj(), 0, 16, elem_);
}
ScopedJavaLocalRef<jfloatArray> Matrix::ToJava(JNIEnv* jni) const {