1*437bfbebSnyanmisaka /*
2*437bfbebSnyanmisaka * Copyright 2020 Rockchip Electronics Co. LTD
3*437bfbebSnyanmisaka *
4*437bfbebSnyanmisaka * Licensed under the Apache License, Version 2.0 (the "License");
5*437bfbebSnyanmisaka * you may not use this file except in compliance with the License.
6*437bfbebSnyanmisaka * You may obtain a copy of the License at
7*437bfbebSnyanmisaka *
8*437bfbebSnyanmisaka * http://www.apache.org/licenses/LICENSE-2.0
9*437bfbebSnyanmisaka *
10*437bfbebSnyanmisaka * Unless required by applicable law or agreed to in writing, software
11*437bfbebSnyanmisaka * distributed under the License is distributed on an "AS IS" BASIS,
12*437bfbebSnyanmisaka * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*437bfbebSnyanmisaka * See the License for the specific language governing permissions and
14*437bfbebSnyanmisaka * limitations under the License.
15*437bfbebSnyanmisaka */
16*437bfbebSnyanmisaka
17*437bfbebSnyanmisaka #define MODULE_TAG "mpp_dec_cfg_test"
18*437bfbebSnyanmisaka
19*437bfbebSnyanmisaka #include "mpp_log.h"
20*437bfbebSnyanmisaka #include "mpp_mem.h"
21*437bfbebSnyanmisaka #include "mpp_time.h"
22*437bfbebSnyanmisaka #include "mpp_common.h"
23*437bfbebSnyanmisaka
24*437bfbebSnyanmisaka #include "rk_vdec_cfg.h"
25*437bfbebSnyanmisaka #include "mpp_dec_cfg.h"
26*437bfbebSnyanmisaka
main()27*437bfbebSnyanmisaka int main()
28*437bfbebSnyanmisaka {
29*437bfbebSnyanmisaka MPP_RET ret = MPP_OK;
30*437bfbebSnyanmisaka MppDecCfg cfg;
31*437bfbebSnyanmisaka RK_S64 end = 0;
32*437bfbebSnyanmisaka RK_S64 start = 0;
33*437bfbebSnyanmisaka
34*437bfbebSnyanmisaka mpp_dec_cfg_show();
35*437bfbebSnyanmisaka
36*437bfbebSnyanmisaka mpp_log("mpp_dec_cfg_test start\n");
37*437bfbebSnyanmisaka
38*437bfbebSnyanmisaka ret = mpp_dec_cfg_init(&cfg);
39*437bfbebSnyanmisaka if (ret) {
40*437bfbebSnyanmisaka mpp_err("mpp_dec_cfg_init failed\n");
41*437bfbebSnyanmisaka goto DONE;
42*437bfbebSnyanmisaka }
43*437bfbebSnyanmisaka
44*437bfbebSnyanmisaka RK_S32 fast_out = 1;
45*437bfbebSnyanmisaka
46*437bfbebSnyanmisaka MppDecCfgSet *impl = (MppDecCfgSet *)cfg;
47*437bfbebSnyanmisaka
48*437bfbebSnyanmisaka mpp_log("before set: fast_out %d\n", impl->base.fast_out);
49*437bfbebSnyanmisaka
50*437bfbebSnyanmisaka start = mpp_time();
51*437bfbebSnyanmisaka ret = mpp_dec_cfg_set_u32(cfg, "base:fast_out", fast_out);
52*437bfbebSnyanmisaka end = mpp_time();
53*437bfbebSnyanmisaka mpp_log("set u32 time %lld us\n", end - start);
54*437bfbebSnyanmisaka
55*437bfbebSnyanmisaka mpp_log("after get: fast_out %d\n", fast_out);
56*437bfbebSnyanmisaka
57*437bfbebSnyanmisaka ret = mpp_dec_cfg_deinit(cfg);
58*437bfbebSnyanmisaka if (ret) {
59*437bfbebSnyanmisaka mpp_err("mpp_dec_cfg_deinit failed\n");
60*437bfbebSnyanmisaka goto DONE;
61*437bfbebSnyanmisaka }
62*437bfbebSnyanmisaka
63*437bfbebSnyanmisaka DONE:
64*437bfbebSnyanmisaka mpp_log("mpp_dec_cfg_test done %s\n", ret ? "failed" : "success");
65*437bfbebSnyanmisaka return ret;
66*437bfbebSnyanmisaka }
67