+void javaPrint(JNIEnv *env, jobject obj, const char* str)
+{
+ jclass clazz = (*env).GetObjectClass(obj);
+ jobject mobj = env->NewGlobalRef(obj);
+ jmethodID mmid = env->GetMethodID(clazz, "print", "(Ljava/lang/String;)V");
+ jstring jstr = env->NewStringUTF(str);
+ env->CallVoidMethod(mobj, mmid, jstr);
+ env->DeleteLocalRef(jstr);
+}
+
+JNIEnv *g_env;
+jobject g_obj;
+
+void custom_log222 (void *ptr, int level, const char* fmt, va_list vl){
+ static int print_prefix = 1;
+ char line[1024];
+ av_log_format_line(ptr, level, fmt, vl, line, sizeof(line), &print_prefix);
+ if (level <= AV_LOG_WARNING){
+ LOGE("%s", line);
+ javaPrint(g_env, g_obj, line);
+ } else {
+ //LOGE("%s", line);
+ //javaPrint(g_env, g_obj, line);
+ }
+}