媒体元数据主要用于媒体数据的存放和读取,包含诸如媒体资源的描述、创建日期、作者、封面图片等等。
接口名 | 功能描述 |
---|---|
Builder() | 媒体元数据构造器的构造函数。 |
Builder(AVMetadata source) | 媒体元数据构造器的带参构造函数。 |
setText(String key, CharSequence value) | 用于存储媒体标题等信息。 |
setString(String key, String value) | 用于存储媒体作者、艺术家、描述等。 |
setLong(String key, long value) | 用于存储媒体 ID、媒体时长等信息。 |
setPixelMap(String key, PixelMap value) | 用于存储媒体元数据相关的图片资源。 |
build() | 媒体元数据生成函数。 |
接口名 | 功能描述 |
---|---|
hasKey(String key) | 媒体元数据中是否包含某一个 key 的数据。 |
getText(String key) | 获取 text 类型的 key 的数据,比如获取媒体标题等信息。 |
getString(String key) | 获取 String 类型 key 的数据,比如获取媒体作者、艺术家、描述等。 |
getLong(String key) | 获取 Long 类型 key 数据,比如获取媒体 ID、媒体时长等信息。 |
getKeysSet() | 获取媒体元数据的集合。 |
getPixelMap(String key) | 获取 PixelMap 类型 key 数据,获取媒体元数据相关的图片资源。 |
marshalling(Parcel in) | 将一个 AVMetadata 对象写入到 Parcel 对象。 |
getAVDescription() | 获取媒体的简要描述信息。 |
AVMetadata avMetadata = new AVMetadata.Builder().setString(AVMetadata.AVTextKey.MEDIA_ID, "illuminate.mp3")
.setString(AVMetadata.AVTextKey.TITLE, "title")
.setString(AVMetadata.AVTextKey.ARTIST, "artist")
.setString(AVMetadata.AVTextKey.ALBUM, "album")
.setString(AVMetadata.AVTextKey.DISPLAY_SUBTITLE, "display_subtitle")
.setPixelMap(AVMetadata.AVPixelMapKey.DISPLAY_ICON_URI, pixelmap)
.build();
String title = avMetadata.getString(AVMetadata.AVTextKey.TITLE);
mediaSession.setAVMetadata(avMetadata);
public class Callback extends AVControllerCallback {
@Override
public void onAVMetadataChanged(AVMetadata metadata) {
// 歌曲信息回调
AVDescription description = metadata.getAVDescription();
// 获取标题
String title = description.getTitle().toString();
CharSequence sequence = metadata.getText(AVMetadata.AVTextKey.TITLE);
if (sequence != null) {
title = metadata.getText(AVMetadata.AVTextKey.TITLE).toString();
}
// 设置媒体title
musicTitle.setText(title);
// 获取曲目专封面
PixelMap iconPixelMap = description.getIcon();
// 设置歌曲封面图
musicCover.setPixelMap(iconPixelMap);
}
}
网站名称:创新互联鸿蒙OS教程:鸿蒙OS媒体元数据开发指导
文章来源:http://www.shufengxianlan.com/qtweb/news23/374923.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联