开通方式
注意:
内测使用日期截止26年1月1日,即26年1月1日之后,所有内测使用权限全部失效。
内测申请完成后将进行审核,审核周期通常为1个工作日,审核通过后您将会收到通知,建议您使用企业认证的腾讯云账号申请。在内测截止日期之前,将会上线 TUIMultimedia Plugin 的付费购买(购买方式与插件市场中的其他插件购买方式相同,可以参见 插件市场概述及开通指引),若到期未购买TUIMultimedia Plugin,TUIChat 中的图片、拍照、摄像将会退回到旧版本。
Android 集成
TUIMultimedia Plugin 的 UI 部分是开源的,内核部分闭源,从 Github/Gitee 上下载最新版本的 TUIKitDemo 的工程(下载地址参看IM SDK & Demo 源码),在工程中找到 TUIMultimedia Plugin 模块,通过 Gradle 集成到模块中即可。集成方法:
找到项目的 setting.gradle 文件,添加如下代码:
include ':tuimultimediaplugin'// TUIMultimediaPlugin模块地址,根据您的实际地址填写project(':tuimultimediaplugin').projectDir = new File('../TUIMultimediaPlugin')
找到 App 的 build.gradle,在 dependencies 块中添加依赖:
dependencies {...# 集成多媒体插件if (projects.contains("tuimultimediaplugin")) {api project(':tuimultimediaplugin')}...}
iOS 集成
对于多媒体插件来说,您需要向 Podfile 中添加如下代码:
...pod 'TUIMultimediaPlugin'...end
配置文件说明
您在集成 TUIMultimedia Plugin 时,可以通过配置文件来调整 TUIMultimedia Plugin 的具体表现,例如:调整视频编码质量。也可以将贴纸、BGM 替换为您自己的文件等。
主配置文件
主配置文件用来配置最大最小录制时长、视频编码质量、功能开关等,以下是主配置文件及说明,具体见 TUIKitDemo 源码:
Android 配置文件路径:TUIMultiMediaPlugin/tuimultimediaplugin/src/main/assets/config/default_config.json
iOS 配置文件路径:TUIMultimediaPlugin/TUIMultimediaPlugin/Resources/TUIMultimedia.bundle/config/default_config.json
{"max_record_duration_ms": "15000", // 最大录制时长,当录制时间到达最大录制时长是自动停止录制"min_record_duration_ms": "2000", // 最小录制时长,当录制时间不足最小录制时长时转为拍照"video_quality": "2", // 视频编码质量,取值为1,2,3。值为1时编码质量最低,为3时编码质量最高"picture_paster_config_file_path": "file:///asset/config/picture_paster_data.json", // 贴纸配置文件地址"bgm_config_file_path": "file:///asset/config/bgm_data.json", // BGM配置文件地址"support_record_torch": "true", // 是否支持录制时的闪光灯功能"support_record_beauty": "true", // 是否支持录制时的美颜功能"support_record_aspect": "true", // 是否支持录制时的纵横比设置功能"support_record_scroll_filter": "true", // 是否支持录制时滑动滤镜功能(IOS无此功能)"support_edit_graffiti": "true", // 是否支持编辑时涂鸦功能"support_edit_paster": "true", // 是否支持编辑时贴纸功能"support_edit_subtitle": "true", // 是否支持编辑时字幕功能"support_edit_bgm": "true" // 是否支持编辑时BGM功能}
贴纸配置文件
贴纸配置文件可以用于配置编辑时的贴纸列表。配置文件地址在主配置文件的 picture_paster_config_file_path 字段中指出,可以配置多个类别的贴纸,还可以指定本地贴纸文件选择器等。下面是 Android 的贴纸配置文件示例说明(完整的配置文件可以在源代码中查看,iOS 的配置文件略有不同):
{"paster_type_list": [ // 贴纸类别列表{// 贴纸类别名称,如果存在类别图标,因为UI中不支持同时显示贴纸类别名称和图标,所以类别名称将不会显示。"type_name": "@string/ugc_plugin_default",// 贴纸类别图标路径。可以是本地路径,drawable资源,也可以放在资源文件中。如果存在类别图标,就不会显示类别名字"type_icon_path": "file:///android_asset/paster/4350/yz07@2x.png",// 该贴纸类别下的贴纸"paster_item_list": [{// 贴纸路径,可以是本地路径,drawable资源,也可以放在资源文件中"item_image_path": "file:///android_asset/paster/4350/yz00@2x.png",// 贴纸图标路径,贴纸图标是显示在贴纸View下的图标,可以使用比贴纸更小分辨率的图片,以便节省 内存资源。// 如果没有设置贴纸图标路径,则使用贴纸作为贴纸图标。"item_icon_path": "file:///android_asset/paster/4350/yz00@2x.png"},{"item_image_path": "file:///android_asset/paster/4350/yz01@2x.png"}]},{"type_name": "","type_icon_path": "@drawable/emoji_48","paster_item_list": [{"item_icon_path": "@drawable/ugc_plugin_edit_paster_file_selector",// 用于指示该贴纸是否是一个文件选择器。值为true表示是,为false表示不是,默认为 false(不配置)。// 文件选择器可以选择本地图片添加为贴纸,添加的贴纸保存在本地目的,不跟账号绑定。"item_is_file_selector": true},{"item_icon_path": "@drawable/emoji_31","item_image_path": "@drawable/emoji_31"}]}]}
BGM 配置文件
BGM 配置文件可以用于配置编辑时的 BGM 列表。配置文件地址在主配置文件的 bgm_config_file_path 字段中指出,可以配置多个类别的 BMG,下面是Android 的 BGM 配置文件示例说明(完整的配置文件可以在源代码中查看,iOS 的配置文件略有不同):
{"bgm_list": [ // BGM类别列表{"bgm_type_name": "@string/ugc_plugin_bgm_type_name_default", // BGM类别名字,可以是字符,也可以是字符资源"bgm_item_list": [ // 该BGM类别下的BGM{"item_bgm_path": "file:///asset/bgm/久别重逢.mp3", // BGM文件路径。可以是本地路径,也可以放在资源文件中"item_bgm_name": "久别重逢", // BGM名字,不支持字符资源"item_bgm_author": "音乐AI", // BGM作者,不支持字符资源"item_start_time": 0, // BGM的默认开始时间"item_end_time": 0 // BGM的默认结束时间,如果小于item_start_time,结束时间不会生效},{"item_bgm_path": "file:///asset/bgm/Tears of Rouge.mp3","item_bgm_name": "Tears of Rouge","item_bgm_author": "音乐AI","item_start_time": 0,"item_end_time": 0}]},{"bgm_type_name": "@string/ugc_plugin_bgm_type_name_chosen","bgm_item_list": [{"item_bgm_path": "file:///asset/bgm/一起去旅行.mp3","item_bgm_name": "一起去旅行","item_bgm_author": "音乐AI","item_start_time": 0,"item_end_time": 0}]}]}
SDK 参考文档
如果您想更深度的定制您的多媒体插件的行为,您还可以直接调用录制和编辑SDK来满足你的需求,单击 UGC SDK 的 API 文档 参看 SDK 的 API 文档(注意:购买 TUIMultiMedia Plugin 插件时,只有部分 SDK 接口的使用权限)。
注意:
为了尊重版权,IM Demo/TUIKit 工程中默认不包含大表情元素切图。在正式上线商用前,请您替换为自己设计或拥有版权的其他表情包。请注意,下图所示的默认小黄脸表情包版权属于腾讯云,您可以通过升级至 IM 企业版套餐 免费使用该表情包。
