androidmedia: new prototype for color_format/video_format conversion

In case of multi-color_formats are
mapped to one video_format, then map that video_format back will
not give the original color_format, which causes
gst_amc_codec_configure failed with something like
'does not support color format N'.

The new prototype involves with GstAmcCodecInfo and mime, which
helps to check whether the converted color_format is supported by
the codec.

This also helps to move fixups for incorrect-reported color-format to
the conversion functions.
androidmedia: add gst_amc_color_format_copy

gst_amc_color_format_copy will copy in/out a frame resides at a
GstAmcBuffer. Lots of codes in gst_amc_video_*_fill_buffer are moved to
this new function.
androidmedia: add a COLOR_FormatYCbYCr to GST_VIDEO_FORMAT_YUY2 mapping.

OMX.k3.video.decoder.avc incorrectly reports supporting COLOR_FormatYCbYCr,
which actually supports COLOR_FormatYUV420SemiPlanar.

There are hacks for this in gst_amc_video_format_to_color_format,
gst_amc_color_format_to_video_format and gst_amc_color_format_info_set.

Though this codec will be ignored because of "has unknown color formats",
So add a mapping for COLOR_FormatYCbYCr here to make the color format known.