Skip to content

[WIP] 複数の音声出力デバイスから同時に音を出すプロジェクトを新規作成#285

Draft
okathira wants to merge 1 commit intomainfrom
feature/new-project-audio-multi-output
Draft

[WIP] 複数の音声出力デバイスから同時に音を出すプロジェクトを新規作成#285
okathira wants to merge 1 commit intomainfrom
feature/new-project-audio-multi-output

Conversation

@okathira
Copy link
Collaborator

image
image

複数の音声出力デバイス、例えばヘッドホンとモニターなどから、同時に音を鳴らすウェブアプリ。

左のディスプレイから正弦波、右のディスプレイからその逆位相を流してみたが、そのままだとタイミングがズレてしまう。
これのタイミングをあわせる方法、もしくは位相をリアルタイムで調整する方法を探りたい。
最終的には、簡易的なノイズキャンセリング体験ができると良い。

@okathira okathira self-assigned this May 28, 2025
@okathira okathira marked this pull request as draft May 28, 2025 14:54
@okathira okathira requested a review from Copilot June 11, 2025 14:39
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces a new project that enables simultaneous audio output on multiple devices along with dedicated controls for oscillator settings and device management. Key changes include the implementation of React components for device selection and oscillator control, updates to state management using Jotai, and accompanying configuration and documentation enhancements.

Reviewed Changes

Copilot reviewed 30 out of 30 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/audio-multi-output/features/OutputController/DevicePanel.tsx Added UI panel for controlling device-specific oscillator settings.
src/audio-multi-output/features/OscillatorControl/* Implemented oscillator control components, including waveform selection, frequency slider, and phase inversion switch.
src/audio-multi-output/features/DeviceManager/* Built components and logic for managing and selecting audio output devices.
src/audio-multi-output/consts/audioConsts.ts Defined constants for device labels, sample rate, buffer size, and error messages.
src/audio-multi-output/App.tsx Integrated all modules within the main application and added browser support checks.
Additional files (atom.ts, index.ts, README.md, Scratchpad.md, eslint.config.js) Updated configuration, state management, documentation, and linting settings for project consistency.

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

Comments