1# media_asset_base_capi.h
2
3
4## 概述
5
6定义了媒体资产管理器的结构和枚举。
7
8[OH_MediaAssetManager](_media_asset_manager.md#oh_mediaassetmanager)结构体:该结构体提供了从媒体库请求资源的能力。
9
10[MediaLibrary_RequestId](_media_library___request_id.md)结构体:在请求媒体库资源时返回的类型。请求Id用于取消请求。
11
12[MediaLibrary_DeliveryMode](_media_asset_manager.md#medialibrary_deliverymode-1)枚举:此枚举定义了请求资源的分发模式。
13
14[OH_MediaLibrary_OnDataPrepared](_media_asset_manager.md#oh_medialibrary_ondataprepared)函数指针:当所请求的媒体资源准备完成时会触发回调。
15
16[MediaLibrary_RequestOptions](_media_library___request_options.md)结构体:此结构体为媒体资源请求策略模式配置项。
17
18**系统能力:** SystemCapability.FileManagement.PhotoAccessHelper.Core
19
20**库:** libmedia_asset_manager.so
21
22**引用文件:** <multimedia/media_library/media_asset_base_capi.h>
23
24**起始版本:** 12
25
26**相关模块:**[MediaAssetManager](_media_asset_manager.md)
27
28
29## 汇总
30
31
32### 结构体
33
34| 名称 | 描述 |
35| -------- | -------- |
36| struct  [MediaLibrary_RequestId](_media_library___request_id.md) | 定义请求Id。  |
37| struct  [MediaLibrary_RequestOptions](_media_library___request_options.md) | 请求策略模式配置项。  |
38
39
40### 类型定义
41
42| 名称 | 描述 |
43| -------- | -------- |
44| typedef struct [OH_MediaAssetManager](_media_asset_manager.md#oh_mediaassetmanager) [OH_MediaAssetManager](_media_asset_manager.md#oh_mediaassetmanager) | 定义媒体资产管理器。  |
45| typedef struct [OH_MediaAssetChangeRequest](_media_asset_manager.md#oh_mediaassetchangerequest) [OH_MediaAssetChangeRequest](_media_asset_manager.md#oh_mediaassetchangerequest) | 定义媒体资产更改请求。  |
46| typedef struct [OH_MovingPhoto](_media_asset_manager.md#oh_movingphoto) [OH_MovingPhoto](_media_asset_manager.md#oh_movingphoto) | 定义动态照片。  |
47| typedef struct [OH_MediaAsset](_media_asset_manager.md#oh_mediaasset) [OH_MediaAsset](_media_asset_manager.md#oh_mediaasset) | 定义媒体资产。  |
48| typedef struct [MediaLibrary_RequestId](_media_library___request_id.md) [MediaLibrary_RequestId](_media_asset_manager.md#medialibrary_requestid) | 定义请求Id。  |
49| typedef enum [MediaLibrary_ErrorCode](_media_asset_manager.md#medialibrary_errorcode-1) [MediaLibrary_ErrorCode](_media_asset_manager.md#medialibrary_errorcode) | 媒体库错误代码的枚举。  |
50| typedef enum [MediaLibrary_DeliveryMode](_media_asset_manager.md#medialibrary_deliverymode-1) [MediaLibrary_DeliveryMode](_media_asset_manager.md#medialibrary_deliverymode) | 请求资源分发模式。  |
51| typedef struct [MediaLibrary_RequestOptions](_media_library___request_options.md) [MediaLibrary_RequestOptions](_media_asset_manager.md#medialibrary_requestoptions) | 请求策略模式配置项。  |
52| typedef enum [MediaLibrary_MediaType](_media_asset_manager.md#medialibrary_mediatype-1) [MediaLibrary_MediaType](_media_asset_manager.md#medialibrary_mediatype) | 媒体类型的枚举。  |
53| typedef enum [MediaLibrary_MediaSubType](_media_asset_manager.md#medialibrary_mediasubtype-1) [MediaLibrary_MediaSubType](_media_asset_manager.md#medialibrary_mediasubtype) | 媒体资源子类型的枚举。  |
54| typedef enum [MediaLibrary_ResourceType](_media_asset_manager.md#medialibrary_resourcetype-1) [MediaLibrary_ResourceType](_media_asset_manager.md#medialibrary_resourcetype) | 资源类型的枚举。  |
55| typedef enum [MediaLibrary_ImageFileType](_media_asset_manager.md#medialibrary_imagefiletype-1) [MediaLibrary_ImageFileType](_media_asset_manager.md#medialibrary_imagefiletype) | 图像文件类型的枚举。  |
56| typedef enum [MediaLibrary_MediaQuality](_media_asset_manager.md#medialibrary_mediaquality-1) [MediaLibrary_MediaQuality](_media_asset_manager.md#medialibrary_mediaquality) | 媒体资源质量枚举。  |
57| typedef enum [MediaLibrary_MediaContentType](_media_asset_manager.md#medialibrary_mediacontenttype-1) [MediaLibrary_MediaContentType](_media_asset_manager.md#medialibrary_mediacontenttype) | 媒体内容类型的枚举。  |
58| typedef void(\* [OH_MediaLibrary_OnDataPrepared](_media_asset_manager.md#oh_medialibrary_ondataprepared)) (int32_t result, [MediaLibrary_RequestId](_media_library___request_id.md) requestId) | 当所请求的媒体资源准备完成时会触发回调。  |
59| typedef void(\* [OH_MediaLibrary_OnImageDataPrepared](_media_asset_manager.md#oh_medialibrary_onimagedataprepared)) ([MediaLibrary_ErrorCode](_media_asset_manager.md#medialibrary_errorcode) result, [MediaLibrary_RequestId](_media_library___request_id.md) requestId, [MediaLibrary_MediaQuality](_media_asset_manager.md#medialibrary_mediaquality) mediaQuality, [MediaLibrary_MediaContentType](_media_asset_manager.md#medialibrary_mediacontenttype) type, OH_ImageSourceNative \*imageSourceNative) | 当请求的图像源准备就绪时调用。  |
60| typedef void(\* [OH_MediaLibrary_OnMovingPhotoDataPrepared](_media_asset_manager.md#oh_medialibrary_onmovingphotodataprepared)) ([MediaLibrary_ErrorCode](_media_asset_manager.md#medialibrary_errorcode) result, [MediaLibrary_RequestId](_media_library___request_id.md) requestId, [MediaLibrary_MediaQuality](_media_asset_manager.md#medialibrary_mediaquality) mediaQuality, [MediaLibrary_MediaContentType](_media_asset_manager.md#medialibrary_mediacontenttype) type, [OH_MovingPhoto](_media_asset_manager.md#oh_movingphoto) \*movingPhoto) | 当请求的动态照片准备就绪时调用。  |
61
62
63### 枚举
64
65| 名称 | 描述 |
66| -------- | -------- |
67| [MediaLibrary_ErrorCode](_media_asset_manager.md#medialibrary_errorcode) {<br/>MEDIA_LIBRARY_OK = 0,<br/>MEDIA_LIBRARY_PERMISSION_DENIED = 201,<br/>MEDIA_LIBRARY_PARAMETER_ERROR = 401,<br/>MEDIA_LIBRARY_NO_SUCH_FILE = 23800101,<br/>MEDIA_LIBRARY_INVALID_DISPLAY_NAME = 23800102,<br/>MEDIA_LIBRARY_INVALID_ASSET_URI = 23800103,<br/>MEDIA_LIBRARY_INVALID_PHOTO_KEY = 23800104,<br/>MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED = 23800201,<br/>MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR = 23800301<br/>} | 媒体库错误代码的枚举。 |
68| [MediaLibrary_DeliveryMode](_media_asset_manager.md#medialibrary_deliverymode) {<br/>MEDIA_LIBRARY_FAST_MODE = 0,<br/>MEDIA_LIBRARY_HIGH_QUALITY_MODE = 1,<br/>MEDIA_LIBRARY_BALANCED_MODE = 2 } | 请求资源分发模式。 |
69| [MediaLibrary_MediaType](_media_asset_manager.md#medialibrary_mediatype) {<br/>MEDIA_LIBRARY_IMAGE = 1,<br/>MEDIA_LIBRARY_VIDEO = 2 } | 媒体类型的枚举。 |
70| [MediaLibrary_MediaSubType](_media_asset_manager.md#medialibrary_mediasubtype) {<br/>MEDIA_LIBRARY_DEFAULT = 0,<br/>MEDIA_LIBRARY_MOVING_PHOTO = 3,<br/>MEDIA_LIBRARY_BURST = 4 } | 媒体资源子类型的枚举。 |
71| [MediaLibrary_ResourceType](_media_asset_manager.md#medialibrary_resourcetype) {<br/>MEDIA_LIBRARY_IMAGE_RESOURCE = 1,<br/>MEDIA_LIBRARY_VIDEO_RESOURCE = 2 } | 资源类型的枚举。 |
72| [MediaLibrary_ImageFileType](_media_asset_manager.md#medialibrary_imagefiletype) {<br/>MEDIA_LIBRARY_IMAGE_JPEG = 1 } | 图像文件类型的枚举。 |
73| [MediaLibrary_MediaQuality](_media_asset_manager.md#medialibrary_mediaquality) {<br/>MEDIA_LIBRARY_QUALITY_FAST = 1,<br/>MEDIA_LIBRARY_QUALITY_FULL = 2 } | 媒体资源质量枚举。 |
74| [MediaLibrary_MediaContentType](_media_asset_manager.md#medialibrary_mediacontenttype) {<br/>MEDIA_LIBRARY_COMPRESSED = 1,<br/>MEDIA_LIBRARY_PICTURE_OBJECT = 2 } | 媒体内容类型的枚举。 |
75