1 /* SPDX-License-Identifier: Apache-2.0 OR MIT */
2 /*
3 * Copyright (c) 2025 Rockchip Electronics Co., Ltd.
4 */
5
6 #define MODULE_TAG "kmpp_frame_test"
7
8 #include "mpp_debug.h"
9 #include "kmpp_frame.h"
10
11 #define KMPP_FRAME_TEST_SIZE 1024
12
13 #define TEST_CHECK(ret, func, ...) \
14 do { \
15 ret = func(__VA_ARGS__); \
16 if (ret) { \
17 mpp_err(MODULE_TAG " %s failed ret %d\n", #func, ret); \
18 goto failed; \
19 } \
20 } while (0)
21
main()22 int main()
23 {
24 KmppFrame frame = NULL;
25 rk_u32 width = 1920;
26 rk_u32 height = 1080;
27 rk_u32 val = 0;
28 rk_s32 ret = rk_ok;
29
30 mpp_log(MODULE_TAG " start\n");
31
32 TEST_CHECK(ret, kmpp_frame_get, &frame);
33 TEST_CHECK(ret, kmpp_frame_set_width, frame, width);
34 TEST_CHECK(ret, kmpp_frame_set_height, frame, height);
35
36 kmpp_frame_dump(frame, "test");
37
38 TEST_CHECK(ret, kmpp_frame_get_width, frame, &val);
39 mpp_assert(val == width);
40 TEST_CHECK(ret, kmpp_frame_get_height, frame, &val);
41 mpp_assert(val == height);
42
43 failed:
44 kmpp_frame_put(frame);
45
46 mpp_log(MODULE_TAG " %s\n", ret ? "failed" : "success");
47 return ret;
48 }
49