该示例展示设备屏幕(含音频)录制功能。屏幕录制的主要工作是通过创建一个虚拟屏,捕获屏幕显示图形帧,完成视频编码并保存到文件中,帮助OEM设备厂家系统应用实现屏幕录制功能,也可以通过此应用抓取屏幕帧用于问题复现录制。
获取媒体权限 | 获取录音权限 | 应用主界面 | 录制过程界面 |
---|---|---|---|
使用说明
1.启动应用,首次启动需要用户授予“访问媒体和文件”和“麦克风”的权限
2.点击启动按钮,启动屏幕录制。
3.启动录制后会弹出一个透明录制悬浮控件,并显示录制时间计时,此时可以操作屏幕,操作过程屏幕显示会被录制下来。
4.需要停止录屏时,点击悬浮半透明的红色按钮,屏幕录制停止。
5.打开图库应用,在图库中可以看到最新录屏的媒体文件,点击后可支持录屏回放。
entry/src/main/ets/
|---common
| |---Constants.ts // 数据初始化
| |---Logger.ts // 日志工具
|---MainAbility
| |---MainAbility.ts
|---pages
| |---index.ets // 首页
| |---ScreenRecordre.ets // 屏幕录制
1.允许应用访问用户媒体文件中的地理位置信息权限:ohos.permission.MEDIA_LOCATION
2.允许应用修改用户公共目录的图片或视频文件权限:ohos.permission.WRITE_IMAGEVIDEO
3.允许应用读取用户公共目录的图片或视频文件权限:ohos.permission.READ_IMAGEVIDEO
4.允许应用使用麦克风权限:ohos.permission.MICROPHONE
5.允许应用使用悬浮窗的能力权限,需要配置为system_basic类型系统应用:ohos.permission.SYSTEM_FLOAT_WINDOW
6.允许应用截取屏幕图像权限,需要配置为system_core类型系统应用:ohos.permission.CAPTURE_SCREEN
不涉及。
1.本示例仅支持标准系统上安装运行。
2.本示例已适配API version 10版本SDK,版本号:4.0.10.15。
3.本示例需要使用DevEco Studio 4.0 Release (Build Version: 4.0.0.600)及以上版本才可编译运行。
4.本示例需要使用@ohos.screen系统权限的系统接口,使用Full SDK时需要手动从镜像站点获取,并在DevEco Studio中替换,具体操作可参考替换指南。
5.系统权限的自动化签名指南,可通过打开DevEco Studio中菜单,File -> Project Structure -> Project -> Signing Configs(TAB页最下方蓝色字体) -> “View the operation guide” 跳转链接,可支持系统权限的自动签名生成。
6.rk设备由于芯片限制,应用中videoFrameWidth,videoFrameHeight,videoFrameRate需同比缩小3/5, 才能实现rk上的播放效果。
7.库上代码为rk设备所适用代码,其他设备需要修改完应用代码后(应用代码中缩小3/5的地方,在其他设备不需要缩小),单独打包。
如需单独下载本工程,执行如下命令:
git init
git config core.sparsecheckout true
echo code/SystemFeature/Media/ScreenRecorder/ > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin master
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。