/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class jp_sourceforge_nicoro_FFmpegVideoDecoder */

#ifndef _Included_jp_sourceforge_nicoro_FFmpegVideoDecoder
#define _Included_jp_sourceforge_nicoro_FFmpegVideoDecoder
#ifdef __cplusplus
extern "C" {
#endif
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_MIN_PRIORITY
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_MIN_PRIORITY 1L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_NORM_PRIORITY
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_NORM_PRIORITY 5L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_MAX_PRIORITY
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_MAX_PRIORITY 10L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_DEBUG_LOGV
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_DEBUG_LOGV 0L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_DEBUG_LOGD
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_DEBUG_LOGD 1L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_VIDEO_BUFFER_CACHE_SIZE
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_VIDEO_BUFFER_CACHE_SIZE 20L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_VIDEO_BUFFER_EMPTY_POOL_MAX
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_VIDEO_BUFFER_EMPTY_POOL_MAX 20L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_INVALID
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_INVALID -2147483647L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_PROGRESS
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_PROGRESS 2147483646L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_VIDEO
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_VIDEO 0L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_AUDIO
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_AUDIO 1L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_VIDEO_SKIP
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_VIDEO_SKIP 2L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_SKIP
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_SKIP 3L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_ERROR_OR_END
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_DECODE_FRAME_ERROR_OR_END -1L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_FRAME_TYPE_VIDEO
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_FRAME_TYPE_VIDEO 0L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_FRAME_TYPE_AUDIO
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_FRAME_TYPE_AUDIO 1L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_FRAME_TYPE_UNKNOWN
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_FRAME_TYPE_UNKNOWN -1L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_FRAME_TYPE_ERROR_OR_END
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_FRAME_TYPE_ERROR_OR_END -2L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_NONE
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_NONE 0L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_NONREF
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_NONREF 1L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_BIDIR
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_BIDIR 2L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_NONKEY
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_NONKEY 3L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_SIMPLE
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_SIMPLE 4L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_UNTIL_KEY_FRAME
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_SKIP_VIDEO_FRAME_UNTIL_KEY_FRAME 5L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_POINT
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_POINT 0L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_FAST_BILINEAR
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_FAST_BILINEAR 1L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_BILINEAR
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_BILINEAR 2L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_BICUBLIN
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_BICUBLIN 3L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_BICUBIC
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_BICUBIC 4L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_SPLINE
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_SPLINE 5L
#undef jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_SINC
#define jp_sourceforge_nicoro_FFmpegVideoDecoder_CODE_RESCALE_SINC 6L
/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    createNative
 * Signature: ()J
 */
JNIEXPORT jlong JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_createNative
  (JNIEnv *, jobject);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    destroyNative
 * Signature: (J)V
 */
JNIEXPORT void JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_destroyNative
  (JNIEnv *, jobject, jlong);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    loadFile
 * Signature: (JLjava/lang/String;)V
 */
JNIEXPORT void JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_loadFile
  (JNIEnv *, jobject, jlong, jstring);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    loadStream
 * Signature: (J[BZLjp/sourceforge/nicoro/FFmpegIOCallback;Ljp/sourceforge/nicoro/FFmpegData;)V
 */
JNIEXPORT void JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_loadStream
  (JNIEnv *, jobject, jlong, jbyteArray, jboolean, jobject, jobject);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    createAudioTrack
 * Signature: (JLjp/sourceforge/nicoro/FFmpegInfoCallback;)V
 */
JNIEXPORT void JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_createAudioTrack
  (JNIEnv *, jobject, jlong, jobject);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    createDrawBuffer
 * Signature: (JLjp/sourceforge/nicoro/FFmpegInfoCallback;)V
 */
JNIEXPORT void JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_createDrawBuffer
  (JNIEnv *, jobject, jlong, jobject);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    decodeFrame
 * Signature: (J[II[BLjp/sourceforge/nicoro/FFmpegIOCallback;Ljp/sourceforge/nicoro/FFmpegData;)I
 */
JNIEXPORT jint JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_decodeFrame
  (JNIEnv *, jobject, jlong, jintArray, jint, jbyteArray, jobject, jobject);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    readFrame
 * Signature: (J[BLjp/sourceforge/nicoro/FFmpegIOCallback;)I
 */
JNIEXPORT jint JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_readFrame
  (JNIEnv *, jobject, jlong, jbyteArray, jobject);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    decodeVideo
 * Signature: (J[ILjp/sourceforge/nicoro/FFmpegData;I)I
 */
JNIEXPORT jint JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_decodeVideo
  (JNIEnv *, jobject, jlong, jintArray, jobject, jint);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    decodeVideo16bit
 * Signature: (JLjava/nio/ByteBuffer;Ljp/sourceforge/nicoro/FFmpegData;I)I
 */
JNIEXPORT jint JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_decodeVideo16bit
  (JNIEnv *, jobject, jlong, jobject, jobject, jint);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    decodeAudio
 * Signature: (JLjp/sourceforge/nicoro/FFmpegData;)Z
 */
JNIEXPORT jboolean JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_decodeAudio
  (JNIEnv *, jobject, jlong, jobject);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    seekFrameBySecond
 * Signature: (JI)I
 */
JNIEXPORT jint JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_seekFrameBySecond
  (JNIEnv *, jobject, jlong, jint);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    reopenInputStream
 * Signature: (J[BLjp/sourceforge/nicoro/FFmpegIOCallback;)V
 */
JNIEXPORT void JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_reopenInputStream
  (JNIEnv *, jobject, jlong, jbyteArray, jobject);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    setRescaleFlag
 * Signature: (JI)V
 */
JNIEXPORT void JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_setRescaleFlag
  (JNIEnv *, jobject, jlong, jint);

/*
 * Class:     jp_sourceforge_nicoro_FFmpegVideoDecoder
 * Method:    copyDirect
 * Signature: (Ljava/nio/ByteBuffer;I[SII)V
 */
JNIEXPORT void JNICALL Java_jp_sourceforge_nicoro_FFmpegVideoDecoder_copyDirect
  (JNIEnv *, jclass, jobject, jint, jshortArray, jint, jint);

#ifdef __cplusplus
}
#endif
#endif
