xref: /aosp_15_r20/frameworks/av/media/module/libapexcodecs/tests/ApexCodecsTest.cpp (revision ec779b8e0859a360c3d303172224686826e6e0e1)
1 #include <C2.h>
2 #include <C2Component.h>
3 
4 #include <apex/ApexCodecs.h>
5 
6 // static_asserts for enum values match
7 static_assert((uint32_t)APEXCODEC_STATUS_OK        == (uint32_t)C2_OK);
8 static_assert((uint32_t)APEXCODEC_STATUS_BAD_VALUE == (uint32_t)C2_BAD_VALUE);
9 static_assert((uint32_t)APEXCODEC_STATUS_BAD_INDEX == (uint32_t)C2_BAD_INDEX);
10 static_assert((uint32_t)APEXCODEC_STATUS_CANNOT_DO == (uint32_t)C2_CANNOT_DO);
11 static_assert((uint32_t)APEXCODEC_STATUS_DUPLICATE == (uint32_t)C2_DUPLICATE);
12 static_assert((uint32_t)APEXCODEC_STATUS_NOT_FOUND == (uint32_t)C2_NOT_FOUND);
13 static_assert((uint32_t)APEXCODEC_STATUS_BAD_STATE == (uint32_t)C2_BAD_STATE);
14 static_assert((uint32_t)APEXCODEC_STATUS_BLOCKING  == (uint32_t)C2_BLOCKING);
15 static_assert((uint32_t)APEXCODEC_STATUS_CANCELED  == (uint32_t)C2_CANCELED);
16 static_assert((uint32_t)APEXCODEC_STATUS_NO_MEMORY == (uint32_t)C2_NO_MEMORY);
17 static_assert((uint32_t)APEXCODEC_STATUS_REFUSED   == (uint32_t)C2_REFUSED);
18 static_assert((uint32_t)APEXCODEC_STATUS_TIMED_OUT == (uint32_t)C2_TIMED_OUT);
19 static_assert((uint32_t)APEXCODEC_STATUS_OMITTED   == (uint32_t)C2_OMITTED);
20 static_assert((uint32_t)APEXCODEC_STATUS_CORRUPTED == (uint32_t)C2_CORRUPTED);
21 static_assert((uint32_t)APEXCODEC_STATUS_NO_INIT   == (uint32_t)C2_NO_INIT);
22 
23 static_assert((uint32_t)APEXCODEC_KIND_OTHER   == (uint32_t)C2Component::KIND_OTHER);
24 static_assert((uint32_t)APEXCODEC_KIND_DECODER == (uint32_t)C2Component::KIND_DECODER);
25 static_assert((uint32_t)APEXCODEC_KIND_ENCODER == (uint32_t)C2Component::KIND_ENCODER);
26 
27 static_assert((uint32_t)APEXCODEC_DOMAIN_OTHER == (uint32_t)C2Component::DOMAIN_OTHER);
28 static_assert((uint32_t)APEXCODEC_DOMAIN_VIDEO == (uint32_t)C2Component::DOMAIN_VIDEO);
29 static_assert((uint32_t)APEXCODEC_DOMAIN_AUDIO == (uint32_t)C2Component::DOMAIN_AUDIO);
30 static_assert((uint32_t)APEXCODEC_DOMAIN_IMAGE == (uint32_t)C2Component::DOMAIN_IMAGE);
31 
32 static_assert((uint32_t)APEXCODEC_FLAG_DROP_FRAME    == (uint32_t)C2FrameData::FLAG_DROP_FRAME);
33 static_assert((uint32_t)APEXCODEC_FLAG_END_OF_STREAM == (uint32_t)C2FrameData::FLAG_END_OF_STREAM);
34 static_assert((uint32_t)APEXCODEC_FLAG_DISCARD_FRAME == (uint32_t)C2FrameData::FLAG_DISCARD_FRAME);
35 static_assert((uint32_t)APEXCODEC_FLAG_INCOMPLETE    == (uint32_t)C2FrameData::FLAG_INCOMPLETE);
36 static_assert((uint32_t)APEXCODEC_FLAG_CORRECTED     == (uint32_t)C2FrameData::FLAG_CORRECTED);
37 static_assert((uint32_t)APEXCODEC_FLAG_CORRUPT       == (uint32_t)C2FrameData::FLAG_CORRUPT);
38 static_assert((uint32_t)APEXCODEC_FLAG_CODEC_CONFIG  == (uint32_t)C2FrameData::FLAG_CODEC_CONFIG);
39 
40 static_assert((uint32_t)APEXCODEC_BUFFER_TYPE_INVALID        ==
41               (uint32_t)C2BufferData::INVALID);
42 static_assert((uint32_t)APEXCODEC_BUFFER_TYPE_LINEAR         ==
43               (uint32_t)C2BufferData::LINEAR);
44 static_assert((uint32_t)APEXCODEC_BUFFER_TYPE_LINEAR_CHUNKS  ==
45               (uint32_t)C2BufferData::LINEAR_CHUNKS);
46 static_assert((uint32_t)APEXCODEC_BUFFER_TYPE_GRAPHIC        ==
47               (uint32_t)C2BufferData::GRAPHIC);
48 static_assert((uint32_t)APEXCODEC_BUFFER_TYPE_GRAPHIC_CHUNKS ==
49               (uint32_t)C2BufferData::GRAPHIC_CHUNKS);
50 
51 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_QUERY_CURRENT  ==
52               (uint32_t)C2FieldSupportedValuesQuery::CURRENT);
53 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_QUERY_POSSIBLE ==
54               (uint32_t)C2FieldSupportedValuesQuery::POSSIBLE);
55 
56 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_EMPTY  ==
57               (uint32_t)C2FieldSupportedValues::EMPTY);
58 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_RANGE  ==
59               (uint32_t)C2FieldSupportedValues::RANGE);
60 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_VALUES ==
61               (uint32_t)C2FieldSupportedValues::VALUES);
62 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_FLAGS  ==
63               (uint32_t)C2FieldSupportedValues::FLAGS);
64 
65 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_TYPE_NONE   == (uint32_t)C2Value::NO_INIT);
66 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_TYPE_INT32  == (uint32_t)C2Value::INT32);
67 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_TYPE_UINT32 == (uint32_t)C2Value::UINT32);
68 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_TYPE_INT64  == (uint32_t)C2Value::INT64);
69 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_TYPE_UINT64 == (uint32_t)C2Value::UINT64);
70 static_assert((uint32_t)APEXCODEC_SUPPORTED_VALUES_TYPE_FLOAT  == (uint32_t)C2Value::FLOAT);
71 
72 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_BAD_TYPE       ==
73               (uint32_t)C2SettingResult::BAD_TYPE);
74 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_BAD_PORT       ==
75               (uint32_t)C2SettingResult::BAD_PORT);
76 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_BAD_INDEX      ==
77               (uint32_t)C2SettingResult::BAD_INDEX);
78 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_READ_ONLY      ==
79               (uint32_t)C2SettingResult::READ_ONLY);
80 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_MISMATCH       ==
81               (uint32_t)C2SettingResult::MISMATCH);
82 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_BAD_VALUE      ==
83               (uint32_t)C2SettingResult::BAD_VALUE);
84 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_CONFLICT       ==
85               (uint32_t)C2SettingResult::CONFLICT);
86 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_UNSUPPORTED    ==
87               (uint32_t)C2SettingResult::UNSUPPORTED);
88 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_INFO_BAD_VALUE ==
89               (uint32_t)C2SettingResult::INFO_BAD_VALUE);
90 static_assert((uint32_t)APEXCODEC_SETTING_RESULT_INFO_CONFLICT  ==
91               (uint32_t)C2SettingResult::INFO_CONFLICT);
92 
93 static_assert((uint32_t)APEXCODEC_PARAM_IS_REQUIRED   == (uint32_t)C2ParamDescriptor::IS_REQUIRED);
94 static_assert((uint32_t)APEXCODEC_PARAM_IS_PERSISTENT ==
95               (uint32_t)C2ParamDescriptor::IS_PERSISTENT);
96 static_assert((uint32_t)APEXCODEC_PARAM_IS_STRICT     == (uint32_t)C2ParamDescriptor::IS_STRICT);
97 static_assert((uint32_t)APEXCODEC_PARAM_IS_READ_ONLY  == (uint32_t)C2ParamDescriptor::IS_READ_ONLY);
98 static_assert((uint32_t)APEXCODEC_PARAM_IS_HIDDEN     == (uint32_t)C2ParamDescriptor::IS_HIDDEN);
99 static_assert((uint32_t)APEXCODEC_PARAM_IS_INTERNAL   == (uint32_t)C2ParamDescriptor::IS_INTERNAL);
100 static_assert((uint32_t)APEXCODEC_PARAM_IS_CONST      == (uint32_t)C2ParamDescriptor::IS_CONST);