OLD | NEW |
---|---|
(Empty) | |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // This file is autogenerated by | |
Ami GONE FROM CHROMIUM
2013/01/23 01:32:32
Is this in fact an unmodified copy of that generat
dwkang1
2013/01/28 14:54:30
You shouldn't. =)
| |
6 // base/android/jni_generator/jni_generator.py | |
7 // For | |
8 // android/media/MediaCodec | |
Ami GONE FROM CHROMIUM
2013/01/23 01:32:32
You plan to solve the autogen problem before landi
dwkang1
2013/01/28 14:54:30
Fixed the bug in jni_generator.
https://codereview
| |
9 | |
10 #ifndef android_media_MediaCodec_JNI | |
11 #define android_media_MediaCodec_JNI | |
12 | |
13 #include <jni.h> | |
14 | |
15 #include "base/android/jni_android.h" | |
16 #include "base/android/scoped_java_ref.h" | |
17 #include "base/basictypes.h" | |
18 #include "base/logging.h" | |
19 | |
20 using base::android::ScopedJavaLocalRef; | |
21 | |
22 // Step 1: forward declarations. | |
23 namespace { | |
24 const char kMediaCodecClassPath[] = "android/media/MediaCodec"; | |
25 // Leaking this jclass as we cannot use LazyInstance from some threads. | |
26 jclass g_MediaCodec_clazz = NULL; | |
27 } // namespace | |
28 | |
29 namespace JNI_MediaCodec { | |
30 | |
31 // Step 2: method stubs. | |
32 | |
33 static base::subtle::AtomicWord g_MediaCodec_createDecoderByType = 0; | |
34 static ScopedJavaLocalRef<jobject> Java_MediaCodec_createDecoderByType(JNIEnv* | |
35 env, jstring p0) __attribute__ ((unused)); | |
36 static ScopedJavaLocalRef<jobject> Java_MediaCodec_createDecoderByType(JNIEnv* | |
37 env, jstring p0) { | |
38 /* Must call RegisterNativesImpl() */ | |
39 DCHECK(g_MediaCodec_clazz); | |
40 jmethodID method_id = | |
41 base::android::MethodID::LazyGet< | |
42 base::android::MethodID::TYPE_STATIC>( | |
43 env, g_MediaCodec_clazz, | |
44 "createDecoderByType", | |
45 | |
46 "(" | |
47 "Ljava/lang/String;" | |
48 ")" | |
49 "Landroid/media/MediaCodec;", | |
50 &g_MediaCodec_createDecoderByType); | |
51 | |
52 jobject ret = | |
53 env->CallStaticObjectMethod(g_MediaCodec_clazz, | |
54 method_id, p0); | |
55 base::android::CheckException(env); | |
56 return ScopedJavaLocalRef<jobject>(env, ret); | |
57 } | |
58 | |
59 static base::subtle::AtomicWord g_MediaCodec_createEncoderByType = 0; | |
60 static ScopedJavaLocalRef<jobject> Java_MediaCodec_createEncoderByType(JNIEnv* | |
61 env, jstring p0) __attribute__ ((unused)); | |
62 static ScopedJavaLocalRef<jobject> Java_MediaCodec_createEncoderByType(JNIEnv* | |
63 env, jstring p0) { | |
64 /* Must call RegisterNativesImpl() */ | |
65 DCHECK(g_MediaCodec_clazz); | |
66 jmethodID method_id = | |
67 base::android::MethodID::LazyGet< | |
68 base::android::MethodID::TYPE_STATIC>( | |
69 env, g_MediaCodec_clazz, | |
70 "createEncoderByType", | |
71 | |
72 "(" | |
73 "Ljava/lang/String;" | |
74 ")" | |
75 "Landroid/media/MediaCodec;", | |
76 &g_MediaCodec_createEncoderByType); | |
77 | |
78 jobject ret = | |
79 env->CallStaticObjectMethod(g_MediaCodec_clazz, | |
80 method_id, p0); | |
81 base::android::CheckException(env); | |
82 return ScopedJavaLocalRef<jobject>(env, ret); | |
83 } | |
84 | |
85 static base::subtle::AtomicWord g_MediaCodec_createByCodecName = 0; | |
86 static ScopedJavaLocalRef<jobject> Java_MediaCodec_createByCodecName(JNIEnv* | |
87 env, jstring p0) __attribute__ ((unused)); | |
88 static ScopedJavaLocalRef<jobject> Java_MediaCodec_createByCodecName(JNIEnv* | |
89 env, jstring p0) { | |
90 /* Must call RegisterNativesImpl() */ | |
91 DCHECK(g_MediaCodec_clazz); | |
92 jmethodID method_id = | |
93 base::android::MethodID::LazyGet< | |
94 base::android::MethodID::TYPE_STATIC>( | |
95 env, g_MediaCodec_clazz, | |
96 "createByCodecName", | |
97 | |
98 "(" | |
99 "Ljava/lang/String;" | |
100 ")" | |
101 "Landroid/media/MediaCodec;", | |
102 &g_MediaCodec_createByCodecName); | |
103 | |
104 jobject ret = | |
105 env->CallStaticObjectMethod(g_MediaCodec_clazz, | |
106 method_id, p0); | |
107 base::android::CheckException(env); | |
108 return ScopedJavaLocalRef<jobject>(env, ret); | |
109 } | |
110 | |
111 static base::subtle::AtomicWord g_MediaCodec_finalize = 0; | |
112 static void Java_MediaCodec_finalize(JNIEnv* env, jobject obj) __attribute__ | |
113 ((unused)); | |
114 static void Java_MediaCodec_finalize(JNIEnv* env, jobject obj) { | |
115 /* Must call RegisterNativesImpl() */ | |
116 DCHECK(g_MediaCodec_clazz); | |
117 jmethodID method_id = | |
118 base::android::MethodID::LazyGet< | |
119 base::android::MethodID::TYPE_INSTANCE>( | |
120 env, g_MediaCodec_clazz, | |
121 "finalize", | |
122 | |
123 "(" | |
124 ")" | |
125 "V", | |
126 &g_MediaCodec_finalize); | |
127 | |
128 env->CallVoidMethod(obj, | |
129 method_id); | |
130 base::android::CheckException(env); | |
131 | |
132 } | |
133 | |
134 static base::subtle::AtomicWord g_MediaCodec_release = 0; | |
135 static void Java_MediaCodec_release(JNIEnv* env, jobject obj) __attribute__ | |
136 ((unused)); | |
137 static void Java_MediaCodec_release(JNIEnv* env, jobject obj) { | |
138 /* Must call RegisterNativesImpl() */ | |
139 DCHECK(g_MediaCodec_clazz); | |
140 jmethodID method_id = | |
141 base::android::MethodID::LazyGet< | |
142 base::android::MethodID::TYPE_INSTANCE>( | |
143 env, g_MediaCodec_clazz, | |
144 "release", | |
145 | |
146 "(" | |
147 ")" | |
148 "V", | |
149 &g_MediaCodec_release); | |
150 | |
151 env->CallVoidMethod(obj, | |
152 method_id); | |
153 base::android::CheckException(env); | |
154 | |
155 } | |
156 | |
157 static base::subtle::AtomicWord g_MediaCodec_configure = 0; | |
158 static void Java_MediaCodec_configure(JNIEnv* env, jobject obj, jobject p0, | |
159 jobject p1, | |
160 jobject p2, | |
161 jint p3) __attribute__ ((unused)); | |
162 static void Java_MediaCodec_configure(JNIEnv* env, jobject obj, jobject p0, | |
163 jobject p1, | |
164 jobject p2, | |
165 jint p3) { | |
166 /* Must call RegisterNativesImpl() */ | |
167 DCHECK(g_MediaCodec_clazz); | |
168 jmethodID method_id = | |
169 base::android::MethodID::LazyGet< | |
170 base::android::MethodID::TYPE_INSTANCE>( | |
171 env, g_MediaCodec_clazz, | |
172 "configure", | |
173 | |
174 "(" | |
175 "Landroid/media/MediaFormat;" | |
176 "Landroid/view/Surface;" | |
177 "Landroid/media/MediaCrypto;" | |
178 "I" | |
179 ")" | |
180 "V", | |
181 &g_MediaCodec_configure); | |
182 | |
183 env->CallVoidMethod(obj, | |
184 method_id, p0, p1, p2, p3); | |
185 base::android::CheckException(env); | |
186 | |
187 } | |
188 | |
189 static base::subtle::AtomicWord g_MediaCodec_start = 0; | |
190 static void Java_MediaCodec_start(JNIEnv* env, jobject obj) __attribute__ | |
191 ((unused)); | |
192 static void Java_MediaCodec_start(JNIEnv* env, jobject obj) { | |
193 /* Must call RegisterNativesImpl() */ | |
194 DCHECK(g_MediaCodec_clazz); | |
195 jmethodID method_id = | |
196 base::android::MethodID::LazyGet< | |
197 base::android::MethodID::TYPE_INSTANCE>( | |
198 env, g_MediaCodec_clazz, | |
199 "start", | |
200 | |
201 "(" | |
202 ")" | |
203 "V", | |
204 &g_MediaCodec_start); | |
205 | |
206 env->CallVoidMethod(obj, | |
207 method_id); | |
208 base::android::CheckException(env); | |
209 | |
210 } | |
211 | |
212 static base::subtle::AtomicWord g_MediaCodec_stop = 0; | |
213 static void Java_MediaCodec_stop(JNIEnv* env, jobject obj) __attribute__ | |
214 ((unused)); | |
215 static void Java_MediaCodec_stop(JNIEnv* env, jobject obj) { | |
216 /* Must call RegisterNativesImpl() */ | |
217 DCHECK(g_MediaCodec_clazz); | |
218 jmethodID method_id = | |
219 base::android::MethodID::LazyGet< | |
220 base::android::MethodID::TYPE_INSTANCE>( | |
221 env, g_MediaCodec_clazz, | |
222 "stop", | |
223 | |
224 "(" | |
225 ")" | |
226 "V", | |
227 &g_MediaCodec_stop); | |
228 | |
229 env->CallVoidMethod(obj, | |
230 method_id); | |
231 base::android::CheckException(env); | |
232 | |
233 } | |
234 | |
235 static base::subtle::AtomicWord g_MediaCodec_flush = 0; | |
236 static void Java_MediaCodec_flush(JNIEnv* env, jobject obj) __attribute__ | |
237 ((unused)); | |
238 static void Java_MediaCodec_flush(JNIEnv* env, jobject obj) { | |
239 /* Must call RegisterNativesImpl() */ | |
240 DCHECK(g_MediaCodec_clazz); | |
241 jmethodID method_id = | |
242 base::android::MethodID::LazyGet< | |
243 base::android::MethodID::TYPE_INSTANCE>( | |
244 env, g_MediaCodec_clazz, | |
245 "flush", | |
246 | |
247 "(" | |
248 ")" | |
249 "V", | |
250 &g_MediaCodec_flush); | |
251 | |
252 env->CallVoidMethod(obj, | |
253 method_id); | |
254 base::android::CheckException(env); | |
255 | |
256 } | |
257 | |
258 static base::subtle::AtomicWord g_MediaCodec_queueInputBuffer = 0; | |
259 static void Java_MediaCodec_queueInputBuffer(JNIEnv* env, jobject obj, jint p0, | |
260 jint p1, | |
261 jint p2, | |
262 jlong p3, | |
263 jint p4) __attribute__ ((unused)); | |
264 static void Java_MediaCodec_queueInputBuffer(JNIEnv* env, jobject obj, jint p0, | |
265 jint p1, | |
266 jint p2, | |
267 jlong p3, | |
268 jint p4) { | |
269 /* Must call RegisterNativesImpl() */ | |
270 DCHECK(g_MediaCodec_clazz); | |
271 jmethodID method_id = | |
272 base::android::MethodID::LazyGet< | |
273 base::android::MethodID::TYPE_INSTANCE>( | |
274 env, g_MediaCodec_clazz, | |
275 "queueInputBuffer", | |
276 | |
277 "(" | |
278 "I" | |
279 "I" | |
280 "I" | |
281 "J" | |
282 "I" | |
283 ")" | |
284 "V", | |
285 &g_MediaCodec_queueInputBuffer); | |
286 | |
287 env->CallVoidMethod(obj, | |
288 method_id, p0, p1, p2, p3, p4); | |
289 base::android::CheckException(env); | |
290 | |
291 } | |
292 | |
293 static base::subtle::AtomicWord g_MediaCodec_queueSecureInputBuffer = 0; | |
294 static void Java_MediaCodec_queueSecureInputBuffer(JNIEnv* env, jobject obj, | |
295 jint p0, | |
296 jint p1, | |
297 jobject p2, | |
298 jlong p3, | |
299 jint p4) __attribute__ ((unused)); | |
300 static void Java_MediaCodec_queueSecureInputBuffer(JNIEnv* env, jobject obj, | |
301 jint p0, | |
302 jint p1, | |
303 jobject p2, | |
304 jlong p3, | |
305 jint p4) { | |
306 /* Must call RegisterNativesImpl() */ | |
307 DCHECK(g_MediaCodec_clazz); | |
308 jmethodID method_id = | |
309 base::android::MethodID::LazyGet< | |
310 base::android::MethodID::TYPE_INSTANCE>( | |
311 env, g_MediaCodec_clazz, | |
312 "queueSecureInputBuffer", | |
313 | |
314 "(" | |
315 "I" | |
316 "I" | |
317 "Landroid/media/MediaCodec$CryptoInfo;" | |
318 "J" | |
319 "I" | |
320 ")" | |
321 "V", | |
322 &g_MediaCodec_queueSecureInputBuffer); | |
323 | |
324 env->CallVoidMethod(obj, | |
325 method_id, p0, p1, p2, p3, p4); | |
326 base::android::CheckException(env); | |
327 | |
328 } | |
329 | |
330 static base::subtle::AtomicWord g_MediaCodec_dequeueInputBuffer = 0; | |
331 static jint Java_MediaCodec_dequeueInputBuffer(JNIEnv* env, jobject obj, jlong | |
332 p0) __attribute__ ((unused)); | |
333 static jint Java_MediaCodec_dequeueInputBuffer(JNIEnv* env, jobject obj, jlong | |
334 p0) { | |
335 /* Must call RegisterNativesImpl() */ | |
336 DCHECK(g_MediaCodec_clazz); | |
337 jmethodID method_id = | |
338 base::android::MethodID::LazyGet< | |
339 base::android::MethodID::TYPE_INSTANCE>( | |
340 env, g_MediaCodec_clazz, | |
341 "dequeueInputBuffer", | |
342 | |
343 "(" | |
344 "J" | |
345 ")" | |
346 "I", | |
347 &g_MediaCodec_dequeueInputBuffer); | |
348 | |
349 jint ret = | |
350 env->CallIntMethod(obj, | |
351 method_id, p0); | |
352 base::android::CheckException(env); | |
353 return ret; | |
354 } | |
355 | |
356 static base::subtle::AtomicWord g_MediaCodec_dequeueOutputBuffer = 0; | |
357 static jint Java_MediaCodec_dequeueOutputBuffer(JNIEnv* env, jobject obj, | |
358 jobject p0, | |
359 jlong p1) __attribute__ ((unused)); | |
360 static jint Java_MediaCodec_dequeueOutputBuffer(JNIEnv* env, jobject obj, | |
361 jobject p0, | |
362 jlong p1) { | |
363 /* Must call RegisterNativesImpl() */ | |
364 DCHECK(g_MediaCodec_clazz); | |
365 jmethodID method_id = | |
366 base::android::MethodID::LazyGet< | |
367 base::android::MethodID::TYPE_INSTANCE>( | |
368 env, g_MediaCodec_clazz, | |
369 "dequeueOutputBuffer", | |
370 | |
371 "(" | |
372 "Landroid/media/MediaCodec$BufferInfo;" | |
373 "J" | |
374 ")" | |
375 "I", | |
376 &g_MediaCodec_dequeueOutputBuffer); | |
377 | |
378 jint ret = | |
379 env->CallIntMethod(obj, | |
380 method_id, p0, p1); | |
381 base::android::CheckException(env); | |
382 return ret; | |
383 } | |
384 | |
385 static base::subtle::AtomicWord g_MediaCodec_releaseOutputBuffer = 0; | |
386 static void Java_MediaCodec_releaseOutputBuffer(JNIEnv* env, jobject obj, jint | |
387 p0, | |
388 jboolean p1) __attribute__ ((unused)); | |
389 static void Java_MediaCodec_releaseOutputBuffer(JNIEnv* env, jobject obj, jint | |
390 p0, | |
391 jboolean p1) { | |
392 /* Must call RegisterNativesImpl() */ | |
393 DCHECK(g_MediaCodec_clazz); | |
394 jmethodID method_id = | |
395 base::android::MethodID::LazyGet< | |
396 base::android::MethodID::TYPE_INSTANCE>( | |
397 env, g_MediaCodec_clazz, | |
398 "releaseOutputBuffer", | |
399 | |
400 "(" | |
401 "I" | |
402 "Z" | |
403 ")" | |
404 "V", | |
405 &g_MediaCodec_releaseOutputBuffer); | |
406 | |
407 env->CallVoidMethod(obj, | |
408 method_id, p0, p1); | |
409 base::android::CheckException(env); | |
410 | |
411 } | |
412 | |
413 static base::subtle::AtomicWord g_MediaCodec_getOutputFormat = 0; | |
414 static ScopedJavaLocalRef<jobject> Java_MediaCodec_getOutputFormat(JNIEnv* env, | |
415 jobject obj) __attribute__ ((unused)); | |
416 static ScopedJavaLocalRef<jobject> Java_MediaCodec_getOutputFormat(JNIEnv* env, | |
417 jobject obj) { | |
418 /* Must call RegisterNativesImpl() */ | |
419 DCHECK(g_MediaCodec_clazz); | |
420 jmethodID method_id = | |
421 base::android::MethodID::LazyGet< | |
422 base::android::MethodID::TYPE_INSTANCE>( | |
423 env, g_MediaCodec_clazz, | |
424 "getOutputFormat", | |
425 | |
426 "(" | |
427 ")" | |
428 "Landroid/media/MediaFormat;", | |
429 &g_MediaCodec_getOutputFormat); | |
430 | |
431 jobject ret = | |
432 env->CallObjectMethod(obj, | |
433 method_id); | |
434 base::android::CheckException(env); | |
435 return ScopedJavaLocalRef<jobject>(env, ret); | |
436 } | |
437 | |
438 static base::subtle::AtomicWord g_MediaCodec_getInputBuffers = 0; | |
439 static ScopedJavaLocalRef<jobjectArray> Java_MediaCodec_getInputBuffers(JNIEnv* | |
440 env, jobject obj) __attribute__ ((unused)); | |
441 static ScopedJavaLocalRef<jobjectArray> Java_MediaCodec_getInputBuffers(JNIEnv* | |
442 env, jobject obj) { | |
443 /* Must call RegisterNativesImpl() */ | |
444 DCHECK(g_MediaCodec_clazz); | |
445 jmethodID method_id = | |
446 base::android::MethodID::LazyGet< | |
447 base::android::MethodID::TYPE_INSTANCE>( | |
448 env, g_MediaCodec_clazz, | |
449 "getInputBuffers", | |
450 | |
451 "(" | |
452 ")" | |
453 "[Ljava/nio/ByteBuffer;", | |
454 &g_MediaCodec_getInputBuffers); | |
455 | |
456 jobjectArray ret = | |
457 static_cast<jobjectArray>(env->CallObjectMethod(obj, | |
458 method_id)); | |
459 base::android::CheckException(env); | |
460 return ScopedJavaLocalRef<jobjectArray>(env, ret); | |
461 } | |
462 | |
463 static base::subtle::AtomicWord g_MediaCodec_getOutputBuffers = 0; | |
464 static ScopedJavaLocalRef<jobjectArray> Java_MediaCodec_getOutputBuffers(JNIEnv* | |
465 env, jobject obj) __attribute__ ((unused)); | |
466 static ScopedJavaLocalRef<jobjectArray> Java_MediaCodec_getOutputBuffers(JNIEnv* | |
467 env, jobject obj) { | |
468 /* Must call RegisterNativesImpl() */ | |
469 DCHECK(g_MediaCodec_clazz); | |
470 jmethodID method_id = | |
471 base::android::MethodID::LazyGet< | |
472 base::android::MethodID::TYPE_INSTANCE>( | |
473 env, g_MediaCodec_clazz, | |
474 "getOutputBuffers", | |
475 | |
476 "(" | |
477 ")" | |
478 "[Ljava/nio/ByteBuffer;", | |
479 &g_MediaCodec_getOutputBuffers); | |
480 | |
481 jobjectArray ret = | |
482 static_cast<jobjectArray>(env->CallObjectMethod(obj, | |
483 method_id)); | |
484 base::android::CheckException(env); | |
485 return ScopedJavaLocalRef<jobjectArray>(env, ret); | |
486 } | |
487 | |
488 static base::subtle::AtomicWord g_MediaCodec_setVideoScalingMode = 0; | |
489 static void Java_MediaCodec_setVideoScalingMode(JNIEnv* env, jobject obj, jint | |
490 p0) __attribute__ ((unused)); | |
491 static void Java_MediaCodec_setVideoScalingMode(JNIEnv* env, jobject obj, jint | |
492 p0) { | |
493 /* Must call RegisterNativesImpl() */ | |
494 DCHECK(g_MediaCodec_clazz); | |
495 jmethodID method_id = | |
496 base::android::MethodID::LazyGet< | |
497 base::android::MethodID::TYPE_INSTANCE>( | |
498 env, g_MediaCodec_clazz, | |
499 "setVideoScalingMode", | |
500 | |
501 "(" | |
502 "I" | |
503 ")" | |
504 "V", | |
505 &g_MediaCodec_setVideoScalingMode); | |
506 | |
507 env->CallVoidMethod(obj, | |
508 method_id, p0); | |
509 base::android::CheckException(env); | |
510 | |
511 } | |
512 | |
513 // Step 3: RegisterNatives. | |
514 | |
515 static bool RegisterNativesImpl(JNIEnv* env) { | |
516 | |
517 g_MediaCodec_clazz = reinterpret_cast<jclass>(env->NewGlobalRef( | |
518 base::android::GetUnscopedClass(env, kMediaCodecClassPath))); | |
519 return true; | |
520 } | |
521 } // namespace JNI_MediaCodec | |
522 | |
523 #endif // android_media_MediaCodec_JNI | |
OLD | NEW |