From f41daa64177d7c4269e6e8e5adc983ea37966ea7 Mon Sep 17 00:00:00 2001 From: Daisuke Murase Date: Mon, 2 Jun 2025 10:46:13 -0700 Subject: [PATCH 1/3] add close method to track --- packages/livekit-rtc/src/track.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/livekit-rtc/src/track.ts b/packages/livekit-rtc/src/track.ts index 74bc437f..722e15a2 100644 --- a/packages/livekit-rtc/src/track.ts +++ b/packages/livekit-rtc/src/track.ts @@ -45,6 +45,10 @@ export abstract class Track { get muted(): boolean | undefined { return this.info?.muted; } + + async close() { + this.ffi_handle.dispose(); + } } export class LocalAudioTrack extends Track { From 8a1a86ea3339a89c896d91a628d32894c594465f Mon Sep 17 00:00:00 2001 From: Daisuke Murase Date: Mon, 2 Jun 2025 11:11:01 -0700 Subject: [PATCH 2/3] fix example as well --- examples/publish-wav/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/publish-wav/index.ts b/examples/publish-wav/index.ts index 8c57dc5a..c41a685d 100644 --- a/examples/publish-wav/index.ts +++ b/examples/publish-wav/index.ts @@ -64,6 +64,7 @@ while (written < dataSize) { } await source.waitForPlayout(); // release resources allocated for audio publishing +await track.close(); await source.close(); await room.disconnect(); From 523f0f45ae815806f5bf4c927f8bf6531b06e9c2 Mon Sep 17 00:00:00 2001 From: Daisuke Murase Date: Mon, 9 Jun 2025 13:50:59 -0700 Subject: [PATCH 3/3] Create selfish-moons-tie.md --- .changeset/selfish-moons-tie.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/selfish-moons-tie.md diff --git a/.changeset/selfish-moons-tie.md b/.changeset/selfish-moons-tie.md new file mode 100644 index 00000000..c2dcc811 --- /dev/null +++ b/.changeset/selfish-moons-tie.md @@ -0,0 +1,6 @@ +--- +"example-publish-wav": patch +"@livekit/rtc-node": patch +--- + +Fix memory leak of AudioSource