17777dab0Sopenharmony_ci/* 27777dab0Sopenharmony_ci * Copyright (c) 2024 Huawei Device Co., Ltd. 37777dab0Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 47777dab0Sopenharmony_ci * you may not use this file except in compliance with the License. 57777dab0Sopenharmony_ci * You may obtain a copy of the License at 67777dab0Sopenharmony_ci * 77777dab0Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 87777dab0Sopenharmony_ci * 97777dab0Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 107777dab0Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 117777dab0Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 127777dab0Sopenharmony_ci * See the License for the specific language governing permissions and 137777dab0Sopenharmony_ci * limitations under the License. 147777dab0Sopenharmony_ci */ 157777dab0Sopenharmony_ci 167777dab0Sopenharmony_ci/** 177777dab0Sopenharmony_ci * @addtogroup OHAVSession 187777dab0Sopenharmony_ci * @{ 197777dab0Sopenharmony_ci * 207777dab0Sopenharmony_ci * @brief Provide the definition of the C interface for the avsession module. 217777dab0Sopenharmony_ci * 227777dab0Sopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.Core 237777dab0Sopenharmony_ci * 247777dab0Sopenharmony_ci * @since 13 257777dab0Sopenharmony_ci * @version 1.0 267777dab0Sopenharmony_ci */ 277777dab0Sopenharmony_ci 287777dab0Sopenharmony_ci/** 297777dab0Sopenharmony_ci * @file native_avmetadata.h 307777dab0Sopenharmony_ci * 317777dab0Sopenharmony_ci * @brief Declare avmetadata builder related interfaces. 327777dab0Sopenharmony_ci * 337777dab0Sopenharmony_ci * @library libohavsession.so 347777dab0Sopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.Core 357777dab0Sopenharmony_ci * @kit AVSessionKit 367777dab0Sopenharmony_ci * @since 13 377777dab0Sopenharmony_ci * @version 1.0 387777dab0Sopenharmony_ci */ 397777dab0Sopenharmony_ci 407777dab0Sopenharmony_ci#ifndef NATIVE_AVMETADATA_H 417777dab0Sopenharmony_ci#define NATIVE_AVMETADATA_H 427777dab0Sopenharmony_ci 437777dab0Sopenharmony_ci#include <stdint.h> 447777dab0Sopenharmony_ci 457777dab0Sopenharmony_ci#ifdef __cplusplus 467777dab0Sopenharmony_ciextern "C" { 477777dab0Sopenharmony_ci#endif 487777dab0Sopenharmony_ci 497777dab0Sopenharmony_ci/** 507777dab0Sopenharmony_ci * @brief AVMetadata error code 517777dab0Sopenharmony_ci * 527777dab0Sopenharmony_ci * @since 13 537777dab0Sopenharmony_ci * @version 1.0 547777dab0Sopenharmony_ci */ 557777dab0Sopenharmony_citypedef enum { 567777dab0Sopenharmony_ci /** 577777dab0Sopenharmony_ci * @error The call was successful. 587777dab0Sopenharmony_ci */ 597777dab0Sopenharmony_ci AVMETADATA_SUCCESS = 0, 607777dab0Sopenharmony_ci 617777dab0Sopenharmony_ci /** 627777dab0Sopenharmony_ci * @error This means that the function was executed with an invalid input parameter. 637777dab0Sopenharmony_ci */ 647777dab0Sopenharmony_ci AVMETADATA_ERROR_INVALID_PARAM = 1, 657777dab0Sopenharmony_ci 667777dab0Sopenharmony_ci /** 677777dab0Sopenharmony_ci * @error This means there is no memory left. 687777dab0Sopenharmony_ci */ 697777dab0Sopenharmony_ci AVMETADATA_ERROR_NO_MEMORY = 2, 707777dab0Sopenharmony_ci} AVMetadata_Result; 717777dab0Sopenharmony_ci 727777dab0Sopenharmony_ci/** 737777dab0Sopenharmony_ci * @brief Defines the skip interval when fastforward or rewind. 747777dab0Sopenharmony_ci * 757777dab0Sopenharmony_ci * @since 13 767777dab0Sopenharmony_ci * @version 1.0 777777dab0Sopenharmony_ci */ 787777dab0Sopenharmony_citypedef enum { 797777dab0Sopenharmony_ci /** 807777dab0Sopenharmony_ci * @brief 10 seconds 817777dab0Sopenharmony_ci */ 827777dab0Sopenharmony_ci SECONDS_10 = 10, 837777dab0Sopenharmony_ci 847777dab0Sopenharmony_ci /** 857777dab0Sopenharmony_ci * @brief 15 seconds 867777dab0Sopenharmony_ci */ 877777dab0Sopenharmony_ci SECONDS_15 = 15, 887777dab0Sopenharmony_ci 897777dab0Sopenharmony_ci /** 907777dab0Sopenharmony_ci * @brief 30 seconds 917777dab0Sopenharmony_ci */ 927777dab0Sopenharmony_ci SECONDS_30 = 30, 937777dab0Sopenharmony_ci} AVMetadata_SkipIntervals; 947777dab0Sopenharmony_ci 957777dab0Sopenharmony_ci/** 967777dab0Sopenharmony_ci * @brief Display tag 977777dab0Sopenharmony_ci * 987777dab0Sopenharmony_ci * @since 13 997777dab0Sopenharmony_ci * @version 1.0 1007777dab0Sopenharmony_ci */ 1017777dab0Sopenharmony_citypedef enum { 1027777dab0Sopenharmony_ci /** 1037777dab0Sopenharmony_ci * @brief Indicate the audio vivid property. 1047777dab0Sopenharmony_ci */ 1057777dab0Sopenharmony_ci AVSESSION_DISPLAYTAG_AUDIO_VIVID = 1, 1067777dab0Sopenharmony_ci} AVMetadata_DisplayTag; 1077777dab0Sopenharmony_ci 1087777dab0Sopenharmony_ci/** 1097777dab0Sopenharmony_ci * @brief Declaring the avmetadata builder. 1107777dab0Sopenharmony_ci * The instance of builder is used for creating avmetadata. 1117777dab0Sopenharmony_ci * 1127777dab0Sopenharmony_ci * @since 13 1137777dab0Sopenharmony_ci * @version 1.0 1147777dab0Sopenharmony_ci */ 1157777dab0Sopenharmony_citypedef struct OH_AVMetadataBuilderStruct OH_AVMetadataBuilder; 1167777dab0Sopenharmony_ci 1177777dab0Sopenharmony_ci/** 1187777dab0Sopenharmony_ci * @brief Declaring the avmetadata. 1197777dab0Sopenharmony_ci * The instance of avmetadata set by application for current resource. 1207777dab0Sopenharmony_ci * 1217777dab0Sopenharmony_ci * @since 13 1227777dab0Sopenharmony_ci * @version 1.0 1237777dab0Sopenharmony_ci */ 1247777dab0Sopenharmony_citypedef struct OH_AVMetadataStruct OH_AVMetadata; 1257777dab0Sopenharmony_ci 1267777dab0Sopenharmony_ci/** 1277777dab0Sopenharmony_ci * @brief Creates an AVMetadataBuilder instance. 1287777dab0Sopenharmony_ci * 1297777dab0Sopenharmony_ci * @param builder The builder reference to the created result. 1307777dab0Sopenharmony_ci * @return Function result code: 1317777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 1327777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM} The param of builder is nullptr. 1337777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_NO_MEMORY} No memory to allocate a new instance. 1347777dab0Sopenharmony_ci * @since 13 1357777dab0Sopenharmony_ci */ 1367777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_Create(OH_AVMetadataBuilder** builder); 1377777dab0Sopenharmony_ci 1387777dab0Sopenharmony_ci/** 1397777dab0Sopenharmony_ci * @brief Destroy a bulder. 1407777dab0Sopenharmony_ci * 1417777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 1427777dab0Sopenharmony_ci * @return Function result code: 1437777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 1447777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM} The param of builder is nullptr. 1457777dab0Sopenharmony_ci * @since 13 1467777dab0Sopenharmony_ci */ 1477777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_Destroy(OH_AVMetadataBuilder* builder); 1487777dab0Sopenharmony_ci 1497777dab0Sopenharmony_ci/** 1507777dab0Sopenharmony_ci * @brief Set current asset id of the resource 1517777dab0Sopenharmony_ci * 1527777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 1537777dab0Sopenharmony_ci * @param assetId The current assetId of resource. 1547777dab0Sopenharmony_ci * @return Function result code: 1557777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 1567777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 1577777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 1587777dab0Sopenharmony_ci * 2.The param of assetId is nullptr. 1597777dab0Sopenharmony_ci * @since 13 1607777dab0Sopenharmony_ci */ 1617777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetAssetId(OH_AVMetadataBuilder* builder, const char* assetId); 1627777dab0Sopenharmony_ci 1637777dab0Sopenharmony_ci/** 1647777dab0Sopenharmony_ci * @brief Set the title of the resource 1657777dab0Sopenharmony_ci * 1667777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 1677777dab0Sopenharmony_ci * @param title The title of resource. 1687777dab0Sopenharmony_ci * @return Function result code: 1697777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 1707777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 1717777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 1727777dab0Sopenharmony_ci * 2.The param of title is nullptr. 1737777dab0Sopenharmony_ci * @since 13 1747777dab0Sopenharmony_ci */ 1757777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetTitle(OH_AVMetadataBuilder* builder, const char* title); 1767777dab0Sopenharmony_ci 1777777dab0Sopenharmony_ci/** 1787777dab0Sopenharmony_ci * @brief Set the artist of the resource 1797777dab0Sopenharmony_ci * 1807777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 1817777dab0Sopenharmony_ci * @param artist The artist of resource. 1827777dab0Sopenharmony_ci * @return Function result code: 1837777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 1847777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 1857777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 1867777dab0Sopenharmony_ci * 2.The param of artist is nullptr. 1877777dab0Sopenharmony_ci * @since 13 1887777dab0Sopenharmony_ci */ 1897777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetArtist(OH_AVMetadataBuilder* builder, const char* artist); 1907777dab0Sopenharmony_ci 1917777dab0Sopenharmony_ci/** 1927777dab0Sopenharmony_ci * @brief Set the author of the resource 1937777dab0Sopenharmony_ci * 1947777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 1957777dab0Sopenharmony_ci * @param author The author of resource. 1967777dab0Sopenharmony_ci * @return Function result code: 1977777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 1987777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 1997777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 2007777dab0Sopenharmony_ci * 2.The param of author is nullptr. 2017777dab0Sopenharmony_ci * @since 13 2027777dab0Sopenharmony_ci */ 2037777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetAuthor(OH_AVMetadataBuilder* builder, const char* author); 2047777dab0Sopenharmony_ci 2057777dab0Sopenharmony_ci/** 2067777dab0Sopenharmony_ci * @brief Set the album information 2077777dab0Sopenharmony_ci * 2087777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 2097777dab0Sopenharmony_ci * @param album The album name 2107777dab0Sopenharmony_ci * @return Return code: 2117777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 2127777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 2137777dab0Sopenharmony_ci * 1. The param of builder is nullptr. 2147777dab0Sopenharmony_ci * 2. The param of album is nullptr. 2157777dab0Sopenharmony_ci * @since 13 2167777dab0Sopenharmony_ci */ 2177777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetAlbum(OH_AVMetadataBuilder* builder, const char* album); 2187777dab0Sopenharmony_ci 2197777dab0Sopenharmony_ci/** 2207777dab0Sopenharmony_ci * @brief Set the writer of the resource 2217777dab0Sopenharmony_ci * 2227777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 2237777dab0Sopenharmony_ci * @param writer The writer of resource. 2247777dab0Sopenharmony_ci * @return Function result code: 2257777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 2267777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 2277777dab0Sopenharmony_ci * 1. The param of builder is nullptr. 2287777dab0Sopenharmony_ci * 2. The param of writer is nullptr. 2297777dab0Sopenharmony_ci * @since 13 2307777dab0Sopenharmony_ci */ 2317777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetWriter(OH_AVMetadataBuilder* builder, const char* writer); 2327777dab0Sopenharmony_ci 2337777dab0Sopenharmony_ci/** 2347777dab0Sopenharmony_ci * @brief Set the composer of the resource 2357777dab0Sopenharmony_ci * 2367777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 2377777dab0Sopenharmony_ci * @param composer The composer of resource. 2387777dab0Sopenharmony_ci * @return Function result code: 2397777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 2407777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 2417777dab0Sopenharmony_ci * 1. The param of builder is nullptr. 2427777dab0Sopenharmony_ci * 2. The param of composer is nullptr. 2437777dab0Sopenharmony_ci * @since 13 2447777dab0Sopenharmony_ci */ 2457777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetComposer(OH_AVMetadataBuilder* builder, const char* composer); 2467777dab0Sopenharmony_ci 2477777dab0Sopenharmony_ci/** 2487777dab0Sopenharmony_ci * @brief Set the duration of the resource 2497777dab0Sopenharmony_ci * 2507777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 2517777dab0Sopenharmony_ci * @param duration The duration of resource, in miliseconds 2527777dab0Sopenharmony_ci * @return Function result code: 2537777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 2547777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM} The param of builder is nullptr. 2557777dab0Sopenharmony_ci * @since 13 2567777dab0Sopenharmony_ci */ 2577777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetDuration(OH_AVMetadataBuilder* builder, int64_t duration); 2587777dab0Sopenharmony_ci 2597777dab0Sopenharmony_ci/** 2607777dab0Sopenharmony_ci * @brief Set the media image uri of the resource 2617777dab0Sopenharmony_ci * 2627777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 2637777dab0Sopenharmony_ci * @param mediaImageUri The mediaImageUri of resource. 2647777dab0Sopenharmony_ci * @return Function result code: 2657777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 2667777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 2677777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 2687777dab0Sopenharmony_ci * 2.The param of mediaImageUri nullptr. 2697777dab0Sopenharmony_ci * @since 13 2707777dab0Sopenharmony_ci */ 2717777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetMediaImageUri(OH_AVMetadataBuilder* builder, const char* mediaImageUri); 2727777dab0Sopenharmony_ci 2737777dab0Sopenharmony_ci/** 2747777dab0Sopenharmony_ci * @brief Set the subtitle of the resource 2757777dab0Sopenharmony_ci * 2767777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 2777777dab0Sopenharmony_ci * @param subtitle The subtitle of resource. 2787777dab0Sopenharmony_ci * @return Function result code: 2797777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 2807777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 2817777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 2827777dab0Sopenharmony_ci * 2.The param of subtitle nullptr. 2837777dab0Sopenharmony_ci * @since 13 2847777dab0Sopenharmony_ci */ 2857777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetSubtitle(OH_AVMetadataBuilder* builder, const char* subtitle); 2867777dab0Sopenharmony_ci 2877777dab0Sopenharmony_ci/** 2887777dab0Sopenharmony_ci * @brief Set the media description of the resource 2897777dab0Sopenharmony_ci * 2907777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 2917777dab0Sopenharmony_ci * @param description The description of resource. 2927777dab0Sopenharmony_ci * @return Function result code: 2937777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 2947777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 2957777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 2967777dab0Sopenharmony_ci * 2.The param of description nullptr. 2977777dab0Sopenharmony_ci * @since 13 2987777dab0Sopenharmony_ci */ 2997777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetDescription(OH_AVMetadataBuilder* builder, const char* description); 3007777dab0Sopenharmony_ci 3017777dab0Sopenharmony_ci/** 3027777dab0Sopenharmony_ci * @brief Set the media lyric content of the resource 3037777dab0Sopenharmony_ci * 3047777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 3057777dab0Sopenharmony_ci * @param lyric The lyric of resource. 3067777dab0Sopenharmony_ci * @return Function result code: 3077777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 3087777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 3097777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 3107777dab0Sopenharmony_ci * 2.The param of lyric nullptr. 3117777dab0Sopenharmony_ci * @since 13 3127777dab0Sopenharmony_ci */ 3137777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetLyric(OH_AVMetadataBuilder* builder, const char* lyric); 3147777dab0Sopenharmony_ci 3157777dab0Sopenharmony_ci/** 3167777dab0Sopenharmony_ci * @brief Set the skip intervals of the resource 3177777dab0Sopenharmony_ci * 3187777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 3197777dab0Sopenharmony_ci * @param intervals The intervals of resource, only can be set : 10, 15, 30 3207777dab0Sopenharmony_ci * @return Function result code: 3217777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 3227777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 3237777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 3247777dab0Sopenharmony_ci * 2.The param of intervals is invalid. 3257777dab0Sopenharmony_ci * @since 13 3267777dab0Sopenharmony_ci */ 3277777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetSkipIntervals(OH_AVMetadataBuilder* builder, 3287777dab0Sopenharmony_ci AVMetadata_SkipIntervals intervals); 3297777dab0Sopenharmony_ci 3307777dab0Sopenharmony_ci/** 3317777dab0Sopenharmony_ci * @brief Set the display tags of the resource 3327777dab0Sopenharmony_ci * 3337777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 3347777dab0Sopenharmony_ci * @param tags The display tags of resource which are supported by this app to be displayed on the media center 3357777dab0Sopenharmony_ci * @return Function result code: 3367777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 3377777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM} The param of builder is nullptr. 3387777dab0Sopenharmony_ci * @since 13 3397777dab0Sopenharmony_ci */ 3407777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_SetDisplayTags(OH_AVMetadataBuilder* builder, int32_t tags); 3417777dab0Sopenharmony_ci 3427777dab0Sopenharmony_ci/** 3437777dab0Sopenharmony_ci * @brief Create the avmetadta. 3447777dab0Sopenharmony_ci * 3457777dab0Sopenharmony_ci * @param builder The metadata builder instance pointer 3467777dab0Sopenharmony_ci * @param avMetadata Pointer to a viriable to receive the avMetadata object. 3477777dab0Sopenharmony_ci * @return Function result code: 3487777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 3497777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_NO_MEMORY} No memory to allocate a new instance. 3507777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM}: 3517777dab0Sopenharmony_ci * 1.The param of builder is nullptr; 3527777dab0Sopenharmony_ci * 2.The param of avMetadata is nullptr. 3537777dab0Sopenharmony_ci * @since 13 3547777dab0Sopenharmony_ci */ 3557777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadataBuilder_GenerateAVMetadata(OH_AVMetadataBuilder* builder, 3567777dab0Sopenharmony_ci OH_AVMetadata** avMetadata); 3577777dab0Sopenharmony_ci 3587777dab0Sopenharmony_ci/** 3597777dab0Sopenharmony_ci * @brief Request to release the avmetadta. 3607777dab0Sopenharmony_ci * 3617777dab0Sopenharmony_ci * @param avMetadata Pointer to a viriable to receive the avMetadata object. 3627777dab0Sopenharmony_ci * @return Function result code: 3637777dab0Sopenharmony_ci * {@link AVMETADATA_SUCCESS} If the execution is successful. 3647777dab0Sopenharmony_ci * {@link AVMETADATA_ERROR_INVALID_PARAM} The param of avMetadata is nullptr. 3657777dab0Sopenharmony_ci * @since 13 3667777dab0Sopenharmony_ci */ 3677777dab0Sopenharmony_ciAVMetadata_Result OH_AVMetadata_Destroy(OH_AVMetadata* avMetadata); 3687777dab0Sopenharmony_ci 3697777dab0Sopenharmony_ci#ifdef __cplusplus 3707777dab0Sopenharmony_ci} 3717777dab0Sopenharmony_ci#endif 3727777dab0Sopenharmony_ci 3737777dab0Sopenharmony_ci#endif // NATIVE_AVMETADATA_H 3747777dab0Sopenharmony_ci/** @} */