public static extern void avcodec_get_frame_defaults(ref AVFrame pAVFrame);
public static extern int avcodec_encode_video(ref AVCodecContext pAVCodecContext, [In, Out]byte[] buf, int buf_size, ref AVFrame pAVFrame);
public static extern void avcodec_default_release_buffer(ref AVCodecContext pAVCodecContext, ref AVFrame pAVFrame);
public static extern int avcodec_default_get_buffer(ref AVCodecContext pAVCodecContext, ref AVFrame pAVFrame);
public static extern int avcodec_decode_video2(ref AVCodecContext pAVCodecContext, AVFrame* pAVFrame, [MarshalAs(UnmanagedType.Bool)]out bool got_picture_ptr, ref AVPacket packet);
public static extern int avcodec_decode_video(ref AVCodecContext pAVCodecContext, AVFrame* pAVFrame, [MarshalAs(UnmanagedType.Bool)]out bool got_picture_ptr, byte* buf, int buf_size);