@agora-js/media 4.24.5 → 4.24.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AgoraRTC_N-media.esm.mjs +2 -2
- package/AgoraRTC_N-media.js +2 -2
- package/media.d.ts +20 -0
- package/package.json +3 -3
- package/rtc-sdk-media_en.d.ts +3 -0
package/media.d.ts
CHANGED
|
@@ -264,6 +264,12 @@ declare class AudioElementPlayCenter {
|
|
|
264
264
|
private elementStateMap;
|
|
265
265
|
private elementsNeedToResume;
|
|
266
266
|
private sinkIdMap;
|
|
267
|
+
/**
|
|
268
|
+
* element → 当前 trackId 的可变持有者。
|
|
269
|
+
* 事件监听闭包读它拿「当前 id」,而不是捕获创建时的 id;
|
|
270
|
+
* 这样预渲染移交后 reuseTrackId 只改一处,监听器就写到新 id 上(见 reuseTrackId)。
|
|
271
|
+
*/
|
|
272
|
+
private elementIdMap;
|
|
267
273
|
constructor();
|
|
268
274
|
setSinkID(trackId: string, deviceID: string): Promise<void>;
|
|
269
275
|
play(track: MediaStreamTrack, trackId: string, volume: number, sessionId?: string): void;
|
|
@@ -272,6 +278,12 @@ declare class AudioElementPlayCenter {
|
|
|
272
278
|
setVolume(trackId: string, volume: number): void;
|
|
273
279
|
getVolume(trackId: string): number;
|
|
274
280
|
stop(trackId: string): void;
|
|
281
|
+
/**
|
|
282
|
+
* 预渲染移交:把已在播放的 <audio> 从临时 id 迁移到 track 的正式 id(getTrackId())。
|
|
283
|
+
* 参照 RemoteVideoTrack 复用 _prePlayer 的思路——渲染层归属 track 自己的身份,
|
|
284
|
+
* 而不是让 track 长期追着一个临时 id。迁移 3 张 map + 更新事件监听读取的 id 持有者。
|
|
285
|
+
*/
|
|
286
|
+
reuseTrackId(fromId: string, toId: string): void;
|
|
275
287
|
private bindAudioElementEvents;
|
|
276
288
|
getPlayerState(trackId: string): string;
|
|
277
289
|
/**
|
|
@@ -4452,6 +4464,14 @@ export declare class RemoteAudioTrack extends RemoteTrack implements IRemoteAudi
|
|
|
4452
4464
|
getStats(): RemoteAudioTrackStats;
|
|
4453
4465
|
play(): void;
|
|
4454
4466
|
stop(): void;
|
|
4467
|
+
/**
|
|
4468
|
+
* 预渲染移交:join 时(UID 未知)音频已用临时 id 起播,这里把渲染层交给正式构造出来的 track。
|
|
4469
|
+
* 必须按后端分两路——预渲染恒走 <audio>,但本 track 可能配置成 WebAudio:
|
|
4470
|
+
* - <audio> 后端:把预渲染那个元素 re-key 到 getTrackId(),track 之后一律用自己的 id。
|
|
4471
|
+
* - WebAudio 后端:预渲染的 <audio> 是「错的后端」,拆掉它、改由 WebAudio source 接管
|
|
4472
|
+
* (参照 setAmplifiedVolume 的 audio-element→WebAudio 适配:stop 元素 + 启 _source)。
|
|
4473
|
+
*/
|
|
4474
|
+
_reusePreAudioElement(tempId: string, isPlaying: boolean): void;
|
|
4455
4475
|
_destroy(): void;
|
|
4456
4476
|
_isFreeze(): boolean;
|
|
4457
4477
|
protected _updatePlayerSource(updateWebAudioSource?: boolean): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agora-js/media",
|
|
3
|
-
"version": "4.24.
|
|
3
|
+
"version": "4.24.7",
|
|
4
4
|
"description": "media module across @agora-js packages",
|
|
5
5
|
"main": "AgoraRTC_N-media.js",
|
|
6
6
|
"module": "AgoraRTC_N-media.esm.mjs",
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
"homepage": "https://api-ref.agora.io/en/voice-sdk/web/4.x/index.html",
|
|
24
24
|
"peerDependencies": {},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@agora-js/shared": "4.24.
|
|
27
|
-
"@agora-js/report": "4.24.
|
|
26
|
+
"@agora-js/shared": "4.24.7",
|
|
27
|
+
"@agora-js/report": "4.24.7",
|
|
28
28
|
"axios": "^1.16.1",
|
|
29
29
|
"agora-rte-extension": "^1.2.4",
|
|
30
30
|
"agora-rte-extension-ng": "^1.0.3",
|
package/rtc-sdk-media_en.d.ts
CHANGED
|
@@ -172,6 +172,7 @@ declare class AudioElementPlayCenter {
|
|
|
172
172
|
private elementStateMap;
|
|
173
173
|
private elementsNeedToResume;
|
|
174
174
|
private sinkIdMap;
|
|
175
|
+
private elementIdMap;
|
|
175
176
|
constructor();
|
|
176
177
|
setSinkID(trackId: string, deviceID: string): Promise<void>;
|
|
177
178
|
play(track: MediaStreamTrack, trackId: string, volume: number, sessionId?: string): void;
|
|
@@ -180,6 +181,7 @@ declare class AudioElementPlayCenter {
|
|
|
180
181
|
setVolume(trackId: string, volume: number): void;
|
|
181
182
|
getVolume(trackId: string): number;
|
|
182
183
|
stop(trackId: string): void;
|
|
184
|
+
reuseTrackId(fromId: string, toId: string): void;
|
|
183
185
|
private bindAudioElementEvents;
|
|
184
186
|
getPlayerState(trackId: string): string;
|
|
185
187
|
private autoResumeAudioElement;
|
|
@@ -2778,6 +2780,7 @@ export declare class RemoteAudioTrack extends RemoteTrack implements IRemoteAudi
|
|
|
2778
2780
|
getStats(): RemoteAudioTrackStats;
|
|
2779
2781
|
play(): void;
|
|
2780
2782
|
stop(): void;
|
|
2783
|
+
_reusePreAudioElement(tempId: string, isPlaying: boolean): void;
|
|
2781
2784
|
_destroy(): void;
|
|
2782
2785
|
_isFreeze(): boolean;
|
|
2783
2786
|
protected _updatePlayerSource(updateWebAudioSource?: boolean): void;
|