472 Commits

Author SHA1 Message Date
openharmony_ci 34bb82bc8f !3367 merge master into master
add moduleId && submoduleId

Created-by: chenyuming11
Commit-by: weixin_44014140
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!3367
2026-08-17 21:46:13 +08:00
weixin_44014140 f94c4f4642 add moduleId && submoduleId
Signed-off-by: weixin_44014140 <chenyuming12@h-partners.com>
2026-08-17 20:44:48 +08:00
xuhy bf961ddc83 revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
2026-08-14 19:13:38 +08:00
xuhy 078c423e38 xiufu ut
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
2026-08-14 19:01:34 +08:00
xuhy b34fa750de revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
2026-08-11 21:37:04 +08:00
xuhy d762f61611 revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
2026-08-10 16:43:14 +08:00
xuhy 0fc996fb20 revised
Co-Authored-By: Agent
Signed-off-by: xuhy <xuhuanyu2@huawei.com>
2026-08-08 15:14:14 +08:00
openharmony_ci 75cb61e9cf !3326 merge security-fix-lyc into master
修复avsession模块多项并发安全问题(issue #2578部分项)

Created-by: devil_red
Commit-by: 红袍小恶魔
Merged-by: openharmony_ci
Description: ## 关联 Issue

fix #2728

本 PR 修复 issue #2728 所列全部 13 个并发缺陷项(含第 7 项既有 ABBA 死锁),合并后请关闭该 issue。

## 修改内容

**services/session/server/ 服务核心层**
- **AVRouterImpl**:`castHandleToInfoMap_`/`providerManagerMap_` 全路径加锁;抽取 `GetCastProvider`/`GetHwProvider` 两个私有帮助函数,统一"锁内取 shared_ptr 快照、锁外调用"(14+3 处调用点收敛);`Init`/`Release` 的 SDK 调用全部移出锁外,仅赋值/置空在锁内;listener 回调锁外或 EventHandler 异步执行,消除锁序反转;修复 `OnCastStateChange` 持 `servicePtrLock_` 调 `checkEnableCast` 的 ABBA 死锁(快照后锁外调用)
- **HwCastProvider**:监听器列表遍历改"锁内取快照、锁外回调";`QueryCastSessionId` 补 `mutexLock_`
- **SoftbusSessionManager**:`ObtainPeerDeviceId` 补 `socketLock_`,`operator[]` 改 `find`(避免隐式插入默认项)
- **AVSessionUsersManager**:`GetContainerFromAll` 补 `userLock_`,消除惰性初始化竞争导致的会话丢失
- **AVSessionService**:`UpdateTopSession` 锁内取 `topSession_` 的 sptr 副本,消除锁外读 UAF
- **MigrateAVSessionProxy**:心跳/检查 worker 锁内取 `deviceId_` 快照

**services/session/adapter/**
- **AppManagerAdapter**:新增 `appStateChangeObserverLock_`,observer 快照后锁外调用

**frameworks/js/napi(ArkTS 绑定)**
- **NapiAVSession(握手按调用私有化)**:`SetAVPlaybackState` 改用 `PlaybackStateSyncContext{mtx,cv,ready,ret}`,删除 5 个进程级 static,根治跨会话返回码串扰;原生调用保持锁内执行(慢 IPC 不误超时),async 侧谓词等待 1s 有界预算;postTask 失败立即定死结果
- **NapiAVSession(静态暂存指针)**:新增 `napiAVSessionLock_` 保护 `napiAVSession_`,`NewInstance`/`ReCreateInstance` 锁内仅做指针赋值/快照,JS/IPC 调用全部锁外,无死锁风险

**interfaces + frameworks/common**
- **AVSessionPixelMap**:`bufferLock_` 改 `mutable`,`Marshalling` 加锁

**utils/**
- **HashCalculator**:全局 `g_context` 改 `static thread_local`,消除跨线程摘要互相破坏
- **AVSessionRadar**:新增 `deviceInfoLock_` 保护设备 id 惰性初始化与清空

## 自测

- 全部修改均为锁保护/快照/发布顺序类小步改动,已逐文件复查 diff 并做锁序审计(与现状代码组合无死锁)
- 建议在构建环境执行:avsession 相关 UT/FUZZ,以及 `CASTPLUS_CAST_ENGINE_ENABLE`、`DSOFTBUS_ENABLE` 两种开关组合编译

See merge request: openharmony/multimedia_av_session!3326
2026-08-07 18:20:25 +08:00
openharmony_ci 19daf090ff !3236 merge 0715userId into master
add userId for napi controller

Created-by: zhang-minmin-jason
Commit-by: zhang-minmin-jason
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!3236
2026-08-04 19:13:07 +08:00
zhang-minmin-jason cf545dca80 add userId for napi controller
Signed-off-by: zhang-minmin-jason <zhangminmin9@h-partners.com>
2026-08-03 12:15:02 +08:00
红袍小恶魔 c43e48f721 修复avsession模块多项并发安全问题(issue #2578部分项)
针对issue #2578中services/napi/interfaces/utils层的并发缺陷进行修复:
- No.07/08 AVRouterImpl: castHandleToInfoMap_/providerManagerMap_全路径加锁,抽取
  GetCastProvider/GetHwProvider统一锁内取shared_ptr快照;Init/Release的SDK调用
  全部移出锁外,仅赋值/置空在锁内;修复OnCastStateChange持servicePtrLock_调用
  checkEnableCast形成的既有ABBA死锁(快照后锁外调用)
- No.09 HwCastProvider: 监听器遍历改锁内取快照+锁外回调,QueryCastSessionId加锁
- No.10 SoftbusSessionManager: ObtainPeerDeviceId加socketLock_,operator[]改find
- No.11 AVSessionUsersManager::GetContainerFromAll补userLock_,消除惰性初始化竞争
- No.13 UpdateTopSession锁内取topSession_的sptr副本,消除锁外读UAF
- No.16 MigrateAVSessionProxy心跳worker锁内取deviceId_快照
- No.17 AppManagerAdapter新增appStateChangeObserverLock_,快照+锁外调用
- No.20 NapiAVSession的SetAVPlaybackState握手按调用私有化(PlaybackStateSyncContext
  含mtx/cv/ready/ret),删除5个进程级static,消除跨会话返回码串扰;原生调用保持锁内
  执行,async侧谓词等待1s有界预算;postTask失败立即定死结果
- No.21 新增napiAVSessionLock_保护napiAVSession_,NewInstance/ReCreateInstance
  锁内仅做指针赋值/快照,JS/IPC调用全部锁外
- No.24 AVSessionPixelMap::Marshalling加锁(bufferLock_改mutable)
- No.25 HashCalculator全局g_context改static thread_local,消除跨线程摘要破坏
- No.26 AVSessionRadar新增deviceInfoLock_保护设备id惰性初始化与清空

注: issue中No.01-06(PcmCastSession castLock_组)及pcmCastSession_附加项不在本次
提交范围,将后续单独提交;No.12/14/15/18/19/22/23经核实当前代码已修复,无需变更。

Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
2026-08-02 18:39:28 +08:00
张敏敏 0f043a05be add pause pause enum for media center control type
Signed-off-by: 张敏敏 <zhangminmin9@huawei.com>
2026-07-27 19:11:35 +08:00
openharmony_ci 7d39fea762 !3289 merge master2 into master
修复IPC输入校验缺失的安全隐患

Created-by: devil_red
Commit-by: 红袍小恶魔
Merged-by: openharmony_ci
Description: ## 关联Issue
Close #2660

## 修改内容
修复安全审查发现的IPC输入校验缺失问题:

1. **AVCastControlCommand/AVControlCommand::Unmarshalling**:统一提取SetParamFromParcel辅助函数,命令字读取失败或SetCommand校验失败返回nullptr(防止截断Parcel伪造PLAY等合法值命令),各参数setter返回值向上透传,非法参数释放并返回nullptr(调用方均已判空);参数本身已初始化为0/空串,读取失败不会产生未初始化数据
2. **AVCastControlCommand::SetVolume**:补充volume非负校验,与其他setter保持一致
3. **AVFileDescriptor**:成员补充默认初始化,消除AVMediaDescription容错反序列化路径下读取失败时的未初始化数据风险;保持其原有容错读取语义,兼容跨版本/分布式场景下对端字段缺失的情况
4. **AVPlaybackState::Unmarshalling**:增加state范围及IsValidLoopMode校验
5. **AVMetaData**:WriteDrmSchemes补充与读端对称的≤10上限校验;Unmarshalling及SetDisplayTags补充displayTags范围校验(0~DISPLAY_TAG_ALL)
6. **AudioStreamInfo::ReadFromParcel**:改用带返回值的读取接口并逐项校验;**AudioCapabilities::WriteToParcel**:补充与读端对称的<1000上限校验
7. **hw_cast_stream_player**:closingCreditsPosition负值钳制为0,修复int32转uint32回绕

## 兼容性说明
- 所有Unmarshalling失败返回nullptr的路径,Stub/Proxy调用方均已判空
- 合法枚举取值与公开API(d.ts、C API)完全对齐,合法调用行为不变
- 仅新增校验逻辑与私有辅助函数,无ABI/行为非兼容变更

## 自检结果
- [x] 现有UT均使用合法参数,不受影响
- [x] 修改遵循OpenHarmony编码规范(CHECK_AND_RETURN_RET_LOG、K&R风格、成员命名、函数长度≤50行、圈复杂度≤20)

See merge request: openharmony/multimedia_av_session!3289
2026-07-24 20:20:27 +08:00
xiyingxin 8058abb4a0 fix 并发问题告警
Co-Authored-By: Agent
Signed-off-by: xiyingxin <xiyingxin@h-partners.com>
2026-07-24 17:02:12 +08:00
红袍小恶魔 72f91f9668 修复IPC输入校验缺失的安全隐患
1. AVCastControlCommand/AVControlCommand::Unmarshalling提取
   SetParamFromParcel辅助函数,校验Parcel读取及setter返回值,非法或
   截断数据返回nullptr,避免伪造命令及状态不一致的命令对象
2. AVCastControlCommand::SetVolume补充非负校验,与其他setter保持一致
3. AVFileDescriptor成员补充默认初始化,消除AVMediaDescription容错
   反序列化路径下POD成员未初始化数据风险,保持原有容错读取语义
   以兼容跨版本/分布式场景
4. AVPlaybackState::Unmarshalling增加state/loopMode范围校验
5. AVMetaData::WriteDrmSchemes与Unmarshalling补充drmSchemes数量及
   displayTags范围校验,SetDisplayTags增加入参校验
6. AudioStreamInfo::ReadFromParcel校验读取返回值;
   AudioCapabilities::WriteToParcel补充与读端对称的数量上限校验
7. 投屏链路closingCreditsPosition负值钳制,避免int32转uint32回绕

Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
2026-07-24 16:55:24 +08:00
openharmony_ci 448e87856c !3271 merge 内存安全 into master
fix 资源泄露

Created-by: xiyingxin
Commit-by: xiyingxin
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!3271
2026-07-23 21:19:44 +08:00
xiyingxin 44e06a6fed fix 内存安全
Co-Authored-By: Agent
Signed-off-by: xiyingxin <xiyingxin@h-partners.com>
2026-07-23 14:09:51 +08:00
红袍小恶魔 a35407ff28 修复安全评审发现的多处安全隐患
1. av_shared_memory_base:fd判断统一以fd_<0为无效(fd_>=0有效),修复fd=0合法描述符无法关闭及Init误判分支问题
2. av_file_descriptor:成员fd_/offset_/length_增加默认值,消除未初始化栈数据经IPC泄漏风险
3. avcall_state:Unmarshalling增加avCallState_枚举范围校验,非法IPC输入返回nullptr
4. avplayback_state:Unmarshalling增加state_枚举范围校验,阻断非法值穿透调用链
5. avsession_pixel_map_adapter:CopyPixMapToDst DMA分支增加空指针/负值/总量校验,memcpy_s逐行传剩余缓冲区大小,消除堆溢出隐患
6. napi_avsession_callback:AddCallback失败路径补充napi_delete_reference,修复napi_ref泄漏
7. hw_cast_stream_player:GetRecommendedResolutionLevel增加空列表校验,消除max_element空区间解引用UB
8. remote_session_syncer_impl:Put/GetAVMetaData改用MessageParcel,消除static_cast向下转型UB

Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
2026-07-22 21:30:36 +08:00
zhangzijie1007 9729796a0d commit 接口描述修改
Signed-off-by: zhangzijie1007 <zhangzijie25@huawei.com>
2026-07-06 15:35:03 +08:00
LiYimeng 3035e729fb diff
Signed-off-by: LiYimeng <liyimeng2@huawei.com>
2026-06-27 15:34:00 +08:00
openharmony_ci 3f881e79a0 !3138 merge carcast into master
car cast

Created-by: Liyimengg
Commit-by: LiYimeng
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!3138
2026-06-23 19:31:55 +08:00
LiYimeng a5a70debac car cast
Signed-off-by: LiYimeng <liyimeng2@huawei.com>
2026-06-23 17:43:40 +08:00
openharmony_ci 7bbf49b84c !3121 merge master into master
commit 代码规范整改

Created-by: zhangzijie1007
Commit-by: zhangzijie1007
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!3121
2026-06-18 12:30:42 +08:00
zhangzijie1007 e01ff8448c commit 代码规范整改
Signed-off-by: zhangzijie1007 <zhangzijie25@huawei.com>
2026-06-17 14:54:10 +08:00
openharmony_ci e85b3acaa4 !3110 merge zzj520 into master
commit 屏蔽未知castState

Created-by: zhangzijie1007
Commit-by: zhangzijie1007
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!3110
2026-06-15 20:05:39 +08:00
zhangzijie1007 af3d2fda95 commit hiplay支持酒店投屏
Signed-off-by: zhangzijie1007 <zhangzijie25@huawei.com>
2026-06-09 10:14:07 +08:00
zhangzijie1007 699e4d5beb commit 屏蔽未知castState
Signed-off-by: zhangzijie1007 <zhangzijie25@huawei.com>
2026-06-08 16:19:19 +08:00
红袍小恶魔 8e5123c021 同步DeviceType枚举定义,对齐d.ts接口变更
根据@ohos.multimedia.avsession.d.ts更新DeviceType枚举:
- 删除DEVICE_TYPE_UNKNOWN(-1)
- 新增DEVICE_TYPE_PAD(6)、DEVICE_TYPE_DEFAULT_CAST_PLUS_STREAM(7)
- DEVICE_TYPE_CAR值从131改为4,DEVICE_TYPE_2IN1从2607改为8,DEVICE_TYPE_HIPLAY从2611改为15
- 调整枚举定义顺序与d.ts保持一致
- 同步更新napi导出、taihe IDL定义及Cast设备类型映射表

Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
2026-05-23 19:38:34 +08:00
张敏敏 1161bae558 remove playbackspeed enum
Signed-off-by: 张敏敏 <zhangminmin9@huawei.com>
2026-05-17 19:15:34 +08:00
红袍小恶魔 29dc035608 Merge branch 'master' of gitcode.com:openharmony/multimedia_av_session 2026-05-11 21:10:37 +08:00
张敏敏 8ac7f16f6b add MediaCenterControlType and SupportedPlaySpeeds features
Signed-off-by: zhang-minmin-jason <18179496713@163.com>

Co-Authored-By: Agent
2026-04-25 15:52:05 +08:00
红袍小恶魔 22ba311538 私有API整改:补充枚举类型并实现DeviceType兼容映射
1. ExtraKey枚举补充REQUIRE_ABILITY_LIST、SUPPORT_URL_CASTING、LIVE_VIEW_HIDDEN_WHEN_KEYGUARD
2. DeviceType枚举新增DEVICE_TYPE_UNKNOWN、DEVICE_TYPE_CAR、DEVICE_TYPE_2IN1、DEVICE_TYPE_HIPLAY
3. ConnectionState枚举新增AUTHING、MIRROR_TO_STREAM、STREAM_TO_MIRROR
4. NAPI层和Taihe IDL同步导出新增枚举值
5. 合并DlnaExtrasKey到ExtraKeyEvent结构体
6. HwCastProvider中新增CastEngine DeviceType到avSession DeviceType的映射函数

Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
2026-04-24 17:42:48 +08:00
LiYimeng 56bf3b96c2 dfx
Co-Authored-By: Agent
Signed-off-by: LiYimeng <liyimeng2@huawei.com>
2026-04-24 16:44:58 +08:00
红袍小恶魔 e8e824f10a Merge branch 'master' of gitcode.com:openharmony/multimedia_av_session 2026-03-31 15:13:17 +08:00
红袍小恶魔 bfbca2d4d2 支持镜像转流来自接收端事件处理及优化
- 新增SetStreamToMirrorFromSink和IsStreamToMirrorFromSink接口用于追踪镜像转流状态
- 添加HandleStreamToMirrorFromSinkEvent处理镜像转流事件,触发状态更新和回调通知
- 在AVSessionItem中新增isMediaChangeForMirrorToStream标志,支持接收端事件后的媒体变化检测
- 优化IsMirrorToStreamCastAllowed逻辑,接收端事件后需检测媒体变化才允许镜像转流
- 修复hw_cast_provider_session中事件分发逻辑,确保事件正确传递给所有监听器

Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
2026-03-31 15:00:25 +08:00
weixin_43563670 e80e9f471a update: 更新文件 avsession_descriptor.h
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
2026-03-28 16:40:30 +08:00
openharmony_ci 81a5780c03 !2916 merge master into master
add HUAWEIHiPlay-Dual

Created-by: chenshuoyi_2025
Commit-by: chenshuoyi_2025
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)

add HUAWEIHiPlay-Dual, pmc_cast接入大小脑

### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!2916
2026-03-27 14:04:16 +08:00
openharmony_ci f8aa893825 !2921 merge fix_remote_casting_0323 into master
add IsHiPlayCasting

Created-by: chenshuoyi_2025
Commit-by: chenshuoyi_2025
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)
新增IsHiPlayCasting状态,解决先发hiplay后发资源投播时,无法向大小脑申请资源问题。


### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!2921
2026-03-27 00:15:57 +08:00
chenshuoyi_2025 bf9dece1d5 add IsHiPlayCasting
Signed-off-by: chenshuoyi_2025 <chenshuoyi@huawei.com>
2026-03-25 20:59:29 +08:00
chenshuoyi_2025 8e7924c15d add HUAWEIHiPlay-Dual
Signed-off-by: chenshuoyi_2025 <chenshuoyi@huawei.com>
2026-03-25 15:44:22 +08:00
红袍小恶魔 2bb1b1f4fd feat: 支持DLNA投播自定义扩展参数
支持通过extras传递DLNA协议的DIDL-Lite和CurrentURIMetadata参数:
- 新增ExtraKey枚举及DlnaExtrasKey常量定义
- 实现GetDlnaExtrasFromWantParams方法解析扩展参数
- buildCastExtraInfo集成DLNA参数处理并转换为JSON格式
- JS层导出ExtraKey枚举供应用使用

Co-Authored-By: Agent
Signed-off-by: 红袍小恶魔 <luyuchen3@huawei.com>
2026-03-25 12:07:52 +08:00
weixin_43563670 5753d9a1cb update: 更新文件 i_avsession_service_listener.h
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
2026-03-18 11:02:38 +08:00
weixin_43563670 f3d028aaea update: 更新文件 avsession_manager.h
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
2026-03-18 11:02:07 +08:00
weixin_43563670 6a6adf33d4 update: 更新文件 av_router.h
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
2026-03-18 11:01:37 +08:00
weixin_43563670 b158721bf7 update: 更新文件 av_cast_provider.h
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
2026-03-18 11:00:48 +08:00
sun-yutao5 8635752bb2 setBackgroundPlayMode enum change
Signed-off-by: sun-yutao5 <sunyutao5@huawei.com>
2026-03-16 17:50:55 +08:00
openharmony_ci 2253ffacaf !2883 merge master into master
support background play mode for capsule

Created-by: sun-yutao5
Commit-by: sun-yutao5
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/multimedia_av_session!2883
2026-03-13 20:17:30 +08:00
sun-yutao5 9a71a40c20 support background play mode for capsule
Signed-off-by: sun-yutao5 <sunyutao5@huawei.com>
2026-03-12 20:40:25 +08:00
weixin_43563670 d83b5b1620 设备级投播修改castmode
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
2026-03-10 22:07:44 +08:00
weixin_43563670 48c293d0dd update: 更新文件 i_avsession_service_listener.h
Signed-off-by: weixin_43563670 <diyujia1@huawei.com>
2026-03-09 23:06:45 +08:00