| Index: talk/app/webrtc/java/jni/peerconnection_jni.cc
|
| diff --git a/talk/app/webrtc/java/jni/peerconnection_jni.cc b/talk/app/webrtc/java/jni/peerconnection_jni.cc
|
| index 8e274a4721e10b41d4cb44052160a467775da99e..6f30c79ee03375242162f49c2c14f08c19f975d8 100644
|
| --- a/talk/app/webrtc/java/jni/peerconnection_jni.cc
|
| +++ b/talk/app/webrtc/java/jni/peerconnection_jni.cc
|
| @@ -767,7 +767,7 @@ class JavaVideoRendererWrapper : public VideoRendererInterface {
|
| jni, *j_frame_class_, "<init>", "(III[I[Ljava/nio/ByteBuffer;J)V")),
|
| j_texture_frame_ctor_id_(GetMethodID(
|
| jni, *j_frame_class_, "<init>",
|
| - "(IIILjava/lang/Object;IJ)V")),
|
| + "(IIII[FJ)V")),
|
| j_byte_buffer_class_(jni, FindClass(jni, "java/nio/ByteBuffer")) {
|
| CHECK_EXCEPTION(jni);
|
| }
|
| @@ -810,20 +810,20 @@ class JavaVideoRendererWrapper : public VideoRendererInterface {
|
| *j_frame_class_, j_i420_frame_ctor_id_,
|
| frame->GetWidth(), frame->GetHeight(),
|
| static_cast<int>(frame->GetVideoRotation()),
|
| - strides, planes, frame);
|
| + strides, planes, jlongFromPointer(frame));
|
| }
|
|
|
| // Return a VideoRenderer.I420Frame referring texture object in |frame|.
|
| jobject CricketToJavaTextureFrame(const cricket::VideoFrame* frame) {
|
| NativeHandleImpl* handle =
|
| reinterpret_cast<NativeHandleImpl*>(frame->GetNativeHandle());
|
| - jobject texture_object = reinterpret_cast<jobject>(handle->GetHandle());
|
| - int texture_id = handle->GetTextureId();
|
| + jfloatArray sampling_matrix = jni()->NewFloatArray(16);
|
| + jni()->SetFloatArrayRegion(sampling_matrix, 0, 16, handle->sampling_matrix);
|
| return jni()->NewObject(
|
| *j_frame_class_, j_texture_frame_ctor_id_,
|
| frame->GetWidth(), frame->GetHeight(),
|
| static_cast<int>(frame->GetVideoRotation()),
|
| - texture_object, texture_id, frame);
|
| + handle->oes_texture_id, sampling_matrix, jlongFromPointer(frame));
|
| }
|
|
|
| JNIEnv* jni() {
|
|
|