180922886Sopenharmony_ci/*
280922886Sopenharmony_ci * Copyright (c) 2024 Huawei Device Co., Ltd.
380922886Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
480922886Sopenharmony_ci * you may not use this file except in compliance with the License.
580922886Sopenharmony_ci * You may obtain a copy of the License at
680922886Sopenharmony_ci *
780922886Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
880922886Sopenharmony_ci *
980922886Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1080922886Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1180922886Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1280922886Sopenharmony_ci * See the License for the specific language governing permissions and
1380922886Sopenharmony_ci * limitations under the License.
1480922886Sopenharmony_ci */
1580922886Sopenharmony_ci
1680922886Sopenharmony_ci/**
1780922886Sopenharmony_ci * @addtogroup OHAVSession
1880922886Sopenharmony_ci * @{
1980922886Sopenharmony_ci *
2080922886Sopenharmony_ci * @brief Provide the definition of the C interface for the avsession module.
2180922886Sopenharmony_ci *
2280922886Sopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.Core
2380922886Sopenharmony_ci *
2480922886Sopenharmony_ci * @since 13
2580922886Sopenharmony_ci * @version 1.0
2680922886Sopenharmony_ci */
2780922886Sopenharmony_ci
2880922886Sopenharmony_ci/**
2980922886Sopenharmony_ci * @file native_avmetadata.h
3080922886Sopenharmony_ci *
3180922886Sopenharmony_ci * @brief Declare avmetadata builder related interfaces.
3280922886Sopenharmony_ci *
3380922886Sopenharmony_ci * @library libohavsession.so
3480922886Sopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.Core
3580922886Sopenharmony_ci * @kit AVSessionKit
3680922886Sopenharmony_ci * @since 13
3780922886Sopenharmony_ci * @version 1.0
3880922886Sopenharmony_ci */
3980922886Sopenharmony_ci
4080922886Sopenharmony_ci#ifndef NATIVE_AVMETADATA_H
4180922886Sopenharmony_ci#define NATIVE_AVMETADATA_H
4280922886Sopenharmony_ci
4380922886Sopenharmony_ci#include <stdint.h>
4480922886Sopenharmony_ci
4580922886Sopenharmony_ci#ifdef __cplusplus
4680922886Sopenharmony_ciextern "C" {
4780922886Sopenharmony_ci#endif
4880922886Sopenharmony_ci
4980922886Sopenharmony_ci/**
5080922886Sopenharmony_ci * @brief AVMetadata error code
5180922886Sopenharmony_ci *
5280922886Sopenharmony_ci * @since 13
5380922886Sopenharmony_ci * @version 1.0
5480922886Sopenharmony_ci */
5580922886Sopenharmony_citypedef enum {
5680922886Sopenharmony_ci    /**
5780922886Sopenharmony_ci     * @error The call was successful.
5880922886Sopenharmony_ci     */
5980922886Sopenharmony_ci    AVMETADATA_SUCCESS = 0,
6080922886Sopenharmony_ci
6180922886Sopenharmony_ci    /**
6280922886Sopenharmony_ci     * @error This means that the function was executed with an invalid input parameter.
6380922886Sopenharmony_ci     */
6480922886Sopenharmony_ci    AVMETADATA_ERROR_INVALID_PARAM = 1,
6580922886Sopenharmony_ci
6680922886Sopenharmony_ci    /**
6780922886Sopenharmony_ci     * @error This means there is no memory left.
6880922886Sopenharmony_ci     */
6980922886Sopenharmony_ci    AVMETADATA_ERROR_NO_MEMORY = 2,
7080922886Sopenharmony_ci} AVMetadata_Result;
7180922886Sopenharmony_ci
7280922886Sopenharmony_ci/**
7380922886Sopenharmony_ci * @brief Defines the skip interval when fastforward or rewind.
7480922886Sopenharmony_ci *
7580922886Sopenharmony_ci * @since 13
7680922886Sopenharmony_ci * @version 1.0
7780922886Sopenharmony_ci */
7880922886Sopenharmony_citypedef enum {
7980922886Sopenharmony_ci    /**
8080922886Sopenharmony_ci     * @brief 10 seconds
8180922886Sopenharmony_ci     */
8280922886Sopenharmony_ci    SECONDS_10 = 10,
8380922886Sopenharmony_ci
8480922886Sopenharmony_ci    /**
8580922886Sopenharmony_ci     * @brief 15 seconds
8680922886Sopenharmony_ci     */
8780922886Sopenharmony_ci    SECONDS_15 = 15,
8880922886Sopenharmony_ci
8980922886Sopenharmony_ci    /**
9080922886Sopenharmony_ci     * @brief 30 seconds
9180922886Sopenharmony_ci     */
9280922886Sopenharmony_ci    SECONDS_30 = 30,
9380922886Sopenharmony_ci} AVMetadata_SkipIntervals;
9480922886Sopenharmony_ci
9580922886Sopenharmony_ci/**
9680922886Sopenharmony_ci * @brief Display tag
9780922886Sopenharmony_ci *
9880922886Sopenharmony_ci * @since 13
9980922886Sopenharmony_ci * @version 1.0
10080922886Sopenharmony_ci */
10180922886Sopenharmony_citypedef enum {
10280922886Sopenharmony_ci    /**
10380922886Sopenharmony_ci     * @brief Indicate the audio vivid property.
10480922886Sopenharmony_ci     */
10580922886Sopenharmony_ci    AVSESSION_DISPLAYTAG_AUDIO_VIVID = 1,
10680922886Sopenharmony_ci} AVMetadata_DisplayTag;
10780922886Sopenharmony_ci
10880922886Sopenharmony_ci/**
10980922886Sopenharmony_ci * @brief Declaring the avmetadata builder.
11080922886Sopenharmony_ci * The instance of builder is used for creating avmetadata.
11180922886Sopenharmony_ci *
11280922886Sopenharmony_ci * @since 13
11380922886Sopenharmony_ci * @version 1.0
11480922886Sopenharmony_ci */
11580922886Sopenharmony_citypedef struct OH_AVMetadataBuilderStruct OH_AVMetadataBuilder;
11680922886Sopenharmony_ci
11780922886Sopenharmony_ci/**
11880922886Sopenharmony_ci * @brief Declaring the avmetadata.
11980922886Sopenharmony_ci * The instance of avmetadata set by application for current resource.
12080922886Sopenharmony_ci *
12180922886Sopenharmony_ci * @since 13
12280922886Sopenharmony_ci * @version 1.0
12380922886Sopenharmony_ci */
12480922886Sopenharmony_citypedef struct OH_AVMetadataStruct OH_AVMetadata;
12580922886Sopenharmony_ci
12680922886Sopenharmony_ci/**
12780922886Sopenharmony_ci * @brief Creates an AVMetadataBuilder instance.
12880922886Sopenharmony_ci *
12980922886Sopenharmony_ci * @param builder The builder reference to the created result.
13080922886Sopenharmony_ci * @return Function result code:
13180922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
13280922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM} The param of builder is nullptr.
13380922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_NO_MEMORY} No memory to allocate a new instance.
13480922886Sopenharmony_ci * @since 13
13580922886Sopenharmony_ci */
13680922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_Create(OH_AVMetadataBuilder** builder);
13780922886Sopenharmony_ci
13880922886Sopenharmony_ci/**
13980922886Sopenharmony_ci * @brief Destroy a bulder.
14080922886Sopenharmony_ci *
14180922886Sopenharmony_ci * @param builder The metadata builder instance pointer
14280922886Sopenharmony_ci * @return Function result code:
14380922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
14480922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM} The param of builder is nullptr.
14580922886Sopenharmony_ci * @since 13
14680922886Sopenharmony_ci */
14780922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_Destroy(OH_AVMetadataBuilder* builder);
14880922886Sopenharmony_ci
14980922886Sopenharmony_ci/**
15080922886Sopenharmony_ci * @brief Set current asset id of the resource
15180922886Sopenharmony_ci *
15280922886Sopenharmony_ci * @param builder The metadata builder instance pointer
15380922886Sopenharmony_ci * @param assetId The current assetId of resource.
15480922886Sopenharmony_ci * @return Function result code:
15580922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
15680922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
15780922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
15880922886Sopenharmony_ci *                                                 2.The param of assetId is nullptr.
15980922886Sopenharmony_ci * @since 13
16080922886Sopenharmony_ci */
16180922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetAssetId(OH_AVMetadataBuilder* builder, const char* assetId);
16280922886Sopenharmony_ci
16380922886Sopenharmony_ci/**
16480922886Sopenharmony_ci * @brief Set the title of the resource
16580922886Sopenharmony_ci *
16680922886Sopenharmony_ci * @param builder The metadata builder instance pointer
16780922886Sopenharmony_ci * @param title The title of resource.
16880922886Sopenharmony_ci * @return Function result code:
16980922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
17080922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
17180922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
17280922886Sopenharmony_ci *                                                 2.The param of title is nullptr.
17380922886Sopenharmony_ci * @since 13
17480922886Sopenharmony_ci */
17580922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetTitle(OH_AVMetadataBuilder* builder, const char* title);
17680922886Sopenharmony_ci
17780922886Sopenharmony_ci/**
17880922886Sopenharmony_ci * @brief Set the artist of the resource
17980922886Sopenharmony_ci *
18080922886Sopenharmony_ci * @param builder The metadata builder instance pointer
18180922886Sopenharmony_ci * @param artist The artist of resource.
18280922886Sopenharmony_ci * @return Function result code:
18380922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
18480922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
18580922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
18680922886Sopenharmony_ci *                                                 2.The param of artist is nullptr.
18780922886Sopenharmony_ci * @since 13
18880922886Sopenharmony_ci */
18980922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetArtist(OH_AVMetadataBuilder* builder, const char* artist);
19080922886Sopenharmony_ci
19180922886Sopenharmony_ci/**
19280922886Sopenharmony_ci * @brief Set the author of the resource
19380922886Sopenharmony_ci *
19480922886Sopenharmony_ci * @param builder The metadata builder instance pointer
19580922886Sopenharmony_ci * @param author The author of resource.
19680922886Sopenharmony_ci * @return Function result code:
19780922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
19880922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
19980922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
20080922886Sopenharmony_ci *                                                 2.The param of author is nullptr.
20180922886Sopenharmony_ci * @since 13
20280922886Sopenharmony_ci */
20380922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetAuthor(OH_AVMetadataBuilder* builder, const char* author);
20480922886Sopenharmony_ci
20580922886Sopenharmony_ci/**
20680922886Sopenharmony_ci * @brief Set the album information
20780922886Sopenharmony_ci *
20880922886Sopenharmony_ci * @param builder The metadata builder instance pointer
20980922886Sopenharmony_ci * @param album The album name
21080922886Sopenharmony_ci * @return Return code:
21180922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
21280922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
21380922886Sopenharmony_ci *                                                 1. The param of builder is nullptr.
21480922886Sopenharmony_ci *                                                 2. The param of album is nullptr.
21580922886Sopenharmony_ci * @since 13
21680922886Sopenharmony_ci */
21780922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetAlbum(OH_AVMetadataBuilder* builder, const char* album);
21880922886Sopenharmony_ci
21980922886Sopenharmony_ci/**
22080922886Sopenharmony_ci * @brief Set the writer of the resource
22180922886Sopenharmony_ci *
22280922886Sopenharmony_ci * @param builder The metadata builder instance pointer
22380922886Sopenharmony_ci * @param writer The writer of resource.
22480922886Sopenharmony_ci * @return Function result code:
22580922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
22680922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
22780922886Sopenharmony_ci *                                                 1. The param of builder is nullptr.
22880922886Sopenharmony_ci *                                                 2. The param of writer is nullptr.
22980922886Sopenharmony_ci * @since 13
23080922886Sopenharmony_ci */
23180922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetWriter(OH_AVMetadataBuilder* builder, const char* writer);
23280922886Sopenharmony_ci
23380922886Sopenharmony_ci/**
23480922886Sopenharmony_ci * @brief Set the composer of the resource
23580922886Sopenharmony_ci *
23680922886Sopenharmony_ci * @param builder The metadata builder instance pointer
23780922886Sopenharmony_ci * @param composer The composer of resource.
23880922886Sopenharmony_ci * @return Function result code:
23980922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
24080922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
24180922886Sopenharmony_ci *                                                 1. The param of builder is nullptr.
24280922886Sopenharmony_ci *                                                 2. The param of composer is nullptr.
24380922886Sopenharmony_ci * @since 13
24480922886Sopenharmony_ci */
24580922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetComposer(OH_AVMetadataBuilder* builder, const char* composer);
24680922886Sopenharmony_ci
24780922886Sopenharmony_ci/**
24880922886Sopenharmony_ci * @brief Set the duration of the resource
24980922886Sopenharmony_ci *
25080922886Sopenharmony_ci * @param builder The metadata builder instance pointer
25180922886Sopenharmony_ci * @param duration The duration of resource, in miliseconds
25280922886Sopenharmony_ci * @return Function result code:
25380922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
25480922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM} The param of builder is nullptr.
25580922886Sopenharmony_ci * @since 13
25680922886Sopenharmony_ci */
25780922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetDuration(OH_AVMetadataBuilder* builder, int64_t duration);
25880922886Sopenharmony_ci
25980922886Sopenharmony_ci/**
26080922886Sopenharmony_ci * @brief Set the media image uri of the resource
26180922886Sopenharmony_ci *
26280922886Sopenharmony_ci * @param builder The metadata builder instance pointer
26380922886Sopenharmony_ci * @param mediaImageUri The mediaImageUri of resource.
26480922886Sopenharmony_ci * @return Function result code:
26580922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
26680922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
26780922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
26880922886Sopenharmony_ci *                                                 2.The param of mediaImageUri nullptr.
26980922886Sopenharmony_ci * @since 13
27080922886Sopenharmony_ci */
27180922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetMediaImageUri(OH_AVMetadataBuilder* builder, const char* mediaImageUri);
27280922886Sopenharmony_ci
27380922886Sopenharmony_ci/**
27480922886Sopenharmony_ci * @brief Set the subtitle of the resource
27580922886Sopenharmony_ci *
27680922886Sopenharmony_ci * @param builder The metadata builder instance pointer
27780922886Sopenharmony_ci * @param subtitle The subtitle of resource.
27880922886Sopenharmony_ci * @return Function result code:
27980922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
28080922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
28180922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
28280922886Sopenharmony_ci *                                                 2.The param of subtitle nullptr.
28380922886Sopenharmony_ci * @since 13
28480922886Sopenharmony_ci */
28580922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetSubtitle(OH_AVMetadataBuilder* builder, const char* subtitle);
28680922886Sopenharmony_ci
28780922886Sopenharmony_ci/**
28880922886Sopenharmony_ci * @brief Set the media description of the resource
28980922886Sopenharmony_ci *
29080922886Sopenharmony_ci * @param builder The metadata builder instance pointer
29180922886Sopenharmony_ci * @param description The description of resource.
29280922886Sopenharmony_ci * @return Function result code:
29380922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
29480922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
29580922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
29680922886Sopenharmony_ci *                                                 2.The param of description nullptr.
29780922886Sopenharmony_ci * @since 13
29880922886Sopenharmony_ci */
29980922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetDescription(OH_AVMetadataBuilder* builder, const char* description);
30080922886Sopenharmony_ci
30180922886Sopenharmony_ci/**
30280922886Sopenharmony_ci * @brief Set the media lyric content of the resource
30380922886Sopenharmony_ci *
30480922886Sopenharmony_ci * @param builder The metadata builder instance pointer
30580922886Sopenharmony_ci * @param lyric The lyric of resource.
30680922886Sopenharmony_ci * @return Function result code:
30780922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
30880922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
30980922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
31080922886Sopenharmony_ci *                                                 2.The param of lyric nullptr.
31180922886Sopenharmony_ci * @since 13
31280922886Sopenharmony_ci */
31380922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetLyric(OH_AVMetadataBuilder* builder, const char* lyric);
31480922886Sopenharmony_ci
31580922886Sopenharmony_ci/**
31680922886Sopenharmony_ci * @brief Set the skip intervals of the resource
31780922886Sopenharmony_ci *
31880922886Sopenharmony_ci * @param builder The metadata builder instance pointer
31980922886Sopenharmony_ci * @param intervals The intervals of resource, only can be set : 10, 15, 30
32080922886Sopenharmony_ci * @return Function result code:
32180922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
32280922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
32380922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
32480922886Sopenharmony_ci *                                                 2.The param of intervals is invalid.
32580922886Sopenharmony_ci * @since 13
32680922886Sopenharmony_ci */
32780922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetSkipIntervals(OH_AVMetadataBuilder* builder,
32880922886Sopenharmony_ci    AVMetadata_SkipIntervals intervals);
32980922886Sopenharmony_ci
33080922886Sopenharmony_ci/**
33180922886Sopenharmony_ci * @brief Set the display tags of the resource
33280922886Sopenharmony_ci *
33380922886Sopenharmony_ci * @param builder The metadata builder instance pointer
33480922886Sopenharmony_ci * @param tags The display tags of resource which are supported by this app to be displayed on the media center
33580922886Sopenharmony_ci * @return Function result code:
33680922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
33780922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM} The param of builder is nullptr.
33880922886Sopenharmony_ci * @since 13
33980922886Sopenharmony_ci */
34080922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetDisplayTags(OH_AVMetadataBuilder* builder, int32_t tags);
34180922886Sopenharmony_ci
34280922886Sopenharmony_ci/**
34380922886Sopenharmony_ci * @brief Create the avmetadta.
34480922886Sopenharmony_ci *
34580922886Sopenharmony_ci * @param builder The metadata builder instance pointer
34680922886Sopenharmony_ci * @param avMetadata Pointer to a viriable to receive the avMetadata object.
34780922886Sopenharmony_ci * @return Function result code:
34880922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
34980922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_NO_MEMORY} No memory to allocate a new instance.
35080922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM}:
35180922886Sopenharmony_ci *                                                 1.The param of builder is nullptr;
35280922886Sopenharmony_ci *                                                 2.The param of avMetadata is nullptr.
35380922886Sopenharmony_ci * @since 13
35480922886Sopenharmony_ci */
35580922886Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_GenerateAVMetadata(OH_AVMetadataBuilder* builder,
35680922886Sopenharmony_ci    OH_AVMetadata** avMetadata);
35780922886Sopenharmony_ci
35880922886Sopenharmony_ci/**
35980922886Sopenharmony_ci * @brief Request to release the avmetadta.
36080922886Sopenharmony_ci *
36180922886Sopenharmony_ci * @param avMetadata Pointer to a viriable to receive the avMetadata object.
36280922886Sopenharmony_ci * @return Function result code:
36380922886Sopenharmony_ci *         {@link AVMETADATA_SUCCESS} If the execution is successful.
36480922886Sopenharmony_ci *         {@link AVMETADATA_ERROR_INVALID_PARAM} The param of avMetadata is nullptr.
36580922886Sopenharmony_ci * @since 13
36680922886Sopenharmony_ci */
36780922886Sopenharmony_ciAVMetadata_Result OH_AVMetadata_Destroy(OH_AVMetadata* avMetadata);
36880922886Sopenharmony_ci
36980922886Sopenharmony_ci#ifdef __cplusplus
37080922886Sopenharmony_ci}
37180922886Sopenharmony_ci#endif
37280922886Sopenharmony_ci
37380922886Sopenharmony_ci#endif // NATIVE_AVMETADATA_H
37480922886Sopenharmony_ci/** @} */