If I use the mediarecorder class in Android to record the video, does the processor use the hardware or software encoder to encode the video data? The answer seems that it uses the software encoder but I want to use the hardware codec built in the IMX6 processor to encode the video data. Does the IMX6_R13.41_ANDROID_DEMO_IMAGE provide the shared library, which I can use JNI to call, to do the hardware encoding/decoding? Can the decoder output the RGB565 format? I want to use the SurfaceView class to show the video.