Skip to content

Audiosync lockdown systems fork#1

Merged
micahflee merged 2 commits into
mainfrom
audiosync-lockdown-systems-fork
Feb 2, 2026
Merged

Audiosync lockdown systems fork#1
micahflee merged 2 commits into
mainfrom
audiosync-lockdown-systems-fork

Conversation

@micahflee
Copy link
Copy Markdown
Member

No description provided.

This adds the ability to capture audio samples directly from WebRTC's
audio device module before they are played to the speaker. This enables
call recording without requiring system audio loopback permissions.

Changes:
- Add AudioSink trait in media.rs (similar to existing VideoSink)
- Add audio_sink field and SetAudioSink event to AudioDeviceModule
- Modify init_playout() data_callback to send samples to registered sink
- Add set_audio_sink() method to PeerConnectionFactory
- Add LastAudioFramesSink buffer in electron.rs for JS polling
- Export setAudioCaptureEnabled() and receiveAudioSamples() to Node.js
- Add TypeScript bindings in Service.ts for Call and GroupCall classes

API usage:
  call.setAudioCaptureEnabled(true);
  const result = call.receiveAudioSamples(int16Buffer);
  // result: { samplesWritten: number, sampleRate: number } | undefined
Change package name from @signalapp/ringrtc to @lockdown-systems/ringrtc
and set up automated publishing workflow for the fork.

Changes:
- Update package name to @lockdown-systems/ringrtc
- Bump version to 2.63.0-audiosink.1 to indicate fork with audio capture
- Change repository URL to lockdown-systems GitHub organization
- Update prebuildUrl to download from GitHub Releases instead of Signal's GCS
- Add GitHub Actions workflow for automated releases on version tags
  - Builds native binaries for Linux (x64, arm64), macOS (x64, arm64),
    and Windows (x64, arm64)
  - Creates GitHub Release with prebuild tarball
  - Publishes to npm with checksum validation

This enables publishing the AudioSink API additions as a separate npm
package that can be consumed by Observer Vault.
@micahflee micahflee merged commit 991a2fd into main Feb 2, 2026
3 of 13 checks passed
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.

1 participant