Repo created

This commit is contained in:
Fr4nz D13trich 2025-11-22 14:04:28 +01:00
parent 81b91f4139
commit f8c34fa5ee
22732 changed files with 4815320 additions and 2 deletions

View file

@ -0,0 +1,263 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/EncodedImage
#ifndef org_webrtc_EncodedImage_JNI
#define org_webrtc_EncodedImage_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_EncodedImage[];
const char kClassPath_org_webrtc_EncodedImage[] = "org/webrtc/EncodedImage";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_EncodedImage_00024FrameType[];
const char kClassPath_org_webrtc_EncodedImage_00024FrameType[] =
"org/webrtc/EncodedImage$FrameType";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_EncodedImage_clazz(nullptr);
#ifndef org_webrtc_EncodedImage_clazz_defined
#define org_webrtc_EncodedImage_clazz_defined
inline jclass org_webrtc_EncodedImage_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_EncodedImage,
&g_org_webrtc_EncodedImage_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_EncodedImage_00024FrameType_clazz(nullptr);
#ifndef org_webrtc_EncodedImage_00024FrameType_clazz_defined
#define org_webrtc_EncodedImage_00024FrameType_clazz_defined
inline jclass org_webrtc_EncodedImage_00024FrameType_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_EncodedImage_00024FrameType,
&g_org_webrtc_EncodedImage_00024FrameType_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_Constructor8(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_EncodedImage_Constructor(JNIEnv* env, const
jni_zero::JavaRef<jobject>& buffer,
const jni_zero::JavaRef<jobject>& releaseCallback,
JniIntWrapper encodedWidth,
JniIntWrapper encodedHeight,
jlong captureTimeNs,
const jni_zero::JavaRef<jobject>& frameType,
JniIntWrapper rotation,
const jni_zero::JavaRef<jobject>& qp) {
jclass clazz = org_webrtc_EncodedImage_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_EncodedImage_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(Ljava/nio/ByteBuffer;Ljava/lang/Runnable;IIJLorg/webrtc/EncodedImage$FrameType;ILjava/lang/Integer;)V",
&g_org_webrtc_EncodedImage_Constructor8);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, buffer.obj(), releaseCallback.obj(), as_jint(encodedWidth),
as_jint(encodedHeight), captureTimeNs, frameType.obj(), as_jint(rotation), qp.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_getBuffer0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_EncodedImage_getBuffer(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_EncodedImage_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_EncodedImage_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getBuffer",
"()Ljava/nio/ByteBuffer;",
&g_org_webrtc_EncodedImage_getBuffer0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_getCaptureTimeNs0(nullptr);
static jlong Java_EncodedImage_getCaptureTimeNs(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj)
{
jclass clazz = org_webrtc_EncodedImage_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_EncodedImage_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getCaptureTimeNs",
"()J",
&g_org_webrtc_EncodedImage_getCaptureTimeNs0);
jlong ret =
env->CallLongMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_getEncodedHeight0(nullptr);
static jint Java_EncodedImage_getEncodedHeight(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_EncodedImage_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_EncodedImage_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getEncodedHeight",
"()I",
&g_org_webrtc_EncodedImage_getEncodedHeight0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_getEncodedWidth0(nullptr);
static jint Java_EncodedImage_getEncodedWidth(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_EncodedImage_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_EncodedImage_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getEncodedWidth",
"()I",
&g_org_webrtc_EncodedImage_getEncodedWidth0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_getFrameType0(nullptr);
static jint Java_EncodedImage_getFrameType(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_EncodedImage_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_EncodedImage_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getFrameType",
"()I",
&g_org_webrtc_EncodedImage_getFrameType0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_getQp0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_EncodedImage_getQp(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_EncodedImage_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_EncodedImage_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getQp",
"()Ljava/lang/Integer;",
&g_org_webrtc_EncodedImage_getQp0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_getRotation0(nullptr);
static jint Java_EncodedImage_getRotation(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_EncodedImage_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_EncodedImage_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getRotation",
"()I",
&g_org_webrtc_EncodedImage_getRotation0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_EncodedImage_00024FrameType_fromNativeIndex1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_FrameType_fromNativeIndex(JNIEnv* env,
JniIntWrapper nativeIndex) {
jclass clazz = org_webrtc_EncodedImage_00024FrameType_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_EncodedImage_00024FrameType_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_STATIC>(
env,
clazz,
"fromNativeIndex",
"(I)Lorg/webrtc/EncodedImage$FrameType;",
&g_org_webrtc_EncodedImage_00024FrameType_fromNativeIndex1);
jobject ret =
env->CallStaticObjectMethod(clazz,
call_context.base.method_id, as_jint(nativeIndex));
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_EncodedImage_JNI

View file

@ -0,0 +1,59 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/H264Utils
#ifndef org_webrtc_H264Utils_JNI
#define org_webrtc_H264Utils_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_H264Utils[];
const char kClassPath_org_webrtc_H264Utils[] = "org/webrtc/H264Utils";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_H264Utils_clazz(nullptr);
#ifndef org_webrtc_H264Utils_clazz_defined
#define org_webrtc_H264Utils_clazz_defined
inline jclass org_webrtc_H264Utils_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_H264Utils,
&g_org_webrtc_H264Utils_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static jboolean JNI_H264Utils_IsSameH264Profile(JNIEnv* env, const jni_zero::JavaParamRef<jobject>&
params1,
const jni_zero::JavaParamRef<jobject>& params2);
JNI_BOUNDARY_EXPORT jboolean Java_org_webrtc_H264Utils_nativeIsSameH264Profile(
JNIEnv* env,
jclass jcaller,
jobject params1,
jobject params2) {
return JNI_H264Utils_IsSameH264Profile(env, jni_zero::JavaParamRef<jobject>(env, params1),
jni_zero::JavaParamRef<jobject>(env, params2));
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_H264Utils_JNI

View file

@ -0,0 +1,95 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/JavaI420Buffer
#ifndef org_webrtc_JavaI420Buffer_JNI
#define org_webrtc_JavaI420Buffer_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_JavaI420Buffer[];
const char kClassPath_org_webrtc_JavaI420Buffer[] = "org/webrtc/JavaI420Buffer";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_JavaI420Buffer_clazz(nullptr);
#ifndef org_webrtc_JavaI420Buffer_clazz_defined
#define org_webrtc_JavaI420Buffer_clazz_defined
inline jclass org_webrtc_JavaI420Buffer_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_JavaI420Buffer,
&g_org_webrtc_JavaI420Buffer_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static void JNI_JavaI420Buffer_CropAndScaleI420(JNIEnv* env, const jni_zero::JavaParamRef<jobject>&
srcY,
jint srcStrideY,
const jni_zero::JavaParamRef<jobject>& srcU,
jint srcStrideU,
const jni_zero::JavaParamRef<jobject>& srcV,
jint srcStrideV,
jint cropX,
jint cropY,
jint cropWidth,
jint cropHeight,
const jni_zero::JavaParamRef<jobject>& dstY,
jint dstStrideY,
const jni_zero::JavaParamRef<jobject>& dstU,
jint dstStrideU,
const jni_zero::JavaParamRef<jobject>& dstV,
jint dstStrideV,
jint scaleWidth,
jint scaleHeight);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_JavaI420Buffer_nativeCropAndScaleI420(
JNIEnv* env,
jclass jcaller,
jobject srcY,
jint srcStrideY,
jobject srcU,
jint srcStrideU,
jobject srcV,
jint srcStrideV,
jint cropX,
jint cropY,
jint cropWidth,
jint cropHeight,
jobject dstY,
jint dstStrideY,
jobject dstU,
jint dstStrideU,
jobject dstV,
jint dstStrideV,
jint scaleWidth,
jint scaleHeight) {
return JNI_JavaI420Buffer_CropAndScaleI420(env, jni_zero::JavaParamRef<jobject>(env, srcY),
srcStrideY, jni_zero::JavaParamRef<jobject>(env, srcU), srcStrideU,
jni_zero::JavaParamRef<jobject>(env, srcV), srcStrideV, cropX, cropY, cropWidth, cropHeight,
jni_zero::JavaParamRef<jobject>(env, dstY), dstStrideY, jni_zero::JavaParamRef<jobject>(env,
dstU), dstStrideU, jni_zero::JavaParamRef<jobject>(env, dstV), dstStrideV, scaleWidth,
scaleHeight);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_JavaI420Buffer_JNI

View file

@ -0,0 +1,91 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/NV12Buffer
#ifndef org_webrtc_NV12Buffer_JNI
#define org_webrtc_NV12Buffer_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_NV12Buffer[];
const char kClassPath_org_webrtc_NV12Buffer[] = "org/webrtc/NV12Buffer";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_NV12Buffer_clazz(nullptr);
#ifndef org_webrtc_NV12Buffer_clazz_defined
#define org_webrtc_NV12Buffer_clazz_defined
inline jclass org_webrtc_NV12Buffer_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_NV12Buffer,
&g_org_webrtc_NV12Buffer_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static void JNI_NV12Buffer_CropAndScale(JNIEnv* env, jint cropX,
jint cropY,
jint cropWidth,
jint cropHeight,
jint scaleWidth,
jint scaleHeight,
const jni_zero::JavaParamRef<jobject>& src,
jint srcWidth,
jint srcHeight,
jint srcStride,
jint srcSliceHeight,
const jni_zero::JavaParamRef<jobject>& dstY,
jint dstStrideY,
const jni_zero::JavaParamRef<jobject>& dstU,
jint dstStrideU,
const jni_zero::JavaParamRef<jobject>& dstV,
jint dstStrideV);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_NV12Buffer_nativeCropAndScale(
JNIEnv* env,
jclass jcaller,
jint cropX,
jint cropY,
jint cropWidth,
jint cropHeight,
jint scaleWidth,
jint scaleHeight,
jobject src,
jint srcWidth,
jint srcHeight,
jint srcStride,
jint srcSliceHeight,
jobject dstY,
jint dstStrideY,
jobject dstU,
jint dstStrideU,
jobject dstV,
jint dstStrideV) {
return JNI_NV12Buffer_CropAndScale(env, cropX, cropY, cropWidth, cropHeight, scaleWidth,
scaleHeight, jni_zero::JavaParamRef<jobject>(env, src), srcWidth, srcHeight, srcStride,
srcSliceHeight, jni_zero::JavaParamRef<jobject>(env, dstY), dstStrideY,
jni_zero::JavaParamRef<jobject>(env, dstU), dstStrideU, jni_zero::JavaParamRef<jobject>(env,
dstV), dstStrideV);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_NV12Buffer_JNI

View file

@ -0,0 +1,86 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/NV21Buffer
#ifndef org_webrtc_NV21Buffer_JNI
#define org_webrtc_NV21Buffer_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_NV21Buffer[];
const char kClassPath_org_webrtc_NV21Buffer[] = "org/webrtc/NV21Buffer";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_NV21Buffer_clazz(nullptr);
#ifndef org_webrtc_NV21Buffer_clazz_defined
#define org_webrtc_NV21Buffer_clazz_defined
inline jclass org_webrtc_NV21Buffer_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_NV21Buffer,
&g_org_webrtc_NV21Buffer_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static void JNI_NV21Buffer_CropAndScale(JNIEnv* env, jint cropX,
jint cropY,
jint cropWidth,
jint cropHeight,
jint scaleWidth,
jint scaleHeight,
const jni_zero::JavaParamRef<jbyteArray>& src,
jint srcWidth,
jint srcHeight,
const jni_zero::JavaParamRef<jobject>& dstY,
jint dstStrideY,
const jni_zero::JavaParamRef<jobject>& dstU,
jint dstStrideU,
const jni_zero::JavaParamRef<jobject>& dstV,
jint dstStrideV);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_NV21Buffer_nativeCropAndScale(
JNIEnv* env,
jclass jcaller,
jint cropX,
jint cropY,
jint cropWidth,
jint cropHeight,
jint scaleWidth,
jint scaleHeight,
jbyteArray src,
jint srcWidth,
jint srcHeight,
jobject dstY,
jint dstStrideY,
jobject dstU,
jint dstStrideU,
jobject dstV,
jint dstStrideV) {
return JNI_NV21Buffer_CropAndScale(env, cropX, cropY, cropWidth, cropHeight, scaleWidth,
scaleHeight, jni_zero::JavaParamRef<jbyteArray>(env, src), srcWidth, srcHeight,
jni_zero::JavaParamRef<jobject>(env, dstY), dstStrideY, jni_zero::JavaParamRef<jobject>(env,
dstU), dstStrideU, jni_zero::JavaParamRef<jobject>(env, dstV), dstStrideV);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_NV21Buffer_JNI

View file

@ -0,0 +1,151 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/NativeAndroidVideoTrackSource
#ifndef org_webrtc_NativeAndroidVideoTrackSource_JNI
#define org_webrtc_NativeAndroidVideoTrackSource_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_NativeAndroidVideoTrackSource[];
const char kClassPath_org_webrtc_NativeAndroidVideoTrackSource[] =
"org/webrtc/NativeAndroidVideoTrackSource";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_NativeAndroidVideoTrackSource_clazz(nullptr);
#ifndef org_webrtc_NativeAndroidVideoTrackSource_clazz_defined
#define org_webrtc_NativeAndroidVideoTrackSource_clazz_defined
inline jclass org_webrtc_NativeAndroidVideoTrackSource_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_NativeAndroidVideoTrackSource,
&g_org_webrtc_NativeAndroidVideoTrackSource_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
JNI_BOUNDARY_EXPORT jobject Java_org_webrtc_NativeAndroidVideoTrackSource_nativeAdaptFrame(
JNIEnv* env,
jclass jcaller,
jlong nativeAndroidVideoTrackSource,
jint width,
jint height,
jint rotation,
jlong timestampNs) {
AndroidVideoTrackSource* native =
reinterpret_cast<AndroidVideoTrackSource*>(nativeAndroidVideoTrackSource);
CHECK_NATIVE_PTR(env, jcaller, native, "AdaptFrame", nullptr);
return native->AdaptFrame(env, width, height, rotation, timestampNs).Release();
}
JNI_BOUNDARY_EXPORT void Java_org_webrtc_NativeAndroidVideoTrackSource_nativeAdaptOutputFormat(
JNIEnv* env,
jclass jcaller,
jlong nativeAndroidVideoTrackSource,
jint landscapeWidth,
jint landscapeHeight,
jobject maxLandscapePixelCount,
jint portraitWidth,
jint portraitHeight,
jobject maxPortraitPixelCount,
jobject maxFps) {
AndroidVideoTrackSource* native =
reinterpret_cast<AndroidVideoTrackSource*>(nativeAndroidVideoTrackSource);
CHECK_NATIVE_PTR(env, jcaller, native, "AdaptOutputFormat");
return native->AdaptOutputFormat(env, landscapeWidth, landscapeHeight,
jni_zero::JavaParamRef<jobject>(env, maxLandscapePixelCount), portraitWidth, portraitHeight,
jni_zero::JavaParamRef<jobject>(env, maxPortraitPixelCount),
jni_zero::JavaParamRef<jobject>(env, maxFps));
}
JNI_BOUNDARY_EXPORT void Java_org_webrtc_NativeAndroidVideoTrackSource_nativeOnFrameCaptured(
JNIEnv* env,
jclass jcaller,
jlong nativeAndroidVideoTrackSource,
jint rotation,
jlong timestampNs,
jobject buffer) {
AndroidVideoTrackSource* native =
reinterpret_cast<AndroidVideoTrackSource*>(nativeAndroidVideoTrackSource);
CHECK_NATIVE_PTR(env, jcaller, native, "OnFrameCaptured");
return native->OnFrameCaptured(env, rotation, timestampNs, jni_zero::JavaParamRef<jobject>(env,
buffer));
}
JNI_BOUNDARY_EXPORT void Java_org_webrtc_NativeAndroidVideoTrackSource_nativeSetIsScreencast(
JNIEnv* env,
jclass jcaller,
jlong nativeAndroidVideoTrackSource,
jboolean isScreencast) {
AndroidVideoTrackSource* native =
reinterpret_cast<AndroidVideoTrackSource*>(nativeAndroidVideoTrackSource);
CHECK_NATIVE_PTR(env, jcaller, native, "SetIsScreencast");
return native->SetIsScreencast(env, isScreencast);
}
JNI_BOUNDARY_EXPORT void Java_org_webrtc_NativeAndroidVideoTrackSource_nativeSetState(
JNIEnv* env,
jclass jcaller,
jlong nativeAndroidVideoTrackSource,
jboolean isLive) {
AndroidVideoTrackSource* native =
reinterpret_cast<AndroidVideoTrackSource*>(nativeAndroidVideoTrackSource);
CHECK_NATIVE_PTR(env, jcaller, native, "SetState");
return native->SetState(env, isLive);
}
static std::atomic<jmethodID>
g_org_webrtc_NativeAndroidVideoTrackSource_createFrameAdaptationParameters8(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject>
Java_NativeAndroidVideoTrackSource_createFrameAdaptationParameters(JNIEnv* env, JniIntWrapper
cropX,
JniIntWrapper cropY,
JniIntWrapper cropWidth,
JniIntWrapper cropHeight,
JniIntWrapper scaleWidth,
JniIntWrapper scaleHeight,
jlong timestampNs,
jboolean drop) {
jclass clazz = org_webrtc_NativeAndroidVideoTrackSource_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_NativeAndroidVideoTrackSource_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_STATIC>(
env,
clazz,
"createFrameAdaptationParameters",
"(IIIIIIJZ)Lorg/webrtc/VideoProcessor$FrameAdaptationParameters;",
&g_org_webrtc_NativeAndroidVideoTrackSource_createFrameAdaptationParameters8);
jobject ret =
env->CallStaticObjectMethod(clazz,
call_context.base.method_id, as_jint(cropX), as_jint(cropY), as_jint(cropWidth),
as_jint(cropHeight), as_jint(scaleWidth), as_jint(scaleHeight), timestampNs, drop);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_NativeAndroidVideoTrackSource_JNI

View file

@ -0,0 +1,69 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/NativeCapturerObserver
#ifndef org_webrtc_NativeCapturerObserver_JNI
#define org_webrtc_NativeCapturerObserver_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_NativeCapturerObserver[];
const char kClassPath_org_webrtc_NativeCapturerObserver[] = "org/webrtc/NativeCapturerObserver";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_NativeCapturerObserver_clazz(nullptr);
#ifndef org_webrtc_NativeCapturerObserver_clazz_defined
#define org_webrtc_NativeCapturerObserver_clazz_defined
inline jclass org_webrtc_NativeCapturerObserver_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_NativeCapturerObserver,
&g_org_webrtc_NativeCapturerObserver_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_NativeCapturerObserver_Constructor1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_NativeCapturerObserver_Constructor(JNIEnv* env,
jlong nativeSource) {
jclass clazz = org_webrtc_NativeCapturerObserver_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_NativeCapturerObserver_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(J)V",
&g_org_webrtc_NativeCapturerObserver_Constructor1);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, nativeSource);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_NativeCapturerObserver_JNI

View file

@ -0,0 +1,82 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/TimestampAligner
#ifndef org_webrtc_TimestampAligner_JNI
#define org_webrtc_TimestampAligner_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_TimestampAligner[];
const char kClassPath_org_webrtc_TimestampAligner[] = "org/webrtc/TimestampAligner";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_TimestampAligner_clazz(nullptr);
#ifndef org_webrtc_TimestampAligner_clazz_defined
#define org_webrtc_TimestampAligner_clazz_defined
inline jclass org_webrtc_TimestampAligner_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_TimestampAligner,
&g_org_webrtc_TimestampAligner_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static jlong JNI_TimestampAligner_CreateTimestampAligner(JNIEnv* env);
JNI_BOUNDARY_EXPORT jlong Java_org_webrtc_TimestampAligner_nativeCreateTimestampAligner(
JNIEnv* env,
jclass jcaller) {
return JNI_TimestampAligner_CreateTimestampAligner(env);
}
static void JNI_TimestampAligner_ReleaseTimestampAligner(JNIEnv* env, jlong timestampAligner);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_TimestampAligner_nativeReleaseTimestampAligner(
JNIEnv* env,
jclass jcaller,
jlong timestampAligner) {
return JNI_TimestampAligner_ReleaseTimestampAligner(env, timestampAligner);
}
static jlong JNI_TimestampAligner_RtcTimeNanos(JNIEnv* env);
JNI_BOUNDARY_EXPORT jlong Java_org_webrtc_TimestampAligner_nativeRtcTimeNanos(
JNIEnv* env,
jclass jcaller) {
return JNI_TimestampAligner_RtcTimeNanos(env);
}
static jlong JNI_TimestampAligner_TranslateTimestamp(JNIEnv* env, jlong timestampAligner,
jlong cameraTimeNs);
JNI_BOUNDARY_EXPORT jlong Java_org_webrtc_TimestampAligner_nativeTranslateTimestamp(
JNIEnv* env,
jclass jcaller,
jlong timestampAligner,
jlong cameraTimeNs) {
return JNI_TimestampAligner_TranslateTimestamp(env, timestampAligner, cameraTimeNs);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_TimestampAligner_JNI

View file

@ -0,0 +1,113 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoCodecInfo
#ifndef org_webrtc_VideoCodecInfo_JNI
#define org_webrtc_VideoCodecInfo_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoCodecInfo[];
const char kClassPath_org_webrtc_VideoCodecInfo[] = "org/webrtc/VideoCodecInfo";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoCodecInfo_clazz(nullptr);
#ifndef org_webrtc_VideoCodecInfo_clazz_defined
#define org_webrtc_VideoCodecInfo_clazz_defined
inline jclass org_webrtc_VideoCodecInfo_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoCodecInfo,
&g_org_webrtc_VideoCodecInfo_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_VideoCodecInfo_Constructor2(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoCodecInfo_Constructor(JNIEnv* env, const
jni_zero::JavaRef<jstring>& name,
const jni_zero::JavaRef<jobject>& params) {
jclass clazz = org_webrtc_VideoCodecInfo_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoCodecInfo_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(Ljava/lang/String;Ljava/util/Map;)V",
&g_org_webrtc_VideoCodecInfo_Constructor2);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, name.obj(), params.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoCodecInfo_getName0(nullptr);
static jni_zero::ScopedJavaLocalRef<jstring> Java_VideoCodecInfo_getName(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoCodecInfo_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoCodecInfo_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getName",
"()Ljava/lang/String;",
&g_org_webrtc_VideoCodecInfo_getName0);
jstring ret =
static_cast<jstring>(env->CallObjectMethod(obj.obj(),
call_context.base.method_id));
return jni_zero::ScopedJavaLocalRef<jstring>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoCodecInfo_getParams0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoCodecInfo_getParams(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoCodecInfo_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoCodecInfo_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getParams",
"()Ljava/util/Map;",
&g_org_webrtc_VideoCodecInfo_getParams0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoCodecInfo_JNI

View file

@ -0,0 +1,67 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoCodecStatus
#ifndef org_webrtc_VideoCodecStatus_JNI
#define org_webrtc_VideoCodecStatus_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoCodecStatus[];
const char kClassPath_org_webrtc_VideoCodecStatus[] = "org/webrtc/VideoCodecStatus";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoCodecStatus_clazz(nullptr);
#ifndef org_webrtc_VideoCodecStatus_clazz_defined
#define org_webrtc_VideoCodecStatus_clazz_defined
inline jclass org_webrtc_VideoCodecStatus_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoCodecStatus,
&g_org_webrtc_VideoCodecStatus_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_VideoCodecStatus_getNumber0(nullptr);
static jint Java_VideoCodecStatus_getNumber(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoCodecStatus_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoCodecStatus_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getNumber",
"()I",
&g_org_webrtc_VideoCodecStatus_getNumber0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoCodecStatus_JNI

View file

@ -0,0 +1,91 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoDecoderFactory
#ifndef org_webrtc_VideoDecoderFactory_JNI
#define org_webrtc_VideoDecoderFactory_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoDecoderFactory[];
const char kClassPath_org_webrtc_VideoDecoderFactory[] = "org/webrtc/VideoDecoderFactory";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoDecoderFactory_clazz(nullptr);
#ifndef org_webrtc_VideoDecoderFactory_clazz_defined
#define org_webrtc_VideoDecoderFactory_clazz_defined
inline jclass org_webrtc_VideoDecoderFactory_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoDecoderFactory,
&g_org_webrtc_VideoDecoderFactory_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_VideoDecoderFactory_createDecoder1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoDecoderFactory_createDecoder(JNIEnv* env,
const jni_zero::JavaRef<jobject>& obj, const jni_zero::JavaRef<jobject>& info) {
jclass clazz = org_webrtc_VideoDecoderFactory_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoDecoderFactory_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"createDecoder",
"(Lorg/webrtc/VideoCodecInfo;)Lorg/webrtc/VideoDecoder;",
&g_org_webrtc_VideoDecoderFactory_createDecoder1);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, info.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoDecoderFactory_getSupportedCodecs0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobjectArray>
Java_VideoDecoderFactory_getSupportedCodecs(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj)
{
jclass clazz = org_webrtc_VideoDecoderFactory_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoDecoderFactory_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getSupportedCodecs",
"()[Lorg/webrtc/VideoCodecInfo;",
&g_org_webrtc_VideoDecoderFactory_getSupportedCodecs0);
jobjectArray ret =
static_cast<jobjectArray>(env->CallObjectMethod(obj.obj(),
call_context.base.method_id));
return jni_zero::ScopedJavaLocalRef<jobjectArray>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoDecoderFactory_JNI

View file

@ -0,0 +1,61 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoDecoderFallback
#ifndef org_webrtc_VideoDecoderFallback_JNI
#define org_webrtc_VideoDecoderFallback_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoDecoderFallback[];
const char kClassPath_org_webrtc_VideoDecoderFallback[] = "org/webrtc/VideoDecoderFallback";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoDecoderFallback_clazz(nullptr);
#ifndef org_webrtc_VideoDecoderFallback_clazz_defined
#define org_webrtc_VideoDecoderFallback_clazz_defined
inline jclass org_webrtc_VideoDecoderFallback_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoDecoderFallback,
&g_org_webrtc_VideoDecoderFallback_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static jlong JNI_VideoDecoderFallback_Create(JNIEnv* env, jlong webrtcEnvRef,
const jni_zero::JavaParamRef<jobject>& fallback,
const jni_zero::JavaParamRef<jobject>& primary);
JNI_BOUNDARY_EXPORT jlong Java_org_webrtc_VideoDecoderFallback_nativeCreate(
JNIEnv* env,
jclass jcaller,
jlong webrtcEnvRef,
jobject fallback,
jobject primary) {
return JNI_VideoDecoderFallback_Create(env, webrtcEnvRef, jni_zero::JavaParamRef<jobject>(env,
fallback), jni_zero::JavaParamRef<jobject>(env, primary));
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoDecoderFallback_JNI

View file

@ -0,0 +1,81 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoDecoderWrapper
#ifndef org_webrtc_VideoDecoderWrapper_JNI
#define org_webrtc_VideoDecoderWrapper_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoDecoderWrapper[];
const char kClassPath_org_webrtc_VideoDecoderWrapper[] = "org/webrtc/VideoDecoderWrapper";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoDecoderWrapper_clazz(nullptr);
#ifndef org_webrtc_VideoDecoderWrapper_clazz_defined
#define org_webrtc_VideoDecoderWrapper_clazz_defined
inline jclass org_webrtc_VideoDecoderWrapper_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoDecoderWrapper,
&g_org_webrtc_VideoDecoderWrapper_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
JNI_BOUNDARY_EXPORT void Java_org_webrtc_VideoDecoderWrapper_nativeOnDecodedFrame(
JNIEnv* env,
jclass jcaller,
jlong nativeVideoDecoderWrapper,
jobject frame,
jobject decodeTimeMs,
jobject qp) {
VideoDecoderWrapper* native = reinterpret_cast<VideoDecoderWrapper*>(nativeVideoDecoderWrapper);
CHECK_NATIVE_PTR(env, jcaller, native, "OnDecodedFrame");
return native->OnDecodedFrame(env, jni_zero::JavaParamRef<jobject>(env, frame),
jni_zero::JavaParamRef<jobject>(env, decodeTimeMs), jni_zero::JavaParamRef<jobject>(env, qp));
}
static std::atomic<jmethodID> g_org_webrtc_VideoDecoderWrapper_createDecoderCallback1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoDecoderWrapper_createDecoderCallback(JNIEnv*
env, jlong nativeDecoder) {
jclass clazz = org_webrtc_VideoDecoderWrapper_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoDecoderWrapper_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_STATIC>(
env,
clazz,
"createDecoderCallback",
"(J)Lorg/webrtc/VideoDecoder$Callback;",
&g_org_webrtc_VideoDecoderWrapper_createDecoderCallback1);
jobject ret =
env->CallStaticObjectMethod(clazz,
call_context.base.method_id, nativeDecoder);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoDecoderWrapper_JNI

View file

@ -0,0 +1,196 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoDecoder
#ifndef org_webrtc_VideoDecoder_JNI
#define org_webrtc_VideoDecoder_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoDecoder[];
const char kClassPath_org_webrtc_VideoDecoder[] = "org/webrtc/VideoDecoder";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoDecoder_00024Settings[];
const char kClassPath_org_webrtc_VideoDecoder_00024Settings[] = "org/webrtc/VideoDecoder$Settings";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoDecoder_clazz(nullptr);
#ifndef org_webrtc_VideoDecoder_clazz_defined
#define org_webrtc_VideoDecoder_clazz_defined
inline jclass org_webrtc_VideoDecoder_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoDecoder,
&g_org_webrtc_VideoDecoder_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoDecoder_00024Settings_clazz(nullptr);
#ifndef org_webrtc_VideoDecoder_00024Settings_clazz_defined
#define org_webrtc_VideoDecoder_00024Settings_clazz_defined
inline jclass org_webrtc_VideoDecoder_00024Settings_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoDecoder_00024Settings,
&g_org_webrtc_VideoDecoder_00024Settings_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_VideoDecoder_createNative1(nullptr);
static jlong Java_VideoDecoder_createNative(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj,
jlong webrtcEnvRef) {
jclass clazz = org_webrtc_VideoDecoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoDecoder_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"createNative",
"(J)J",
&g_org_webrtc_VideoDecoder_createNative1);
jlong ret =
env->CallLongMethod(obj.obj(),
call_context.base.method_id, webrtcEnvRef);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoDecoder_decode2(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoDecoder_decode(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj, const jni_zero::JavaRef<jobject>& frame,
const jni_zero::JavaRef<jobject>& info) {
jclass clazz = org_webrtc_VideoDecoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoDecoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"decode",
"(Lorg/webrtc/EncodedImage;Lorg/webrtc/VideoDecoder$DecodeInfo;)Lorg/webrtc/VideoCodecStatus;",
&g_org_webrtc_VideoDecoder_decode2);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, frame.obj(), info.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoDecoder_getImplementationName0(nullptr);
static jni_zero::ScopedJavaLocalRef<jstring> Java_VideoDecoder_getImplementationName(JNIEnv* env,
const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoDecoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoDecoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getImplementationName",
"()Ljava/lang/String;",
&g_org_webrtc_VideoDecoder_getImplementationName0);
jstring ret =
static_cast<jstring>(env->CallObjectMethod(obj.obj(),
call_context.base.method_id));
return jni_zero::ScopedJavaLocalRef<jstring>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoDecoder_initDecode2(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoDecoder_initDecode(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj, const jni_zero::JavaRef<jobject>& settings,
const jni_zero::JavaRef<jobject>& decodeCallback) {
jclass clazz = org_webrtc_VideoDecoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoDecoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"initDecode",
"(Lorg/webrtc/VideoDecoder$Settings;Lorg/webrtc/VideoDecoder$Callback;)Lorg/webrtc/VideoCodecStatus;",
&g_org_webrtc_VideoDecoder_initDecode2);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, settings.obj(), decodeCallback.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoDecoder_release0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoDecoder_release(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoDecoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoDecoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"release",
"()Lorg/webrtc/VideoCodecStatus;",
&g_org_webrtc_VideoDecoder_release0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoDecoder_00024Settings_Constructor3(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_Settings_Constructor(JNIEnv* env, JniIntWrapper
numberOfCores,
JniIntWrapper width,
JniIntWrapper height) {
jclass clazz = org_webrtc_VideoDecoder_00024Settings_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoDecoder_00024Settings_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(III)V",
&g_org_webrtc_VideoDecoder_00024Settings_Constructor3);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, as_jint(numberOfCores), as_jint(width), as_jint(height));
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoDecoder_JNI

View file

@ -0,0 +1,243 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoEncoderFactory
#ifndef org_webrtc_VideoEncoderFactory_JNI
#define org_webrtc_VideoEncoderFactory_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoEncoderFactory[];
const char kClassPath_org_webrtc_VideoEncoderFactory[] = "org/webrtc/VideoEncoderFactory";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector[];
const char kClassPath_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector[] =
"org/webrtc/VideoEncoderFactory$VideoEncoderSelector";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoEncoderFactory_clazz(nullptr);
#ifndef org_webrtc_VideoEncoderFactory_clazz_defined
#define org_webrtc_VideoEncoderFactory_clazz_defined
inline jclass org_webrtc_VideoEncoderFactory_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoderFactory,
&g_org_webrtc_VideoEncoderFactory_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(nullptr);
#ifndef org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz_defined
#define org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz_defined
inline jclass org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env,
kClassPath_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector,
&g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_VideoEncoderFactory_createEncoder1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoderFactory_createEncoder(JNIEnv* env,
const jni_zero::JavaRef<jobject>& obj, const jni_zero::JavaRef<jobject>& info) {
jclass clazz = org_webrtc_VideoEncoderFactory_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoderFactory_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"createEncoder",
"(Lorg/webrtc/VideoCodecInfo;)Lorg/webrtc/VideoEncoder;",
&g_org_webrtc_VideoEncoderFactory_createEncoder1);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, info.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoderFactory_getEncoderSelector0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoderFactory_getEncoderSelector(JNIEnv*
env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoderFactory_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoderFactory_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getEncoderSelector",
"()Lorg/webrtc/VideoEncoderFactory$VideoEncoderSelector;",
&g_org_webrtc_VideoEncoderFactory_getEncoderSelector0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoderFactory_getImplementations0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobjectArray>
Java_VideoEncoderFactory_getImplementations(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj)
{
jclass clazz = org_webrtc_VideoEncoderFactory_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoderFactory_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getImplementations",
"()[Lorg/webrtc/VideoCodecInfo;",
&g_org_webrtc_VideoEncoderFactory_getImplementations0);
jobjectArray ret =
static_cast<jobjectArray>(env->CallObjectMethod(obj.obj(),
call_context.base.method_id));
return jni_zero::ScopedJavaLocalRef<jobjectArray>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoderFactory_getSupportedCodecs0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobjectArray>
Java_VideoEncoderFactory_getSupportedCodecs(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj)
{
jclass clazz = org_webrtc_VideoEncoderFactory_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoderFactory_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getSupportedCodecs",
"()[Lorg/webrtc/VideoCodecInfo;",
&g_org_webrtc_VideoEncoderFactory_getSupportedCodecs0);
jobjectArray ret =
static_cast<jobjectArray>(env->CallObjectMethod(obj.obj(),
call_context.base.method_id));
return jni_zero::ScopedJavaLocalRef<jobjectArray>(env, ret);
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_onAvailableBitrate1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoderSelector_onAvailableBitrate(JNIEnv*
env, const jni_zero::JavaRef<jobject>& obj, JniIntWrapper kbps) {
jclass clazz = org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"onAvailableBitrate",
"(I)Lorg/webrtc/VideoCodecInfo;",
&g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_onAvailableBitrate1);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, as_jint(kbps));
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_onCurrentEncoder1(nullptr);
static void Java_VideoEncoderSelector_onCurrentEncoder(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj, const jni_zero::JavaRef<jobject>& info) {
jclass clazz = org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(env));
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"onCurrentEncoder",
"(Lorg/webrtc/VideoCodecInfo;)V",
&g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_onCurrentEncoder1);
env->CallVoidMethod(obj.obj(),
call_context.base.method_id, info.obj());
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_onEncoderBroken0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoderSelector_onEncoderBroken(JNIEnv* env,
const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"onEncoderBroken",
"()Lorg/webrtc/VideoCodecInfo;",
&g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_onEncoderBroken0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_onResolutionChange2(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoderSelector_onResolutionChange(JNIEnv*
env, const jni_zero::JavaRef<jobject>& obj, JniIntWrapper widht,
JniIntWrapper height) {
jclass clazz = org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"onResolutionChange",
"(II)Lorg/webrtc/VideoCodecInfo;",
&g_org_webrtc_VideoEncoderFactory_00024VideoEncoderSelector_onResolutionChange2);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, as_jint(widht), as_jint(height));
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoEncoderFactory_JNI

View file

@ -0,0 +1,60 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoEncoderFallback
#ifndef org_webrtc_VideoEncoderFallback_JNI
#define org_webrtc_VideoEncoderFallback_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoEncoderFallback[];
const char kClassPath_org_webrtc_VideoEncoderFallback[] = "org/webrtc/VideoEncoderFallback";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoderFallback_clazz(nullptr);
#ifndef org_webrtc_VideoEncoderFallback_clazz_defined
#define org_webrtc_VideoEncoderFallback_clazz_defined
inline jclass org_webrtc_VideoEncoderFallback_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoderFallback,
&g_org_webrtc_VideoEncoderFallback_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static jlong JNI_VideoEncoderFallback_CreateEncoder(JNIEnv* env, const
jni_zero::JavaParamRef<jobject>& fallback,
const jni_zero::JavaParamRef<jobject>& primary);
JNI_BOUNDARY_EXPORT jlong Java_org_webrtc_VideoEncoderFallback_nativeCreateEncoder(
JNIEnv* env,
jclass jcaller,
jobject fallback,
jobject primary) {
return JNI_VideoEncoderFallback_CreateEncoder(env, jni_zero::JavaParamRef<jobject>(env, fallback),
jni_zero::JavaParamRef<jobject>(env, primary));
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoEncoderFallback_JNI

View file

@ -0,0 +1,144 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoEncoderWrapper
#ifndef org_webrtc_VideoEncoderWrapper_JNI
#define org_webrtc_VideoEncoderWrapper_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoEncoderWrapper[];
const char kClassPath_org_webrtc_VideoEncoderWrapper[] = "org/webrtc/VideoEncoderWrapper";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoEncoderWrapper_clazz(nullptr);
#ifndef org_webrtc_VideoEncoderWrapper_clazz_defined
#define org_webrtc_VideoEncoderWrapper_clazz_defined
inline jclass org_webrtc_VideoEncoderWrapper_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoderWrapper,
&g_org_webrtc_VideoEncoderWrapper_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
JNI_BOUNDARY_EXPORT void Java_org_webrtc_VideoEncoderWrapper_nativeOnEncodedFrame(
JNIEnv* env,
jclass jcaller,
jlong nativeVideoEncoderWrapper,
jobject frame) {
VideoEncoderWrapper* native = reinterpret_cast<VideoEncoderWrapper*>(nativeVideoEncoderWrapper);
CHECK_NATIVE_PTR(env, jcaller, native, "OnEncodedFrame");
return native->OnEncodedFrame(env, jni_zero::JavaParamRef<jobject>(env, frame));
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoderWrapper_createEncoderCallback1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoderWrapper_createEncoderCallback(JNIEnv*
env, jlong nativeEncoder) {
jclass clazz = org_webrtc_VideoEncoderWrapper_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoderWrapper_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_STATIC>(
env,
clazz,
"createEncoderCallback",
"(J)Lorg/webrtc/VideoEncoder$Callback;",
&g_org_webrtc_VideoEncoderWrapper_createEncoderCallback1);
jobject ret =
env->CallStaticObjectMethod(clazz,
call_context.base.method_id, nativeEncoder);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoderWrapper_getScalingSettingsHigh1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoderWrapper_getScalingSettingsHigh(JNIEnv*
env, const jni_zero::JavaRef<jobject>& scalingSettings) {
jclass clazz = org_webrtc_VideoEncoderWrapper_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoderWrapper_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_STATIC>(
env,
clazz,
"getScalingSettingsHigh",
"(Lorg/webrtc/VideoEncoder$ScalingSettings;)Ljava/lang/Integer;",
&g_org_webrtc_VideoEncoderWrapper_getScalingSettingsHigh1);
jobject ret =
env->CallStaticObjectMethod(clazz,
call_context.base.method_id, scalingSettings.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoderWrapper_getScalingSettingsLow1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoderWrapper_getScalingSettingsLow(JNIEnv*
env, const jni_zero::JavaRef<jobject>& scalingSettings) {
jclass clazz = org_webrtc_VideoEncoderWrapper_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoderWrapper_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_STATIC>(
env,
clazz,
"getScalingSettingsLow",
"(Lorg/webrtc/VideoEncoder$ScalingSettings;)Ljava/lang/Integer;",
&g_org_webrtc_VideoEncoderWrapper_getScalingSettingsLow1);
jobject ret =
env->CallStaticObjectMethod(clazz,
call_context.base.method_id, scalingSettings.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoderWrapper_getScalingSettingsOn1(nullptr);
static jboolean Java_VideoEncoderWrapper_getScalingSettingsOn(JNIEnv* env, const
jni_zero::JavaRef<jobject>& scalingSettings) {
jclass clazz = org_webrtc_VideoEncoderWrapper_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoderWrapper_clazz(env), false);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_STATIC>(
env,
clazz,
"getScalingSettingsOn",
"(Lorg/webrtc/VideoEncoder$ScalingSettings;)Z",
&g_org_webrtc_VideoEncoderWrapper_getScalingSettingsOn1);
jboolean ret =
env->CallStaticBooleanMethod(clazz,
call_context.base.method_id, scalingSettings.obj());
return ret;
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoEncoderWrapper_JNI

View file

@ -0,0 +1,634 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoEncoder
#ifndef org_webrtc_VideoEncoder_JNI
#define org_webrtc_VideoEncoder_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoEncoder[];
const char kClassPath_org_webrtc_VideoEncoder[] = "org/webrtc/VideoEncoder";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoEncoder_00024BitrateAllocation[];
const char kClassPath_org_webrtc_VideoEncoder_00024BitrateAllocation[] =
"org/webrtc/VideoEncoder$BitrateAllocation";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoEncoder_00024Capabilities[];
const char kClassPath_org_webrtc_VideoEncoder_00024Capabilities[] =
"org/webrtc/VideoEncoder$Capabilities";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoEncoder_00024EncodeInfo[];
const char kClassPath_org_webrtc_VideoEncoder_00024EncodeInfo[] =
"org/webrtc/VideoEncoder$EncodeInfo";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoEncoder_00024EncoderInfo[];
const char kClassPath_org_webrtc_VideoEncoder_00024EncoderInfo[] =
"org/webrtc/VideoEncoder$EncoderInfo";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoEncoder_00024RateControlParameters[];
const char kClassPath_org_webrtc_VideoEncoder_00024RateControlParameters[] =
"org/webrtc/VideoEncoder$RateControlParameters";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits[];
const char kClassPath_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits[] =
"org/webrtc/VideoEncoder$ResolutionBitrateLimits";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoEncoder_00024Settings[];
const char kClassPath_org_webrtc_VideoEncoder_00024Settings[] = "org/webrtc/VideoEncoder$Settings";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoEncoder_clazz(nullptr);
#ifndef org_webrtc_VideoEncoder_clazz_defined
#define org_webrtc_VideoEncoder_clazz_defined
inline jclass org_webrtc_VideoEncoder_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoder,
&g_org_webrtc_VideoEncoder_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoder_00024BitrateAllocation_clazz(nullptr);
#ifndef org_webrtc_VideoEncoder_00024BitrateAllocation_clazz_defined
#define org_webrtc_VideoEncoder_00024BitrateAllocation_clazz_defined
inline jclass org_webrtc_VideoEncoder_00024BitrateAllocation_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoder_00024BitrateAllocation,
&g_org_webrtc_VideoEncoder_00024BitrateAllocation_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoder_00024Capabilities_clazz(nullptr);
#ifndef org_webrtc_VideoEncoder_00024Capabilities_clazz_defined
#define org_webrtc_VideoEncoder_00024Capabilities_clazz_defined
inline jclass org_webrtc_VideoEncoder_00024Capabilities_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoder_00024Capabilities,
&g_org_webrtc_VideoEncoder_00024Capabilities_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoder_00024EncodeInfo_clazz(nullptr);
#ifndef org_webrtc_VideoEncoder_00024EncodeInfo_clazz_defined
#define org_webrtc_VideoEncoder_00024EncodeInfo_clazz_defined
inline jclass org_webrtc_VideoEncoder_00024EncodeInfo_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoder_00024EncodeInfo,
&g_org_webrtc_VideoEncoder_00024EncodeInfo_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoder_00024EncoderInfo_clazz(nullptr);
#ifndef org_webrtc_VideoEncoder_00024EncoderInfo_clazz_defined
#define org_webrtc_VideoEncoder_00024EncoderInfo_clazz_defined
inline jclass org_webrtc_VideoEncoder_00024EncoderInfo_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoder_00024EncoderInfo,
&g_org_webrtc_VideoEncoder_00024EncoderInfo_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoder_00024RateControlParameters_clazz(nullptr);
#ifndef org_webrtc_VideoEncoder_00024RateControlParameters_clazz_defined
#define org_webrtc_VideoEncoder_00024RateControlParameters_clazz_defined
inline jclass org_webrtc_VideoEncoder_00024RateControlParameters_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoder_00024RateControlParameters,
&g_org_webrtc_VideoEncoder_00024RateControlParameters_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(nullptr);
#ifndef org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz_defined
#define org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz_defined
inline jclass org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env,
kClassPath_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits,
&g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoEncoder_00024Settings_clazz(nullptr);
#ifndef org_webrtc_VideoEncoder_00024Settings_clazz_defined
#define org_webrtc_VideoEncoder_00024Settings_clazz_defined
inline jclass org_webrtc_VideoEncoder_00024Settings_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoEncoder_00024Settings,
&g_org_webrtc_VideoEncoder_00024Settings_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_createNativeVideoEncoder0(nullptr);
static jlong Java_VideoEncoder_createNativeVideoEncoder(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"createNativeVideoEncoder",
"()J",
&g_org_webrtc_VideoEncoder_createNativeVideoEncoder0);
jlong ret =
env->CallLongMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_encode2(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoder_encode(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj, const jni_zero::JavaRef<jobject>& frame,
const jni_zero::JavaRef<jobject>& info) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"encode",
"(Lorg/webrtc/VideoFrame;Lorg/webrtc/VideoEncoder$EncodeInfo;)Lorg/webrtc/VideoCodecStatus;",
&g_org_webrtc_VideoEncoder_encode2);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, frame.obj(), info.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_getEncoderInfo0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoder_getEncoderInfo(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getEncoderInfo",
"()Lorg/webrtc/VideoEncoder$EncoderInfo;",
&g_org_webrtc_VideoEncoder_getEncoderInfo0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_getImplementationName0(nullptr);
static jni_zero::ScopedJavaLocalRef<jstring> Java_VideoEncoder_getImplementationName(JNIEnv* env,
const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getImplementationName",
"()Ljava/lang/String;",
&g_org_webrtc_VideoEncoder_getImplementationName0);
jstring ret =
static_cast<jstring>(env->CallObjectMethod(obj.obj(),
call_context.base.method_id));
return jni_zero::ScopedJavaLocalRef<jstring>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_getResolutionBitrateLimits0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobjectArray>
Java_VideoEncoder_getResolutionBitrateLimits(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj)
{
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getResolutionBitrateLimits",
"()[Lorg/webrtc/VideoEncoder$ResolutionBitrateLimits;",
&g_org_webrtc_VideoEncoder_getResolutionBitrateLimits0);
jobjectArray ret =
static_cast<jobjectArray>(env->CallObjectMethod(obj.obj(),
call_context.base.method_id));
return jni_zero::ScopedJavaLocalRef<jobjectArray>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_getScalingSettings0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoder_getScalingSettings(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getScalingSettings",
"()Lorg/webrtc/VideoEncoder$ScalingSettings;",
&g_org_webrtc_VideoEncoder_getScalingSettings0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_initEncode2(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoder_initEncode(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj, const jni_zero::JavaRef<jobject>& settings,
const jni_zero::JavaRef<jobject>& encodeCallback) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"initEncode",
"(Lorg/webrtc/VideoEncoder$Settings;Lorg/webrtc/VideoEncoder$Callback;)Lorg/webrtc/VideoCodecStatus;",
&g_org_webrtc_VideoEncoder_initEncode2);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, settings.obj(), encodeCallback.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_isHardwareEncoder0(nullptr);
static jboolean Java_VideoEncoder_isHardwareEncoder(JNIEnv* env, const jni_zero::JavaRef<jobject>&
obj) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), false);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"isHardwareEncoder",
"()Z",
&g_org_webrtc_VideoEncoder_isHardwareEncoder0);
jboolean ret =
env->CallBooleanMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_release0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoder_release(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"release",
"()Lorg/webrtc/VideoCodecStatus;",
&g_org_webrtc_VideoEncoder_release0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_setRates1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoEncoder_setRates(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj, const jni_zero::JavaRef<jobject>& rcParameters) {
jclass clazz = org_webrtc_VideoEncoder_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"setRates",
"(Lorg/webrtc/VideoEncoder$RateControlParameters;)Lorg/webrtc/VideoCodecStatus;",
&g_org_webrtc_VideoEncoder_setRates1);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, rcParameters.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoder_00024BitrateAllocation_Constructor1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_BitrateAllocation_Constructor(JNIEnv* env, const
jni_zero::JavaRef<jobjectArray>& bitratesBbs) {
jclass clazz = org_webrtc_VideoEncoder_00024BitrateAllocation_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoder_00024BitrateAllocation_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"([[I)V",
&g_org_webrtc_VideoEncoder_00024BitrateAllocation_Constructor1);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, bitratesBbs.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_00024Capabilities_Constructor1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_Capabilities_Constructor(JNIEnv* env, jboolean
lossNotification) {
jclass clazz = org_webrtc_VideoEncoder_00024Capabilities_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoder_00024Capabilities_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(Z)V",
&g_org_webrtc_VideoEncoder_00024Capabilities_Constructor1);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, lossNotification);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_00024EncodeInfo_Constructor1(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_EncodeInfo_Constructor(JNIEnv* env, const
jni_zero::JavaRef<jobjectArray>& frameTypes) {
jclass clazz = org_webrtc_VideoEncoder_00024EncodeInfo_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoder_00024EncodeInfo_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"([Lorg/webrtc/EncodedImage$FrameType;)V",
&g_org_webrtc_VideoEncoder_00024EncodeInfo_Constructor1);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, frameTypes.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoder_00024EncoderInfo_getApplyAlignmentToAllSimulcastLayers0(nullptr);
static jboolean Java_EncoderInfo_getApplyAlignmentToAllSimulcastLayers(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_00024EncoderInfo_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_00024EncoderInfo_clazz(env), false);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getApplyAlignmentToAllSimulcastLayers",
"()Z",
&g_org_webrtc_VideoEncoder_00024EncoderInfo_getApplyAlignmentToAllSimulcastLayers0);
jboolean ret =
env->CallBooleanMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoder_00024EncoderInfo_getRequestedResolutionAlignment0(nullptr);
static jint Java_EncoderInfo_getRequestedResolutionAlignment(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_00024EncoderInfo_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_00024EncoderInfo_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getRequestedResolutionAlignment",
"()I",
&g_org_webrtc_VideoEncoder_00024EncoderInfo_getRequestedResolutionAlignment0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoder_00024RateControlParameters_Constructor2(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_RateControlParameters_Constructor(JNIEnv* env,
const jni_zero::JavaRef<jobject>& bitrate,
jdouble framerateFps) {
jclass clazz = org_webrtc_VideoEncoder_00024RateControlParameters_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoder_00024RateControlParameters_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(Lorg/webrtc/VideoEncoder$BitrateAllocation;D)V",
&g_org_webrtc_VideoEncoder_00024RateControlParameters_Constructor2);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, bitrate.obj(), framerateFps);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_getFrameSizePixels0(nullptr);
static jint Java_ResolutionBitrateLimits_getFrameSizePixels(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getFrameSizePixels",
"()I",
&g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_getFrameSizePixels0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_getMaxBitrateBps0(nullptr);
static jint Java_ResolutionBitrateLimits_getMaxBitrateBps(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getMaxBitrateBps",
"()I",
&g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_getMaxBitrateBps0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_getMinBitrateBps0(nullptr);
static jint Java_ResolutionBitrateLimits_getMinBitrateBps(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getMinBitrateBps",
"()I",
&g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_getMinBitrateBps0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID>
g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_getMinStartBitrateBps0(nullptr);
static jint Java_ResolutionBitrateLimits_getMinStartBitrateBps(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getMinStartBitrateBps",
"()I",
&g_org_webrtc_VideoEncoder_00024ResolutionBitrateLimits_getMinStartBitrateBps0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoEncoder_00024Settings_Constructor8(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_Settings_Constructor(JNIEnv* env, JniIntWrapper
numberOfCores,
JniIntWrapper width,
JniIntWrapper height,
JniIntWrapper startBitrate,
JniIntWrapper maxFramerate,
JniIntWrapper numberOfSimulcastStreams,
jboolean automaticResizeOn,
const jni_zero::JavaRef<jobject>& capabilities) {
jclass clazz = org_webrtc_VideoEncoder_00024Settings_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoEncoder_00024Settings_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(IIIIIIZLorg/webrtc/VideoEncoder$Capabilities;)V",
&g_org_webrtc_VideoEncoder_00024Settings_Constructor8);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, as_jint(numberOfCores), as_jint(width), as_jint(height),
as_jint(startBitrate), as_jint(maxFramerate), as_jint(numberOfSimulcastStreams),
automaticResizeOn, capabilities.obj());
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoEncoder_JNI

View file

@ -0,0 +1,460 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoFrame
#ifndef org_webrtc_VideoFrame_JNI
#define org_webrtc_VideoFrame_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoFrame[];
const char kClassPath_org_webrtc_VideoFrame[] = "org/webrtc/VideoFrame";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoFrame_00024Buffer[];
const char kClassPath_org_webrtc_VideoFrame_00024Buffer[] = "org/webrtc/VideoFrame$Buffer";
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char
kClassPath_org_webrtc_VideoFrame_00024I420Buffer[];
const char kClassPath_org_webrtc_VideoFrame_00024I420Buffer[] = "org/webrtc/VideoFrame$I420Buffer";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoFrame_clazz(nullptr);
#ifndef org_webrtc_VideoFrame_clazz_defined
#define org_webrtc_VideoFrame_clazz_defined
inline jclass org_webrtc_VideoFrame_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoFrame,
&g_org_webrtc_VideoFrame_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoFrame_00024Buffer_clazz(nullptr);
#ifndef org_webrtc_VideoFrame_00024Buffer_clazz_defined
#define org_webrtc_VideoFrame_00024Buffer_clazz_defined
inline jclass org_webrtc_VideoFrame_00024Buffer_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoFrame_00024Buffer,
&g_org_webrtc_VideoFrame_00024Buffer_clazz);
}
#endif
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_VideoFrame_00024I420Buffer_clazz(nullptr);
#ifndef org_webrtc_VideoFrame_00024I420Buffer_clazz_defined
#define org_webrtc_VideoFrame_00024I420Buffer_clazz_defined
inline jclass org_webrtc_VideoFrame_00024I420Buffer_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoFrame_00024I420Buffer,
&g_org_webrtc_VideoFrame_00024I420Buffer_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_Constructor3(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoFrame_Constructor(JNIEnv* env, const
jni_zero::JavaRef<jobject>& buffer,
JniIntWrapper rotation,
jlong timestampNs) {
jclass clazz = org_webrtc_VideoFrame_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_VideoFrame_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(Lorg/webrtc/VideoFrame$Buffer;IJ)V",
&g_org_webrtc_VideoFrame_Constructor3);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, buffer.obj(), as_jint(rotation), timestampNs);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_getBuffer0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_VideoFrame_getBuffer(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getBuffer",
"()Lorg/webrtc/VideoFrame$Buffer;",
&g_org_webrtc_VideoFrame_getBuffer0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_getRotation0(nullptr);
static jint Java_VideoFrame_getRotation(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getRotation",
"()I",
&g_org_webrtc_VideoFrame_getRotation0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_getTimestampNs0(nullptr);
static jlong Java_VideoFrame_getTimestampNs(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getTimestampNs",
"()J",
&g_org_webrtc_VideoFrame_getTimestampNs0);
jlong ret =
env->CallLongMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_release0(nullptr);
static void Java_VideoFrame_release(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_clazz(env));
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"release",
"()V",
&g_org_webrtc_VideoFrame_release0);
env->CallVoidMethod(obj.obj(),
call_context.base.method_id);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024Buffer_cropAndScale6(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_Buffer_cropAndScale(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj, JniIntWrapper cropX,
JniIntWrapper cropY,
JniIntWrapper cropWidth,
JniIntWrapper cropHeight,
JniIntWrapper scaleWidth,
JniIntWrapper scaleHeight) {
jclass clazz = org_webrtc_VideoFrame_00024Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024Buffer_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"cropAndScale",
"(IIIIII)Lorg/webrtc/VideoFrame$Buffer;",
&g_org_webrtc_VideoFrame_00024Buffer_cropAndScale6);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id, as_jint(cropX), as_jint(cropY), as_jint(cropWidth),
as_jint(cropHeight), as_jint(scaleWidth), as_jint(scaleHeight));
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024Buffer_getBufferType0(nullptr);
static jint Java_Buffer_getBufferType(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024Buffer_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getBufferType",
"()I",
&g_org_webrtc_VideoFrame_00024Buffer_getBufferType0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024Buffer_getHeight0(nullptr);
static jint Java_Buffer_getHeight(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024Buffer_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getHeight",
"()I",
&g_org_webrtc_VideoFrame_00024Buffer_getHeight0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024Buffer_getWidth0(nullptr);
static jint Java_Buffer_getWidth(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024Buffer_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getWidth",
"()I",
&g_org_webrtc_VideoFrame_00024Buffer_getWidth0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024Buffer_release0(nullptr);
static void Java_Buffer_release(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024Buffer_clazz(env));
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"release",
"()V",
&g_org_webrtc_VideoFrame_00024Buffer_release0);
env->CallVoidMethod(obj.obj(),
call_context.base.method_id);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024Buffer_retain0(nullptr);
static void Java_Buffer_retain(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024Buffer_clazz(env));
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"retain",
"()V",
&g_org_webrtc_VideoFrame_00024Buffer_retain0);
env->CallVoidMethod(obj.obj(),
call_context.base.method_id);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024Buffer_toI4200(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_Buffer_toI420(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024Buffer_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"toI420",
"()Lorg/webrtc/VideoFrame$I420Buffer;",
&g_org_webrtc_VideoFrame_00024Buffer_toI4200);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024I420Buffer_getDataU0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_I420Buffer_getDataU(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024I420Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024I420Buffer_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getDataU",
"()Ljava/nio/ByteBuffer;",
&g_org_webrtc_VideoFrame_00024I420Buffer_getDataU0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024I420Buffer_getDataV0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_I420Buffer_getDataV(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024I420Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024I420Buffer_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getDataV",
"()Ljava/nio/ByteBuffer;",
&g_org_webrtc_VideoFrame_00024I420Buffer_getDataV0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024I420Buffer_getDataY0(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_I420Buffer_getDataY(JNIEnv* env, const
jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024I420Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024I420Buffer_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getDataY",
"()Ljava/nio/ByteBuffer;",
&g_org_webrtc_VideoFrame_00024I420Buffer_getDataY0);
jobject ret =
env->CallObjectMethod(obj.obj(),
call_context.base.method_id);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024I420Buffer_getStrideU0(nullptr);
static jint Java_I420Buffer_getStrideU(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024I420Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024I420Buffer_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getStrideU",
"()I",
&g_org_webrtc_VideoFrame_00024I420Buffer_getStrideU0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024I420Buffer_getStrideV0(nullptr);
static jint Java_I420Buffer_getStrideV(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024I420Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024I420Buffer_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getStrideV",
"()I",
&g_org_webrtc_VideoFrame_00024I420Buffer_getStrideV0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
static std::atomic<jmethodID> g_org_webrtc_VideoFrame_00024I420Buffer_getStrideY0(nullptr);
static jint Java_I420Buffer_getStrideY(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj) {
jclass clazz = org_webrtc_VideoFrame_00024I420Buffer_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoFrame_00024I420Buffer_clazz(env), 0);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"getStrideY",
"()I",
&g_org_webrtc_VideoFrame_00024I420Buffer_getStrideY0);
jint ret =
env->CallIntMethod(obj.obj(),
call_context.base.method_id);
return ret;
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoFrame_JNI

View file

@ -0,0 +1,66 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoSink
#ifndef org_webrtc_VideoSink_JNI
#define org_webrtc_VideoSink_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoSink[];
const char kClassPath_org_webrtc_VideoSink[] = "org/webrtc/VideoSink";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoSink_clazz(nullptr);
#ifndef org_webrtc_VideoSink_clazz_defined
#define org_webrtc_VideoSink_clazz_defined
inline jclass org_webrtc_VideoSink_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoSink,
&g_org_webrtc_VideoSink_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_VideoSink_onFrame1(nullptr);
static void Java_VideoSink_onFrame(JNIEnv* env, const jni_zero::JavaRef<jobject>& obj, const
jni_zero::JavaRef<jobject>& frame) {
jclass clazz = org_webrtc_VideoSink_clazz(env);
CHECK_CLAZZ(env, obj.obj(),
org_webrtc_VideoSink_clazz(env));
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"onFrame",
"(Lorg/webrtc/VideoFrame;)V",
&g_org_webrtc_VideoSink_onFrame1);
env->CallVoidMethod(obj.obj(),
call_context.base.method_id, frame.obj());
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoSink_JNI

View file

@ -0,0 +1,86 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/VideoTrack
#ifndef org_webrtc_VideoTrack_JNI
#define org_webrtc_VideoTrack_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_VideoTrack[];
const char kClassPath_org_webrtc_VideoTrack[] = "org/webrtc/VideoTrack";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_VideoTrack_clazz(nullptr);
#ifndef org_webrtc_VideoTrack_clazz_defined
#define org_webrtc_VideoTrack_clazz_defined
inline jclass org_webrtc_VideoTrack_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_VideoTrack,
&g_org_webrtc_VideoTrack_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static void JNI_VideoTrack_AddSink(JNIEnv* env, jlong track,
jlong nativeSink);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_VideoTrack_nativeAddSink(
JNIEnv* env,
jclass jcaller,
jlong track,
jlong nativeSink) {
return JNI_VideoTrack_AddSink(env, track, nativeSink);
}
static void JNI_VideoTrack_FreeSink(JNIEnv* env, jlong sink);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_VideoTrack_nativeFreeSink(
JNIEnv* env,
jclass jcaller,
jlong sink) {
return JNI_VideoTrack_FreeSink(env, sink);
}
static void JNI_VideoTrack_RemoveSink(JNIEnv* env, jlong track,
jlong nativeSink);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_VideoTrack_nativeRemoveSink(
JNIEnv* env,
jclass jcaller,
jlong track,
jlong nativeSink) {
return JNI_VideoTrack_RemoveSink(env, track, nativeSink);
}
static jlong JNI_VideoTrack_WrapSink(JNIEnv* env, const jni_zero::JavaParamRef<jobject>& sink);
JNI_BOUNDARY_EXPORT jlong Java_org_webrtc_VideoTrack_nativeWrapSink(
JNIEnv* env,
jclass jcaller,
jobject sink) {
return JNI_VideoTrack_WrapSink(env, jni_zero::JavaParamRef<jobject>(env, sink));
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_VideoTrack_JNI

View file

@ -0,0 +1,79 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/WrappedNativeI420Buffer
#ifndef org_webrtc_WrappedNativeI420Buffer_JNI
#define org_webrtc_WrappedNativeI420Buffer_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_WrappedNativeI420Buffer[];
const char kClassPath_org_webrtc_WrappedNativeI420Buffer[] = "org/webrtc/WrappedNativeI420Buffer";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass>
g_org_webrtc_WrappedNativeI420Buffer_clazz(nullptr);
#ifndef org_webrtc_WrappedNativeI420Buffer_clazz_defined
#define org_webrtc_WrappedNativeI420Buffer_clazz_defined
inline jclass org_webrtc_WrappedNativeI420Buffer_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_WrappedNativeI420Buffer,
&g_org_webrtc_WrappedNativeI420Buffer_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static std::atomic<jmethodID> g_org_webrtc_WrappedNativeI420Buffer_Constructor9(nullptr);
static jni_zero::ScopedJavaLocalRef<jobject> Java_WrappedNativeI420Buffer_Constructor(JNIEnv* env,
JniIntWrapper width,
JniIntWrapper height,
const jni_zero::JavaRef<jobject>& dataY,
JniIntWrapper strideY,
const jni_zero::JavaRef<jobject>& dataU,
JniIntWrapper strideU,
const jni_zero::JavaRef<jobject>& dataV,
JniIntWrapper strideV,
jlong nativeBuffer) {
jclass clazz = org_webrtc_WrappedNativeI420Buffer_clazz(env);
CHECK_CLAZZ(env, clazz,
org_webrtc_WrappedNativeI420Buffer_clazz(env), nullptr);
jni_zero::JniJavaCallContextChecked call_context;
call_context.Init<
jni_zero::MethodID::TYPE_INSTANCE>(
env,
clazz,
"<init>",
"(IILjava/nio/ByteBuffer;ILjava/nio/ByteBuffer;ILjava/nio/ByteBuffer;IJ)V",
&g_org_webrtc_WrappedNativeI420Buffer_Constructor9);
jobject ret =
env->NewObject(clazz,
call_context.base.method_id, as_jint(width), as_jint(height), dataY.obj(),
as_jint(strideY), dataU.obj(), as_jint(strideU), dataV.obj(), as_jint(strideV),
nativeBuffer);
return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_WrappedNativeI420Buffer_JNI

View file

@ -0,0 +1,209 @@
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file is autogenerated by
// third_party/jni_zero/jni_generator.py
// For
// org/webrtc/YuvHelper
#ifndef org_webrtc_YuvHelper_JNI
#define org_webrtc_YuvHelper_JNI
#include <jni.h>
#include "third_party/jni_zero/jni_export.h"
#include "webrtc/sdk/android/src/jni/jni_generator_helper.h"
// Step 1: Forward declarations.
JNI_ZERO_COMPONENT_BUILD_EXPORT extern const char kClassPath_org_webrtc_YuvHelper[];
const char kClassPath_org_webrtc_YuvHelper[] = "org/webrtc/YuvHelper";
// Leaking this jclass as we cannot use LazyInstance from some threads.
JNI_ZERO_COMPONENT_BUILD_EXPORT std::atomic<jclass> g_org_webrtc_YuvHelper_clazz(nullptr);
#ifndef org_webrtc_YuvHelper_clazz_defined
#define org_webrtc_YuvHelper_clazz_defined
inline jclass org_webrtc_YuvHelper_clazz(JNIEnv* env) {
return jni_zero::LazyGetClass(env, kClassPath_org_webrtc_YuvHelper,
&g_org_webrtc_YuvHelper_clazz);
}
#endif
// Step 2: Constants (optional).
// Step 3: Method stubs.
namespace webrtc {
namespace jni {
static void JNI_YuvHelper_ABGRToI420(JNIEnv* env, const jni_zero::JavaParamRef<jobject>& src,
jint srcStride,
const jni_zero::JavaParamRef<jobject>& dstY,
jint dstStrideY,
const jni_zero::JavaParamRef<jobject>& dstU,
jint dstStrideU,
const jni_zero::JavaParamRef<jobject>& dstV,
jint dstStrideV,
jint width,
jint height);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_YuvHelper_nativeABGRToI420(
JNIEnv* env,
jclass jcaller,
jobject src,
jint srcStride,
jobject dstY,
jint dstStrideY,
jobject dstU,
jint dstStrideU,
jobject dstV,
jint dstStrideV,
jint width,
jint height) {
return JNI_YuvHelper_ABGRToI420(env, jni_zero::JavaParamRef<jobject>(env, src), srcStride,
jni_zero::JavaParamRef<jobject>(env, dstY), dstStrideY, jni_zero::JavaParamRef<jobject>(env,
dstU), dstStrideU, jni_zero::JavaParamRef<jobject>(env, dstV), dstStrideV, width, height);
}
static void JNI_YuvHelper_CopyPlane(JNIEnv* env, const jni_zero::JavaParamRef<jobject>& src,
jint srcStride,
const jni_zero::JavaParamRef<jobject>& dst,
jint dstStride,
jint width,
jint height);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_YuvHelper_nativeCopyPlane(
JNIEnv* env,
jclass jcaller,
jobject src,
jint srcStride,
jobject dst,
jint dstStride,
jint width,
jint height) {
return JNI_YuvHelper_CopyPlane(env, jni_zero::JavaParamRef<jobject>(env, src), srcStride,
jni_zero::JavaParamRef<jobject>(env, dst), dstStride, width, height);
}
static void JNI_YuvHelper_I420Copy(JNIEnv* env, const jni_zero::JavaParamRef<jobject>& srcY,
jint srcStrideY,
const jni_zero::JavaParamRef<jobject>& srcU,
jint srcStrideU,
const jni_zero::JavaParamRef<jobject>& srcV,
jint srcStrideV,
const jni_zero::JavaParamRef<jobject>& dstY,
jint dstStrideY,
const jni_zero::JavaParamRef<jobject>& dstU,
jint dstStrideU,
const jni_zero::JavaParamRef<jobject>& dstV,
jint dstStrideV,
jint width,
jint height);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_YuvHelper_nativeI420Copy(
JNIEnv* env,
jclass jcaller,
jobject srcY,
jint srcStrideY,
jobject srcU,
jint srcStrideU,
jobject srcV,
jint srcStrideV,
jobject dstY,
jint dstStrideY,
jobject dstU,
jint dstStrideU,
jobject dstV,
jint dstStrideV,
jint width,
jint height) {
return JNI_YuvHelper_I420Copy(env, jni_zero::JavaParamRef<jobject>(env, srcY), srcStrideY,
jni_zero::JavaParamRef<jobject>(env, srcU), srcStrideU, jni_zero::JavaParamRef<jobject>(env,
srcV), srcStrideV, jni_zero::JavaParamRef<jobject>(env, dstY), dstStrideY,
jni_zero::JavaParamRef<jobject>(env, dstU), dstStrideU, jni_zero::JavaParamRef<jobject>(env,
dstV), dstStrideV, width, height);
}
static void JNI_YuvHelper_I420Rotate(JNIEnv* env, const jni_zero::JavaParamRef<jobject>& srcY,
jint srcStrideY,
const jni_zero::JavaParamRef<jobject>& srcU,
jint srcStrideU,
const jni_zero::JavaParamRef<jobject>& srcV,
jint srcStrideV,
const jni_zero::JavaParamRef<jobject>& dstY,
jint dstStrideY,
const jni_zero::JavaParamRef<jobject>& dstU,
jint dstStrideU,
const jni_zero::JavaParamRef<jobject>& dstV,
jint dstStrideV,
jint srcWidth,
jint srcHeight,
jint rotationMode);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_YuvHelper_nativeI420Rotate(
JNIEnv* env,
jclass jcaller,
jobject srcY,
jint srcStrideY,
jobject srcU,
jint srcStrideU,
jobject srcV,
jint srcStrideV,
jobject dstY,
jint dstStrideY,
jobject dstU,
jint dstStrideU,
jobject dstV,
jint dstStrideV,
jint srcWidth,
jint srcHeight,
jint rotationMode) {
return JNI_YuvHelper_I420Rotate(env, jni_zero::JavaParamRef<jobject>(env, srcY), srcStrideY,
jni_zero::JavaParamRef<jobject>(env, srcU), srcStrideU, jni_zero::JavaParamRef<jobject>(env,
srcV), srcStrideV, jni_zero::JavaParamRef<jobject>(env, dstY), dstStrideY,
jni_zero::JavaParamRef<jobject>(env, dstU), dstStrideU, jni_zero::JavaParamRef<jobject>(env,
dstV), dstStrideV, srcWidth, srcHeight, rotationMode);
}
static void JNI_YuvHelper_I420ToNV12(JNIEnv* env, const jni_zero::JavaParamRef<jobject>& srcY,
jint srcStrideY,
const jni_zero::JavaParamRef<jobject>& srcU,
jint srcStrideU,
const jni_zero::JavaParamRef<jobject>& srcV,
jint srcStrideV,
const jni_zero::JavaParamRef<jobject>& dstY,
jint dstStrideY,
const jni_zero::JavaParamRef<jobject>& dstUV,
jint dstStrideUV,
jint width,
jint height);
JNI_BOUNDARY_EXPORT void Java_org_webrtc_YuvHelper_nativeI420ToNV12(
JNIEnv* env,
jclass jcaller,
jobject srcY,
jint srcStrideY,
jobject srcU,
jint srcStrideU,
jobject srcV,
jint srcStrideV,
jobject dstY,
jint dstStrideY,
jobject dstUV,
jint dstStrideUV,
jint width,
jint height) {
return JNI_YuvHelper_I420ToNV12(env, jni_zero::JavaParamRef<jobject>(env, srcY), srcStrideY,
jni_zero::JavaParamRef<jobject>(env, srcU), srcStrideU, jni_zero::JavaParamRef<jobject>(env,
srcV), srcStrideV, jni_zero::JavaParamRef<jobject>(env, dstY), dstStrideY,
jni_zero::JavaParamRef<jobject>(env, dstUV), dstStrideUV, width, height);
}
} // namespace jni
} // namespace webrtc
#endif // org_webrtc_YuvHelper_JNI