提交 55332d9f 编写于 作者: Z Zhang Rui

android: expose setAvCodecOption method

上级 788ed1ef
......@@ -381,7 +381,12 @@ public final class IjkMediaPlayer extends SimpleMediaPlayer {
_setAvFormatOption(name, value);
}
public void setAvCodecOption(String name, String value) {
_setAvCodecOption(name, value);
}
private native void _setAvFormatOption(String name, String value);
private native void _setAvCodecOption(String name, String value);
@Override
public void setAudioStreamType(int streamtype) {
......
......@@ -288,6 +288,31 @@ IjkMediaPlayer_setAvFormatOption(JNIEnv *env, jobject thiz, jobject name, jobjec
ijkmp_dec_ref_p(&mp);
}
static void
IjkMediaPlayer_setAvCodecOption(JNIEnv *env, jobject thiz, jobject name, jobject value)
{
MPTRACE("IjkMediaPlayer_setAvCodecOption");
IjkMediaPlayer *mp = jni_get_media_player(env, thiz);
const char *c_name = NULL;
const char *c_value = NULL;
JNI_CHECK_GOTO(mp, env, "java/lang/IllegalStateException", "mpjni: setAvCodecOption: null mp", LABEL_RETURN);
c_name = (*env)->GetStringUTFChars(env, name, NULL);
JNI_CHECK_GOTO(c_name, env, "java/lang/OutOfMemoryError", "mpjni: setAvCodecOption: name.string oom", LABEL_RETURN);
c_value = (*env)->GetStringUTFChars(env, value, NULL);
JNI_CHECK_GOTO(c_name, env, "java/lang/OutOfMemoryError", "mpjni: setAvCodecOption: name.string oom", LABEL_RETURN);
ijkmp_set_codec_option(mp, c_name, c_value);
LABEL_RETURN:
if (c_name)
(*env)->ReleaseStringUTFChars(env, name, c_name);
if (c_value)
(*env)->ReleaseStringUTFChars(env, value, c_value);
ijkmp_dec_ref_p(&mp);
}
static void
IjkMediaPlayer_native_init(JNIEnv *env)
{
......@@ -436,6 +461,7 @@ static JNINativeMethod g_methods[] = {
{ "native_finalize", "()V", (void *) IjkMediaPlayer_native_finalize },
{ "_setAvFormatOption", "(Ljava/lang/String;Ljava/lang/String;)V", (void *) IjkMediaPlayer_setAvFormatOption },
{ "_setAvCodecOption", "(Ljava/lang/String;Ljava/lang/String;)V", (void *) IjkMediaPlayer_setAvCodecOption },
};
JNIEXPORT jint JNI_OnLoad(JavaVM *vm, void *reserved)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册