Skip to content

chore: remove public LiveKit audio track re-exports - #216

Merged
renal128 merged 2 commits into
nextfrom
remove-livekit-track-reexports
Aug 4, 2026
Merged

chore: remove public LiveKit audio track re-exports#216
renal128 merged 2 commits into
nextfrom
remove-livekit-track-reexports

Conversation

@renal128

@renal128 renal128 commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

What

  • Remove the public ElevenLabs.LocalAudioTrack / RemoteAudioTrack / AudioTrack LiveKit re-exports.
  • Drop the unused import LiveKit from ElevenLabs.swift.
  • Update Usage docs to point at ConversationAudioObserver instead of conversation.inputTrack / agentAudioTrack.
  • Clarify that session track accessors are internal plumbing for observer attachment.

Why

Raw audio observation is now available through ConversationAudioObserver without exposing LiveKit types. These re-exports were the last public LiveKit type surface in the SDK.

Notes

  • LiveKit remains an internal package dependency.
  • Internal Conversation / connection-manager track accessors are unchanged.

Testing

  • swiftformat 'Sources' 'Tests' --lint --strict
  • Focused startup/client/audio tests
  • swift test

Note

Medium Risk
Breaking public API removal for apps that depended on LiveKit track types or published device lists; migration path is documented via ConversationAudioObserver.

Overview
Removes the last public LiveKit type surface from the SDK by deleting ElevenLabs re-exports of LocalAudioTrack, RemoteAudioTrack, and AudioTrack, and drops the unused import LiveKit from the public entry module.

Documentation now steers integrators toward Raw Audio Observers (ConversationAudioObserver on ConversationClient) instead of casting conversation.inputTrack / agentAudioTrack, with notes that didReceive(_:) runs off the main actor on borrowed PCM buffers.

Internal cleanup: Conversation no longer publishes audioDevices / selectedAudioDeviceID, and ConversationAudioManager no longer mirrors input device lists or onDeviceUpdate wiring—session track accessors remain internal for observer attachment only.

Reviewed by Cursor Bugbot for commit e2b81d5. Bugbot is set up for automated code reviews on this repo. Configure here.

@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 18775ca to e09ccc2 Compare July 20, 2026 08:26
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from e09ccc2 to 7d3bef1 Compare July 20, 2026 10:29
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch 2 times, most recently from 6bb4f2c to 823b00a Compare July 20, 2026 13:38
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 823b00a to f8d17ad Compare July 20, 2026 14:38
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from f8d17ad to 8b8c217 Compare July 20, 2026 15:54
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 8b8c217 to 9e10ac4 Compare July 20, 2026 16:20
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 9e10ac4 to 09fb7f6 Compare July 20, 2026 16:40
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch 3 times, most recently from a99614d to ecca291 Compare July 20, 2026 21:53
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch 2 times, most recently from 6f4b399 to f4d5462 Compare July 20, 2026 23:28
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from f4d5462 to 5c97b67 Compare July 21, 2026 10:50
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 5c97b67 to 4f8b398 Compare July 21, 2026 12:28
@renal128
renal128 marked this pull request as draft July 21, 2026 22:59
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 4f8b398 to 997d9f1 Compare July 21, 2026 23:01
@renal128
renal128 marked this pull request as ready for review July 21, 2026 23:04
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 997d9f1 to 9c0fe11 Compare July 22, 2026 13:21
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 9c0fe11 to 51a15c4 Compare July 22, 2026 15:32
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 51a15c4 to be20414 Compare July 23, 2026 09:06
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from be20414 to fa62a42 Compare July 23, 2026 09:10
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch 2 times, most recently from f70ea34 to 49b9777 Compare August 4, 2026 16:38
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 49b9777 to 9e470cc Compare August 4, 2026 18:33
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 9e470cc to 52ae655 Compare August 4, 2026 18:38
Base automatically changed from audio-observers to next August 4, 2026 18:44
renal128 and others added 2 commits August 4, 2026 19:44
ConversationAudioObserver replaces track-based advanced audio access, so
drop ElevenLabs LocalAudioTrack/RemoteAudioTrack/AudioTrack aliases and
point usage docs at the observer API.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@renal128
renal128 force-pushed the remove-livekit-track-reexports branch from 52ae655 to e2b81d5 Compare August 4, 2026 18:44
@renal128
renal128 merged commit 7fbbb42 into next Aug 4, 2026
2 checks passed
@renal128
renal128 deleted the remove-livekit-track-reexports branch August 4, 2026 18:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants