public unsafe Transcoder(global::Org.Jcodec.Movtool.Streaming.Tracks.Transcode2AVCTrack __self)
                : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer)
            {
                if (((global::Java.Lang.Object) this).Handle != IntPtr.Zero)
                {
                    return;
                }

                try {
                    JValue *__args = stackalloc JValue [1];
                    __args [0] = new JValue(__self);
                    if (GetType() != typeof(Transcoder))
                    {
                        SetHandle(
                            global::Android.Runtime.JNIEnv.StartCreateInstance(GetType(), "(L" + global::Android.Runtime.JNIEnv.GetJniName(GetType().DeclaringType) + ";)V", __args),
                            JniHandleOwnership.TransferLocalRef);
                        global::Android.Runtime.JNIEnv.FinishCreateInstance(((global::Java.Lang.Object) this).Handle, "(L" + global::Android.Runtime.JNIEnv.GetJniName(GetType().DeclaringType) + ";)V", __args);
                        return;
                    }

                    if (id_ctor_Lorg_jcodec_movtool_streaming_tracks_Transcode2AVCTrack_ == IntPtr.Zero)
                    {
                        id_ctor_Lorg_jcodec_movtool_streaming_tracks_Transcode2AVCTrack_ = JNIEnv.GetMethodID(class_ref, "<init>", "(Lorg/jcodec/movtool/streaming/tracks/Transcode2AVCTrack;)V");
                    }
                    SetHandle(
                        global::Android.Runtime.JNIEnv.StartCreateInstance(class_ref, id_ctor_Lorg_jcodec_movtool_streaming_tracks_Transcode2AVCTrack_, __args),
                        JniHandleOwnership.TransferLocalRef);
                    JNIEnv.FinishCreateInstance(((global::Java.Lang.Object) this).Handle, class_ref, id_ctor_Lorg_jcodec_movtool_streaming_tracks_Transcode2AVCTrack_, __args);
                } finally {
                }
            }
        static int n_SelectScaleFactor_Lorg_jcodec_common_model_Size_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
        {
            global::Org.Jcodec.Movtool.Streaming.Tracks.Transcode2AVCTrack __this = global::Java.Lang.Object.GetObject <global::Org.Jcodec.Movtool.Streaming.Tracks.Transcode2AVCTrack> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            global::Org.Jcodec.Common.Model.Size p0 = global::Java.Lang.Object.GetObject <global::Org.Jcodec.Common.Model.Size> (native_p0, JniHandleOwnership.DoNotTransfer);
            int __ret = __this.SelectScaleFactor(p0);

            return(__ret);
        }
 static void n_Close(IntPtr jnienv, IntPtr native__this)
 {
     global::Org.Jcodec.Movtool.Streaming.Tracks.Transcode2AVCTrack __this = global::Java.Lang.Object.GetObject <global::Org.Jcodec.Movtool.Streaming.Tracks.Transcode2AVCTrack> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     __this.Close();
 }
 static int n_GetPreferredTimescale(IntPtr jnienv, IntPtr native__this)
 {
     global::Org.Jcodec.Movtool.Streaming.Tracks.Transcode2AVCTrack __this = global::Java.Lang.Object.GetObject <global::Org.Jcodec.Movtool.Streaming.Tracks.Transcode2AVCTrack> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     return(__this.PreferredTimescale);
 }