• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# media_asset_base_capi.h
2
3## 概述
4
5定义了媒体资产管理器的结构和枚举。
6
7**库:** libmedia_asset_manager.so
8
9**引用文件:** <multimedia/media_library/media_asset_base_capi.h>
10
11**系统能力:** SystemCapability.FileManagement.PhotoAccessHelper.Core
12
13**起始版本:** 12
14
15**相关模块:** [MediaAssetManager](capi-mediaassetmanager.md)
16
17## 汇总
18
19### 结构体
20
21| 名称 | typedef关键字 | 描述 |
22| -- | -- | -- |
23| [MediaLibrary_RequestId](capi-mediaassetmanager-medialibrary-requestid.md) | MediaLibrary_RequestId | 定义请求Id。<br>当请求媒体库资源时,会返回此类型。<br>请求Id可用于取消请求。 |
24| [OH_MediaAssetManager](capi-mediaassetmanager-oh-mediaassetmanager.md) | OH_MediaAssetManager | 定义媒体资产管理器。<br>此结构提供了请求媒体库资源的能力。<br>如果创建失败,则返回空指针。 |
25| [OH_MediaAssetChangeRequest](capi-mediaassetmanager-oh-mediaassetchangerequest.md) | OH_MediaAssetChangeRequest | 定义媒体资产更改请求。<br>此结构体提供了处理媒体资产更改请求的能力。 |
26| [OH_MovingPhoto](capi-mediaassetmanager-oh-movingphoto.md) | OH_MovingPhoto | 定义动态照片。<br>此结构体提供了获取关于动态照片的信息的能力。 |
27| [OH_MediaAsset](capi-mediaassetmanager-oh-mediaasset.md) | OH_MediaAsset | 定义媒体资产。<br>此结构体提供了封装文件资源属性的能力。 |
28| [MediaLibrary_RequestOptions](capi-mediaassetmanager-medialibrary-requestoptions.md) | MediaLibrary_RequestOptions | 请求策略模式配置项。<br>此结构体为媒体资源请求策略模式配置项。 |
29
30### 枚举
31
32| 名称 | typedef关键字 | 描述 |
33| -- | -- | -- |
34| [MediaLibrary_ErrorCode](#medialibrary_errorcode) | MediaLibrary_ErrorCode | 媒体库错误代码的枚举。 |
35| [MediaLibrary_DeliveryMode](#medialibrary_deliverymode) | MediaLibrary_DeliveryMode | 请求资源分发模式。 |
36| [MediaLibrary_MediaType](#medialibrary_mediatype) | MediaLibrary_MediaType | 媒体类型的枚举。 |
37| [MediaLibrary_MediaSubType](#medialibrary_mediasubtype) | MediaLibrary_MediaSubType | 媒体资源子类型的枚举。 |
38| [MediaLibrary_ResourceType](#medialibrary_resourcetype) | MediaLibrary_ResourceType | 资源类型的枚举。 |
39| [MediaLibrary_ImageFileType](#medialibrary_imagefiletype) | MediaLibrary_ImageFileType | 图像文件类型的枚举。 |
40| [MediaLibrary_MediaQuality](#medialibrary_mediaquality) | MediaLibrary_MediaQuality | 媒体资源质量枚举。此枚举与请求媒体资源时定义的分发模式有关。 |
41| [MediaLibrary_MediaContentType](#medialibrary_mediacontenttype) | MediaLibrary_MediaContentType | 媒体内容类型的枚举。 |
42
43### 函数
44
45| 名称 | typedef关键字 | 描述 |
46| -- | -- | -- |
47| [typedef void (\*OH_MediaLibrary_OnDataPrepared)(int32_t result, MediaLibrary_RequestId requestId)](#oh_medialibrary_ondataprepared) | OH_MediaLibrary_OnDataPrepared | 当所请求的媒体资源准备完成时会触发回调。 |
48| [typedef void (\*OH_MediaLibrary_OnImageDataPrepared)(MediaLibrary_ErrorCode result, MediaLibrary_RequestId requestId, MediaLibrary_MediaQuality mediaQuality, MediaLibrary_MediaContentType type,OH_ImageSourceNative* imageSourceNative)](#oh_medialibrary_onimagedataprepared) | OH_MediaLibrary_OnImageDataPrepared | 当请求的图像源准备就绪时会触发回调。 |
49| [typedef void (\*OH_MediaLibrary_OnMovingPhotoDataPrepared)(MediaLibrary_ErrorCode result, MediaLibrary_RequestId requestId, MediaLibrary_MediaQuality mediaQuality, MediaLibrary_MediaContentType type,OH_MovingPhoto* movingPhoto)](#oh_medialibrary_onmovingphotodataprepared) | OH_MediaLibrary_OnMovingPhotoDataPrepared | 当请求的动态照片准备就绪时会触发回调。 |
50
51### 变量
52
53| 名称 | 描述 |
54| -- | -- |
55| static const int32_t UUID_STR_MAX_LENGTH = 37 | 定义UUID最大长度。这个常量定义了UUID字符串的最大长度。<br>**起始版本:** 12 |
56
57## 枚举类型说明
58
59### MediaLibrary_ErrorCode
60
61```
62enum MediaLibrary_ErrorCode
63```
64
65**描述**
66
67媒体库错误代码的枚举。
68
69**起始版本:** 12
70
71| 枚举项 | 描述 |
72| -- | -- |
73| MEDIA_LIBRARY_OK = 0 | 媒体库结果正常。 |
74| MEDIA_LIBRARY_PERMISSION_DENIED = 201 | 权限被拒绝。 |
75| MEDIA_LIBRARY_PARAMETER_ERROR = 401 | 强制参数未指定,参数类型不正确或参数验证失败。 |
76| MEDIA_LIBRARY_NO_SUCH_FILE = 23800101 | 文件不存在。 |
77| MEDIA_LIBRARY_INVALID_DISPLAY_NAME = 23800102 | 显示名称无效。 |
78| MEDIA_LIBRARY_INVALID_ASSET_URI = 23800103 | 资产uri无效。 |
79| MEDIA_LIBRARY_INVALID_PHOTO_KEY = 23800104 | PhotoKey无效。 |
80| MEDIA_LIBRARY_OPERATION_NOT_SUPPORTED = 23800201 | 不支持该操作。 |
81| MEDIA_LIBRARY_INTERNAL_SYSTEM_ERROR = 23800301 | 内部系统错误。建议重试并检查日志。可能的原因:<br>1. 数据库已损坏。<br>2. 文件系统异常。<br>3. IPC请求超时。 |
82
83### MediaLibrary_DeliveryMode
84
85```
86enum MediaLibrary_DeliveryMode
87```
88
89**描述**
90
91请求资源分发模式。
92
93快速分发:不考虑资源质量,直接基于现有资源返回。
94
95高质量分发:返回高质量资源,若没有,则触发生成高质量资源,成功后才返回。
96
97均衡分发:若存在高质量资源,则直接返回高质量资源。否则,先返回低质量资源,并触发生成高质量资源,成功后再返回一次高质量资源。
98
99**起始版本:** 12
100
101| 枚举项 | 描述 |
102| -- | -- |
103| MEDIA_LIBRARY_FAST_MODE = 0 | 快速分发。 |
104| MEDIA_LIBRARY_HIGH_QUALITY_MODE = 1 | 高质量分发。 |
105| MEDIA_LIBRARY_BALANCED_MODE = 2 | 均衡分发。 |
106
107### MediaLibrary_MediaType
108
109```
110enum MediaLibrary_MediaType
111```
112
113**描述**
114
115媒体类型的枚举。
116
117**起始版本:** 12
118
119| 枚举项 | 描述 |
120| -- | -- |
121| MEDIA_LIBRARY_IMAGE = 1 | 图像资产。 |
122| MEDIA_LIBRARY_VIDEO = 2 | 视频资产。 |
123
124### MediaLibrary_MediaSubType
125
126```
127enum MediaLibrary_MediaSubType
128```
129
130**描述**
131
132媒体资源子类型的枚举。
133
134**起始版本:** 12
135
136| 枚举项 | 描述 |
137| -- | -- |
138| MEDIA_LIBRARY_DEFAULT = 0 | 默认照片类型。 |
139| MEDIA_LIBRARY_MOVING_PHOTO = 3 | 动态照片类型。 |
140| MEDIA_LIBRARY_BURST = 4 | 连拍照片类型。 |
141
142### MediaLibrary_ResourceType
143
144```
145enum MediaLibrary_ResourceType
146```
147
148**描述**
149
150资源类型的枚举。
151
152**起始版本:** 12
153
154| 枚举项 | 描述 |
155| -- | -- |
156| MEDIA_LIBRARY_IMAGE_RESOURCE = 1 | 图像资源。 |
157| MEDIA_LIBRARY_VIDEO_RESOURCE = 2 | 视频资源。 |
158
159### MediaLibrary_ImageFileType
160
161```
162enum MediaLibrary_ImageFileType
163```
164
165**描述**
166
167图像文件类型的枚举。
168
169**起始版本:** 12
170
171| 枚举项 | 描述 |
172| -- | -- |
173| MEDIA_LIBRARY_IMAGE_JPEG = 1 | JPEG类型。 |
174| MEDIA_LIBRARY_FILE_VIDEO = 3 | MPEG类型。<br>**起始版本:** 19 |
175
176### MediaLibrary_MediaQuality
177
178```
179enum MediaLibrary_MediaQuality
180```
181
182**描述**
183
184媒体资源质量枚举。
185
186此枚举与请求媒体资源时定义的分发模式有关。
187
188快速分发:不考虑资源质量,直接基于现有资源返回。
189
190高质量分发:返回高质量资源,若没有,则触发生成高质量资源,成功后才返回。
191
192均衡分发:若存在高质量资源,则直接返回高质量资源。否则,先返回低质量资源,并触发生成高质量资源,成功后再返回一次高质量资源。
193
194**起始版本:** 12
195
196| 枚举项 | 描述 |
197| -- | -- |
198| MEDIA_LIBRARY_QUALITY_FAST = 1 | 不考虑资源质量,直接返回的现有资源。 |
199| MEDIA_LIBRARY_QUALITY_FULL = 2 | 高质量资源。 |
200
201### MediaLibrary_MediaContentType
202
203```
204enum MediaLibrary_MediaContentType
205```
206
207**描述**
208
209媒体内容类型的枚举。
210
211**起始版本:** 12
212
213| 枚举项 | 描述 |
214| -- | -- |
215| MEDIA_LIBRARY_COMPRESSED = 1 | 压缩媒体内容类型。 |
216| MEDIA_LIBRARY_PICTURE_OBJECT = 2 | 图片对象媒体内容类型。 |
217
218
219## 函数说明
220
221### OH_MediaLibrary_OnDataPrepared()
222
223```
224typedef void (*OH_MediaLibrary_OnDataPrepared)(int32_t result, MediaLibrary_RequestId requestId)
225```
226
227**描述**
228
229当所请求的媒体资源准备完成时会触发回调。
230
231**起始版本:** 12
232
233
234**参数:**
235
236| 参数项 | 描述 |
237| -- | -- |
238| int32_t result | 请求资源处理的结果。 |
239|  MediaLibrary_RequestId requestId | 请求Id。 |
240
241### OH_MediaLibrary_OnImageDataPrepared()
242
243```
244typedef void (*OH_MediaLibrary_OnImageDataPrepared)(MediaLibrary_ErrorCode result,MediaLibrary_RequestId requestId, MediaLibrary_MediaQuality mediaQuality, MediaLibrary_MediaContentType type,OH_ImageSourceNative* imageSourceNative)
245```
246
247**描述**
248
249当请求的图像源准备就绪时会触发回调。
250
251**起始版本:** 12
252
253
254**参数:**
255
256| 参数项 | 描述 |
257| -- | -- |
258| [MediaLibrary_ErrorCode](#medialibrary_errorcode) result | 处理所请求资源的结果[MediaLibrary_ErrorCode](#medialibrary_errorcode)。 |
259| [MediaLibrary_RequestId](capi-mediaassetmanager-medialibrary-requestid.md) requestId | 请求的[MediaLibrary_RequestId](capi-mediaassetmanager-medialibrary-requestid.md)。 |
260|  [MediaLibrary_MediaQuality](#medialibrary_mediaquality) mediaQuality | 请求源的[MediaLibrary_MediaQuality](#medialibrary_mediaquality)。 |
261|  [MediaLibrary_MediaContentType](capi-media-asset-base-capi-h.md#medialibrary_mediacontenttype) type | 请求源的[MediaLibrary_MediaContentType](capi-media-asset-base-capi-h.md#medialibrary_mediacontenttype)。 |
262| [OH_ImageSourceNative](../apis-image-kit/capi-image-nativemodule-oh-imagesourcenative.md)* imageSourceNative | 当请求的图像源准备就绪时获取[OH_ImageSourceNative](../apis-image-kit/capi-image-nativemodule-oh-imagesourcenative.md)。 |
263
264### OH_MediaLibrary_OnMovingPhotoDataPrepared()
265
266```
267typedef void (*OH_MediaLibrary_OnMovingPhotoDataPrepared)(MediaLibrary_ErrorCode result,MediaLibrary_RequestId requestId, MediaLibrary_MediaQuality mediaQuality, MediaLibrary_MediaContentType type,OH_MovingPhoto* movingPhoto)
268```
269
270**描述**
271
272当请求的动态照片准备就绪时会触发回调。
273
274**起始版本:** 13
275
276
277**参数:**
278
279| 参数项 | 描述 |
280| -- | -- |
281| [MediaLibrary_ErrorCode](#medialibrary_errorcode) result | 处理所请求资源的结果[MediaLibrary_ErrorCode](capi-media-asset-base-capi-h.md#medialibrary_errorcode)。 |
282| [MediaLibrary_RequestId](capi-mediaassetmanager-medialibrary-requestid.md) requestId | 请求的[MediaLibrary_RequestId](capi-mediaassetmanager-medialibrary-requestid.md)。 |
283|  [MediaLibrary_MediaQuality](#medialibrary_mediaquality) mediaQuality | 请求资源的[MediaLibrary_MediaQuality](#medialibrary_mediaquality)。 |
284|  [MediaLibrary_MediaContentType](capi-media-asset-base-capi-h.md#medialibrary_mediacontenttype) type | 请求资源的[MediaLibrary_MediaContentType](capi-media-asset-base-capi-h.md#medialibrary_mediacontenttype)。 |
285| [OH_MovingPhoto](capi-mediaassetmanager-oh-movingphoto.md)* movingPhoto | 当请求的动态图片准备就绪时获取[OH_MovingPhoto](capi-mediaassetmanager-oh-movingphoto.md)。 |
286
287
288