实现视频投播功能
介绍
本实例基于播控中心和系统投播实现完整的视频投播功能,包含投播和播控基础控制:设备切换、集数切换、音量增减、进度切换。
效果图预览
| 视频选择 | 本端播放 | 遥控器控制 |
|---|---|---|
![]() |
![]() |
![]() |
使用说明
- 本端设备播放视频,进度/音量/集数控制。
- 播控中心控制本端设备,进度/音量/集数。
- 建立投播,本端控制远端设备进度/音量/集数。
工程结构&模块类型
├───entry/src/main/ets
│ ├───common
│ │ ├───constants
│ │ │ └───CommonConstants.ets // 常量
│ │ └───utils
│ │ ├───BackgroundTaskManager.ets // 后台任务工具类
│ │ ├───ImageUtil.ets // 图片处理工具类
│ │ └───TimeConvert.ets // 时间转换工具类
│ ├───controller
│ │ ├───VideoCastController.ets // 投播控制器
│ │ ├───VideoPlayerController.ets // 本地播放控制器
│ │ └───VideoSessionController.ets // 播控中心控制器
│ ├───entryability
│ │ └───EntryAbility.ets // Ability的生命周期回调内容
│ ├───entrybackupability
│ │ └───EntryBackupAbility.ets // Ability的生命周期回调内容
│ ├───model
│ │ └───VideoData.ets // 视频数据
│ ├───pages
│ │ ├───Index.ets // 首页
│ │ ├───RemoteControlPage.ets // 远端控制遥控器页
│ │ └───VideoPlayPage.ets // 本地播放页
│ └───view
│ ├───AVCastingControllerView.ets // 远端控制器组件
│ ├───AVPlayerControllerView.ets // 本地播放控制器组件
│ ├───CommonView.ets // 公共组件
│ ├───VideoCastHeadView.ets // 远端控制播放头部组件
│ ├───VideoCastingView.ets // 远端控制播放组件
│ └───VideoPlayingView.ets // 本地控制播放组件
└───entry/src/main/resources
具体实现
详细信息可参考开发指导。
模块依赖
不涉及
约束与限制
1.设备限制
本端设备:手机设备。
远端设备:PC/2in1设备。
2.使用限制
双端设备打开蓝牙和WIFI,并可访问网络。
本示例支持API20及以上版本的SDK,版本号参考: 6.0.0.43;
本示例已支持使Build Version: 6.0.0.43, built on August 24, 2025;
高等级APL特殊签名说明:无;
下载
如需单独下载本工程,执行如下命令:
git init
git config core.sparsecheckout true
echo code/DocsSample/Media/AVSession/AVCastPicker> .git/info/sparse-checkout
git remote add origin OpenHarmony/applications_app_samples
git pull origin master


