initial version for HiP encoding support

BZ: 76823

1.  Support thread safe on Queue operations
2.  Support getOutput in different type codec
3.  Support getOutput multi calling for some output format
4.  Support non-block / timeout mode
5.  Support EOS
6.  Support B frame without reconstructed frame output, MRFLD done in driver, MFLD done in libMIX
7.  Support baseline/highprofile select
8.  Support HiP parameters
9.  Support CodedBuffer number setting
10. Support auto frame type detection for both HiP and baseline
11. Support add the high profile parameter and change the type of timestamp
12. Support refine the encode/getout block/nonblock mode with List container
13. Support auto reconstructed and reference frame management in driver, remove MFLD logic  (Done)
14. Support the new libva VAEncSliceParameterBufferH264 structure, substitute VAEncSliceParameterBuffer(BZ 75766)
15. refine the name style, refine the frame type detect, B frame has/not impact the frame num of GOP
16. refine the slice_type assignment
17. Support frame skip on MFLD
18. fix the klockwork issue

Change-Id: Ifbc230d8d0985e4411ac5b79f04d29a6edcf501d
Signed-off-by: jiguoliang <guoliang.ji@intel.com>
Reviewed-on: http://android.intel.com:8080/87040
Reviewed-by: Yuan, Shengquan <shengquan.yuan@intel.com>
Reviewed-by: Shi, PingX <pingx.shi@intel.com>
Tested-by: Shi, PingX <pingx.shi@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: cactus <cactus@intel.com>
14 files changed