1# multimedia子系统变更说明
2
3## cl.multimedia.1 audioRenderer和audioCapturer回调接口变更
4
5**访问级别**
6
7公开接口
8
9**变更原因**
10
11audioRenderer和audioCapturer回调接口,为了更准确反馈当前流的发声/录音设备,回调信息存在变化。
12
13**变更影响**
14
15非播放/录音状态时,AudioRendererChangeInfo.deviceDescriptorsAudioCapturerChangeInfo.deviceDescriptors为空设备。
16
17**变更发生版本**
18
19从OpenHarmony SDK 4.1.3.3开始。
20
21**变更的接口/组件**
22
23变更前:
24
25on(type: 'audioRendererChange', callback: Callback<AudioRendererChangeInfoArray>): void;
26
27on(type: 'audioCapturerChange', callback: Callback<AudioCapturerChangeInfoArray>): void;
28
29非播放/录音状态时,AudioRendererChangeInfo.deviceDescriptorsAudioCapturerChangeInfo.deviceDescriptors为上一次播放/录音的设备。
30
31变更后:
32
33on(type: 'audioRendererChange', callback: Callback<AudioRendererChangeInfoArray>): void;
34
35on(type: 'audioCapturerChange', callback: Callback<AudioCapturerChangeInfoArray>): void;
36
37非播放/录音状态时,AudioRendererChangeInfo.deviceDescriptorsAudioCapturerChangeInfo.deviceDescriptors为空设备。
38
39**适配指导**
40
41修改后用户调用该接口时,如果需要通过回调获取当前发声/录音设备,需要先启动播放/录音。
42
43## cl.multimedia.2 cameraInput的open和on回调接口行为变更
44
45**访问级别**
46
47公开接口
48
49**变更原因**
50
51cameraInput的open接口,新增抢占机制,保证高优先级应用可以优先使用相机,open和on回调接口行为出现变化。
52
53**变更影响**
54
55该变更为非兼容性变更,可能影响三方应用的兼容性。
56
57**变更发生版本**
58
59从OpenHarmony SDK 4.1.3.3开始。
60
61**变更的接口/组件**
62
63变更前:
64
65on(type: 'error', camera: CameraDevice, callback: ErrorCallback): void;
66
67open(callback: AsyncCallback<void>): void;
68
69当存在其他应用正在使用相机设备时,当前应用使用open接口打开失败,回调CONFLICT_CAMERA错误码;
70
71变更后:
72
73on(type: 'error', camera: CameraDevice, callback: ErrorCallback): void;
74
75open(callback: AsyncCallback<void>): void;
76
77当存在其他应用正在使用相机设备时,当前应用若优先级高于其他应用,比如处于前台,其他应用已退后台,此时使用open接口打开成功,
78
79之前使用相机的应用会收到回调DEVICE_PREEMPTED错误码;
80
81**适配指导**
82
83在使用cameraInput的on回调接口时,需要对错误码增加DEVICE_PREEMPTED错误的处理逻辑。