File-New-Project / EarTrumpet

EarTrumpet - Volume Control for Windows
https://eartrumpet.app
Other
9.03k stars 515 forks source link

feature: Show recording devices in UI #1592

Open ViktorShapoval opened 2 months ago

ViktorShapoval commented 2 months ago

Add 2 new community settings that will allow users to see and interact with recording devices in Context menu and Flyout window.

That is very useful for users who have to switch recording device based on what playback device they are using. Example: switching between headphones with integrated microphone and earphones with separate microphone device. Switching in such cases is painful using default Windows UI so EarTrumpet can help alot here.

Changes in UI are only visible when settings toggled on. Without them UI stays as before this PR.

Screenshots with new UI are below. I'm not very satisfied with how Switch to Recording/Playback buttons look and placed so suggestions are welcome here.

Screenshot 2024-08-27 183214

Screenshot 2024-08-27 183257

Screenshot 2024-08-27 183308

Screenshot 2024-08-27 183319

Screenshot 2024-08-27 183333

Screenshot 2024-08-27 183347

CLAassistant commented 2 months ago

CLA assistant check
All committers have signed the CLA.

Gillwindy commented 2 months ago

Hey, I think you might want to read Contributing to EarTrumpet for your feature to merge? I actually found your feature to be really useful for me, so I'm quite looking forward for this to be included.

ViktorShapoval commented 2 months ago

Hey, I think you might want to read Contributing to EarTrumpet for your feature to merge? I actually found your feature to be really useful for me, so I'm quite looking forward for this to be included.

Hi, and thanks for the feedback. As for now, I don't have clear answer from EarTrumpet maintainers whether they agree or not to include such functionality in the project. If you don't want to wait - you can take my branch and build it with Release target yourself with free version of visual studio.

riverar commented 2 months ago

I'm not opposed to this, and like the idea of adding this as a community feature, but I'm nearing the end of a major migration to .NET 8+ and new pipelines, of which this will conflict. We also have an add-on framework in the app which would probably be better suited for this. (We currently have a private repository for some in-house unreleased add-ons and managing recording devices is one of them.)

Hmm, let me think about how we want to handle this. Standby!