Skip to content

feat/node-input-audio#194

Draft
MD4 wants to merge 2 commits into
masterfrom
feat/node-input-audio
Draft

feat/node-input-audio#194
MD4 wants to merge 2 commits into
masterfrom
feat/node-input-audio

Conversation

@MD4
Copy link
Copy Markdown
Owner

@MD4 MD4 commented Mar 26, 2026

Description

This pull request introduces support for audio input devices throughout the stack, enabling the UI and backend to list and use audio input devices as node inputs. It includes new models and repository functions for device discovery, API routes for device listing, and the integration of a new "audio input" node in the UI. Additionally, it updates how control and device IDs are handled for consistency.

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update
  • Refactoring
  • Other (please describe):

Changes Made

Device Audio Input Support

  • Added new Zod models for audio devices (deviceAudioInput, deviceAudioOutput, and deviceAudio) in lib-models, and exported them in the index. [1] [2] [3]
  • Implemented device repository functions in lib-shared to list audio input and output devices using node-web-audio-api, and exported these from the repository index. [1] [2] [3]
  • Created API service and route handlers in service-api to expose /device/audio/input and /device/audio/output endpoints, and integrated them into the main route configuration. [1] [2] [3]

UI Integration for Audio Input Nodes

  • Added a new NodeInputAudio React component and registered it as a node type, updated the node library and node creation logic to support "input-audio" nodes, and implemented a repository hook for fetching available audio input devices. [1] [2] [3] [4] [5] [6] [7]

Program and Runner Domain Changes

  • Updated the program compiler and runner state types to use string-based keys for controls and devices, ensuring correct mapping and extensibility for new input types. [1] [2] [3]

UI Node Improvements

  • Fixed the node input time type to use the correct model, adjusted node style for max width, and made minor improvements to the input control node's handle placement. [1] [2] [3] [4]

Testing

  • Unit tests added/updated
  • Integration tests added/updated
  • Manual testing performed

Checklist

  • Code follows project style guidelines
  • Self-review completed
  • Comments added for complex code
  • Documentation updated
  • No new warnings generated
  • Tests pass locally

@MD4 MD4 force-pushed the feat/node-input-audio branch from 8d357fc to fda8882 Compare March 26, 2026 23:51
@MD4 MD4 force-pushed the feat/node-input-audio branch from fda8882 to 2352445 Compare April 15, 2026 21:26
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