belphemur / soundswitch Goto Github PK
View Code? Open in Web Editor NEWC# application to switch default playing device. Download: https://soundswitch.aaflalo.me/
Home Page: https://soundswitch.aaflalo.me/
License: GNU General Public License v2.0
C# application to switch default playing device. Download: https://soundswitch.aaflalo.me/
Home Page: https://soundswitch.aaflalo.me/
License: GNU General Public License v2.0
Implement an auto-updater directly checking github release and download the Installer.
From:
https://soundswitch.codeplex.com/workitem/42
Can you add a toggle function in addition to the manual list select? I just have two channels; speakers and USB headphones. A simple click should toggle them. If people have more than one then revert to the list in settings.
TY
The Ressource file was missing. It wasn't in the Installation process.
Hi guys. i've been using this for a few months, and recently reccomended it to a friend. he noticed that when he uses it, if he presses his hotkey it will switch the audio device, but any audio that was currently playing will continue to output to it's original source, rather than switching as well.
for me, it switches all audio to output to any given device (which was my desire)
I just reinstalled windows last night and now it seems to behave like his system now, and id prefer it to just force-switch any running programs over to the next audio device. any ideas why it's doing this and how to handle it?
Windows 10 64Bit for me, Windows 7 64Bit for him.
Especially for the user to have a simple file to give me for debugging.
TracerX: Log file opened at 2/09/2015 7:00:54 p. m.. FullFilePolicy = Wrap, Use_00 = False, MaxGrowth = 1 MB, AppendIfSmallerThan = 0 1, initial size = 3.
19:00:54.310 Fatal SoundSwitch+Program.HandleException Program.HandleException entered
19:00:54.310 Fatal SoundSwitch+Program.HandleException Exception OccuredException type: AudioEndPoint.DefSoundException
Message: Call IMMDeviceEnumerator::GetDefaultAudioEndpoint(...) failed
Source: Audio.EndPoint.Controller.Wrapper
StackTrace:
en AudioEndPointControllerWrapper.AudioController.GetRecordingDevices(DeviceState state)
en SoundSwitch.Model.AppModel.get_AvailableRecordingDevices()
en SoundSwitch.Util.TrayIcon..ctor()
en SoundSwitch.Program.Main()
19:00:58.394 Fatal SoundSwitch+Program.HandleException Program.HandleException exiting
For now it still use the configuration file to check if the program will start on startup.
Much appreciation for continuing development for this app. A Microsoft .NET Framework error prevents system from logging out or shutting down. I choose Restart Anyway for now to force it. Here are error details:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.OverflowException: Arithmetic operation resulted in an overflow.
at SoundSwitch.Util.WindowsAPIAdapter.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.6.96.0 built by: NETFXREL2STAGE
SoundSwitch
Assembly Version: 3.1.1.28412
Win32 Version: 3.1.1.28412
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
Newtonsoft.Json
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1.18622
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Numerics
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Runtime.Serialization
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Xml.Linq
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
System.Data
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
Microsoft.WindowsAPICodePack
Assembly Version: 1.1.0.0
Win32 Version: 1.1.0.0
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.6.79.0 built by: NETFXREL2
Audio.EndPoint.Controller.Wrapper
Assembly Version: 1.0.5710.26611
Win32 Version:
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Add an easy access to the Mixer.
Windows 10 64x
Fresh install
When pressing the Hotkey I get an error that configuration is needed. However if I click the icon and switch it the audio does switch.
Contents of the SoundSwitchConfiguration.json are:
{"SelectedPlaybackDeviceList":["Speakers (High Definition Audio Device)","Speakers (Plantronics Savi 7xx)"],"SelectedRecordingDeviceList":[],"LastPlaybackActive":"Speakers (Plantronics Savi 7xx)","FirstRun":false,"PlaybackHotKeys":{"Keys":122,"Modifier":3},"RecordingHotKeys":{"Keys":172,"Modifier":0},"ChangeCommunications":false,"UpdateCheckInterval":43200}
Hi, I have installed the latest 3.2.1.30803 version but it always crashes whenever I try to open the Settings window. It ask me about do I want to save a log or not, then it tries to restart but after the "Restarting SoundSwitch" window it keeps closed until I start it again.
Op.sys.: Windows 8.1 64bit
This is what it says in the Event viewer: (translated to english...)
Application: SoundSwitch.exe
Framework version: v4.0.30319
Description: The process was interrupted due to an unhandled exception.
Exception Details: System.ArgumentException
Stack:
The following locations: System.Windows.Forms.FileDialog.set_Filter (System.String)
The following locations: SoundSwitch.Program.Application_ThreadException (System.Object, System.Threading.ThreadExceptionEventArgs)
The following places: + ThreadContext.OnThreadException System.Windows.Forms.Application (System.Exception)
The following locations: System.Windows.Forms.Control.WndProcException (System.Exception)
The following locations: System.Windows.Forms.NativeWindow.Callback (IntPtr, Int32, IntPtr, IntPtr)
The following locations: System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW (MSG ByRef)
The following locations: System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW (MSG ByRef)
The following locations: System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr, Int32, Int32)
The following places: + System.Windows.Forms.Application ThreadContext.RunMessageLoopInner (Int32, System.Windows.Forms.ApplicationContext)
The following places: + System.Windows.Forms.Application ThreadContext.RunMessageLoop (Int32, System.Windows.Forms.ApplicationContext)
The following locations: SoundSwitch.Program.Main ()
The name of the application error caused by: SoundSwitch.exe, version 3.2.1.30803, timestamp: 0x55d9d376
The name of the module that caused the error: KERNELBASE.dll, version 6.3.9600.17415, time stamp: 0x54505737
Exception Code: 0xe0434352
Error position: 0x0000000000008b9c
The cause errors Process ID: 0x17e0
Launch date for application is causing the problem: 0x01d0de477bdb4f77
The error causes the application path: C: \ Program Files \ Sound Switch \ SoundSwitch.exe
The module is causing the error path: C: \ Windows \ system32 \ KERNELBASE.dll
Report ID: bdc34b5c-4a3a-11e5-829e-bc5ff45a2986
Also I forgot to say that the installer always downloads the .NET 4.5.2 runtime even if I have 4.5.3 (aka 4.6 preview) installed.
Cleaner code, optimized and also provide the possibility to change Communications default device.
See #14
I get this error message each time I open the settings. After that it just opens, but without any devices in the list, and thus the shortcut is not doing anything.
The program worked fine upon installation, but the next day it won't start. Error log:
http://speedy.sh/AQv37/Logs.zip
TracerX: Log file opened at 2015-09-02 06:56:48. FullFilePolicy = Wrap, Use_00 = False, MaxGrowth = 1 MB, AppendIfSmallerThan = 0 1, initial size = 3.
06:56:55.513 Fatal SoundSwitch+Program.HandleException Program.HandleException entered
06:56:55.671 Fatal SoundSwitch+Program.HandleException Exception OccuredException type: System.IndexOutOfRangeException
Message: Index was outside the bounds of the array.
Source: SoundSwitch
StackTrace:
at SoundSwitch.Framework.AudioDeviceIconExtractor.ExtractIconFromAudioDevice(AudioDeviceWrapper audioDevice, Boolean largeIcon)
at SoundSwitch.UI.Forms.Settings.PopulateAudioList()
at SoundSwitch.Program.Main()
06:57:04.088 Fatal SoundSwitch+Program.HandleException Program.HandleException exiting
For now only french and english.
Windows 10 64-bit system
SoundSwitch v3.2.0 appears to have installed correctly. When launched either from the desktop or from the start menu, a window briefly appears before closing. In the hidden icons list, the SoundSwitch icon appears until I hover the mouse pointer over it, then the icon disappears.
If Rarma Radio is running SoundSwitch doesn't do it's job, but if the RarmaRadio is closed it is working fine.
Rarma Radio's website: http://www.raimersoft.com/rarmaradio.aspx
Currently whenever I start the application, I can select the audio devices that I'd like to switch between, I press closed and nothing happens. If I use the hotkey I get the error that no devices are available to switch to.
Win 10 x64 (Education)
Event Viewer error:
03:45:06.322 WindowsAPIAdapter SoundSwitch+TrayIcon.b__10_0 No devices available
For now soundswitch need a combination of keys to set the hotkeys, it would be nice to be able to set only one key.
See #34
Not that many app where using this device type.
Better managing of the audio device like the one that get's connected/removed.
Still have the wrap around my head on this.
But this is doable.
The new library let me get the icon from the windows dll, this way it can help the user to know what kind of device it is.
In some cases, the redist version is not detected as installed.
It doesn't detect when the version 14.0.23506 is installed.
When in Chrome, for instance watching YouTube video, switching outputs has no effect in realtime. It only has its effect after closing and re-opening Chrome. Refresh (F5) or hard refresh (CTRL+F5) both don't have an impact either.
This can also be done while another audio source is playing like WinAmp and/or VLC and they will change realtime while the Chrome audio stays on the output it was when you started the program.
Running in Admin mode changes nothing either.
All this is on version 3.6.1.12988 on Win10 clean install.
I've been asked to replace the Windows Notification by a sound in the right soundcard.
NB: NAudio
The app is crashing on launch brings up a window too quick to read what it says.
Also provide the certificate to let the user install it manually.
To let the user follow the changes easily.
Make SoundSwitch change the default audio device to a selected one when a set application is launched.
Like a game X is launched -> SoundSwitch configured to switch to headphones.
With the new update of windows 10, dotnet got updated to 4.6.1.
The installer doesn't detect it and want the user to install 4.5.2
Can get Soundswitch to run. There is no error / crash message. Recent version (3.5.1), Windows 10 Pro x64, All dependencies installed (.NET Framework 4.6 Advanced Series, Visual C++ 2015 Redistributable), Certificate installed as recommended.
Don't know if it's any help but this is the app crash report (Report.wer):
Version=1
EventType=APPCRASH
EventTime=130879201839293729
ReportType=2
Consent=1
UploadTime=130879201839508939
ReportIdentifier=0bc3cd30-65e4-11e5-8d75-10bf48804b9f
IntegratorReportIdentifier=943775f8-ca38-4d25-9b93-5df991acaf83
NsAppName=SoundSwitch.exe
Response.BucketId=ba5e667630403900f4e90312c107f4a8
Response.BucketTable=4
Response.LegacyBucketId=120323425146
Response.type=4
Sig[0].Name=Anwendungsname
Sig[0].Value=SoundSwitch.exe
Sig[1].Name=Anwendungsversion
Sig[1].Value=3.5.1.26132
Sig[2].Name=Anwendungszeitstempel
Sig[2].Value=55fbf5f8
Sig[3].Name=Fehlermodulname
Sig[3].Value=KERNELBASE.dll
Sig[4].Name=Fehlermodulversion
Sig[4].Value=10.0.10240.16384
Sig[5].Name=Fehlermodulzeitstempel
Sig[5].Value=559f38c3
Sig[6].Name=Ausnahmecode
Sig[6].Value=e06d7363
Sig[7].Name=Ausnahmeoffset
Sig[7].Value=000000000002a1c8
DynamicSig[1].Name=Betriebsystemversion
DynamicSig[1].Value=10.0.10240.2.0.0.256.48
DynamicSig[2].Name=Gebietsschema-ID
DynamicSig[2].Value=1031
DynamicSig[22].Name=Zusatzinformation 1
DynamicSig[22].Value=ad07
DynamicSig[23].Name=Zusatzinformation 2
DynamicSig[23].Value=ad07192b91c4e5a5ac3605a31c644834
DynamicSig[24].Name=Zusatzinformation 3
DynamicSig[24].Value=dd03
DynamicSig[25].Name=Zusatzinformation 4
DynamicSig[25].Value=dd037a0b8c9da053fb9632f928376ad4
UI[2]=C:\Program Files\SoundSwitch\SoundSwitch.exe
LoadedModule[0]=C:\Program Files\SoundSwitch\SoundSwitch.exe
LoadedModule[1]=C:\Windows\SYSTEM32\ntdll.dll
LoadedModule[2]=C:\Windows\SYSTEM32\MSCOREE.DLL
LoadedModule[3]=C:\Windows\system32\KERNEL32.dll
LoadedModule[4]=C:\Windows\system32\KERNELBASE.dll
LoadedModule[5]=C:\Windows\system32\apphelp.dll
LoadedModule[6]=C:\Windows\system32\ADVAPI32.dll
LoadedModule[7]=C:\Windows\system32\msvcrt.dll
LoadedModule[8]=C:\Windows\system32\sechost.dll
LoadedModule[9]=C:\Windows\system32\RPCRT4.dll
LoadedModule[10]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscoreei.dll
LoadedModule[11]=C:\Windows\system32\SHLWAPI.dll
LoadedModule[12]=C:\Windows\system32\combase.dll
LoadedModule[13]=C:\Windows\system32\GDI32.dll
LoadedModule[14]=C:\Windows\system32\USER32.dll
LoadedModule[15]=C:\Windows\system32\IMM32.DLL
LoadedModule[16]=C:\Windows\system32\MSCTF.dll
LoadedModule[17]=C:\Windows\system32\kernel.appcore.dll
LoadedModule[18]=C:\Windows\SYSTEM32\VERSION.dll
LoadedModule[19]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
LoadedModule[20]=C:\Windows\SYSTEM32\MSVCR120_CLR0400.dll
LoadedModule[21]=C:\Windows\assembly\NativeImages_v4.0.30319_64\mscorlib\dfd75630ade67ae60abbed1c6429af70\mscorlib.ni.dll
LoadedModule[22]=C:\Windows\system32\ole32.dll
LoadedModule[23]=C:\Windows\SYSTEM32\bcryptPrimitives.dll
LoadedModule[24]=C:\Windows\system32\uxtheme.dll
LoadedModule[25]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clrjit.dll
LoadedModule[26]=C:\Windows\system32\OLEAUT32.dll
LoadedModule[27]=C:\Windows\SYSTEM32\cryptsp.dll
LoadedModule[28]=C:\Windows\SYSTEM32\bcrypt.dll
LoadedModule[29]=C:\Windows\system32\rsaenh.dll
LoadedModule[30]=C:\Windows\SYSTEM32\CRYPTBASE.dll
LoadedModule[31]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System\516605b5a2073e367e76685de69c11e1\System.ni.dll
LoadedModule[32]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Drawing\f3507c083d2470c04f90943801e4d93d\System.Drawing.ni.dll
LoadedModule[33]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Windows.Forms\b3049e723a732fde2034cf4bac3caeaa\System.Windows.Forms.ni.dll
LoadedModule[34]=C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Core\d4bc4eff7f89337ee51386f26c4b19cd\System.Core.ni.dll
LoadedModule[35]=C:\Program Files\SoundSwitch\Audio.EndPoint.Controller.Wrapper.dll
LoadedModule[36]=C:\Program Files\SoundSwitch\AudioEndPointLibrary.dll
LoadedModule[37]=C:\Windows\SYSTEM32\VCRUNTIME140.dll
LoadedModule[38]=C:\Windows\SYSTEM32\ucrtbase.dll
LoadedModule[39]=C:\Windows\SYSTEM32\MSVCP140.dll
LoadedModule[40]=C:\Windows\system32\clbcatq.dll
LoadedModule[41]=C:\Windows\System32\MMDevApi.dll
LoadedModule[42]=C:\Windows\System32\DEVOBJ.dll
LoadedModule[43]=C:\Windows\System32\PROPSYS.dll
LoadedModule[44]=C:\Windows\system32\cfgmgr32.dll
State[0].Key=Transport.DoneStage1
State[0].Value=1
FriendlyEventName=Nicht mehr funktionsfähig
ConsentKey=APPCRASH
AppName=SoundSwitch
AppPath=C:\Program Files\SoundSwitch\SoundSwitch.exe
NsPartner=windows
NsGroup=windows8
ApplicationIdentity=47AD8834364C2A3ECFBC34849928B22A
See #10
Thanks for the update but unfortunately neither MS Smartscreen or Norton Internet Security will let me install it. Any suggestions?
Make the Icons bigger in the settings menu.
Icon not provided in a dll.
For now when the default device is changed the notification are displayed twice because of once for Console and once for Multimedia
I am using S.W. mainly to change between a headset and speakers when I browse or watch films/videos, but sometimes I would like to put TeamSpeak/Skype on speakers instead of the headset (the audio output).
Currently when I swtich between the outputs it changes the "Default sound device" but not the "Default communication device".
Is there any possibilities that you will add that? :)
When initiating a remote desktop session to my pc running SoundSwitch , it crashs and automatically restarts.
Edit: This only seems to happen when I have the option to don't play any sound or play sounds on the remote device.
Whenever I try to switch playback devices on version 3.6.5, it gives me an error message which indicates configuration is needed and that no devices are available.
I'm on Windows 10 Pro build 10586, the controller for the playback devices is High Definition Audio Device by Microsoft. I don't know what other information I should include in this post.
Sometimes soundswitch would crash when adding a new device because it can't update correctly the list of device in the tray icon.
Also sometimes lead to multiple devices checked in the list instead of the right one.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.