public MainForm() { logger.Debug("MainForm()"); InitializeComponent(); this.Icon = Properties.Resources.clock; // create the refresh image button's completely flat appearance //btnRefreshImage.FlatStyle = FlatStyle.Flat; //btnRefreshImage.FlatAppearance.BorderColor = Color.FromArgb(0, 255, 255, 255); //Transparent //btnRefreshImage.FlatAppearance.BorderSize = 0; //btnRefreshImage.FlatAppearance.MouseOverBackColor = pnlMainContent.BackColor; //btnRefreshImage.FlatAppearance.MouseDownBackColor = pnlMainContent.BackColor; _sizMainPanelSize = pnlMainContent.Size; _sizMainPanelSize.Height -= pbPictureBox.Height; _updateRealClock(); try { logger.Debug("setting up audio device control"); // set up the audio device control MMDeviceEnumerator mmdEnumerator = new MMDeviceEnumerator(); _mmdAudioDevice = mmdEnumerator.GetDefaultAudioEndpoint(EDataFlow.eRender, ERole.eMultimedia); } catch (Exception ex) { logger.Error(ex, "Error while trying to set up the audio device: {0}", ex.Message); } #if !DEBUG btnExit.Visible = false; #endif }
public Form1() { InitializeComponent(); MMDeviceEnumerator DevEnum = new MMDeviceEnumerator(); device = DevEnum.GetDefaultAudioEndpoint(EDataFlow.eRender, ERole.eMultimedia); tbMaster.Value = (int)(device.AudioEndpointVolume.MasterVolumeLevelScalar * 100); device.AudioEndpointVolume.OnVolumeNotification += new AudioEndpointVolumeNotificationDelegate(AudioEndpointVolume_OnVolumeNotification); timer1.Enabled = true; }
public MainForm() { DevEnum = new MMDeviceEnumerator(); device = DevEnum.GetDefaultAudioEndpoint(EDataFlow.eRender, ERole.eMultimedia); InitializeComponent(); Rectangle workingArea = Screen.GetWorkingArea(this); this.Location = new Point(workingArea.Right - Size.Width, workingArea.Bottom - Size.Height); lblStatusBar.Text = "Ready | Stopped"; }
private static void FindApplication(string appName) { EDataFlow flow = new EDataFlow(); MMDeviceEnumerator deviceEnum = new MMDeviceEnumerator(); devCol = deviceEnum.EnumerateAudioEndPoints(flow, DEVICE_STATE.DEVICE_STATE_ACTIVE); for (int devIdx = 0; devIdx < devCol.Count; devIdx++) { for (int sesIdx = 0; sesIdx < devCol[devIdx].AudioSessionManager2.Sessions.Count; sesIdx++) { if (devCol[devIdx].AudioSessionManager2.Sessions[sesIdx].GetSessionIdentifier.Contains(appName)) devicesAndSessions.Add(new KeyValuePair<int, int>(devIdx, sesIdx)); } } }
public static List<string> GetListOfApplicationsWithAudio() { List<string> results = new List<string>(); EDataFlow flow = new EDataFlow(); MMDeviceEnumerator deviceEnum = new MMDeviceEnumerator(); devCol = deviceEnum.EnumerateAudioEndPoints(flow, DEVICE_STATE.DEVICE_STATE_ACTIVE); for (int devIdx = 0; devIdx < devCol.Count; devIdx++) { for (int sesIdx = 0; sesIdx < devCol[devIdx].AudioSessionManager2.Sessions.Count; sesIdx++) { results.Add(devCol[devIdx].AudioSessionManager2.Sessions[sesIdx].GetSessionIdentifier); } } return results; }
public MainWindow() { InitializeComponent(); MMDeviceEnumerator DevEnum = new MMDeviceEnumerator(); device = DevEnum.GetDefaultAudioEndpoint(EDataFlow.eRender, ERole.eMultimedia); OscServer oscServer; oscServer = new OscServer(TransportType.Udp, IPAddress.Any, Port); oscServer.FilterRegisteredMethods = false; oscServer.RegisterMethod(AliveMethod); oscServer.RegisterMethod(TestMethod); oscServer.BundleReceived += new EventHandler<OscBundleReceivedEventArgs>(oscServer_BundleReceived); oscServer.MessageReceived += new EventHandler<OscMessageReceivedEventArgs>(oscServer_MessageReceived); oscServer.ReceiveErrored += new EventHandler<Bespoke.Common.ExceptionEventArgs>(oscServer_ReceiveErrored); oscServer.ConsumeParsingExceptions = false; oscServer.Start(); }
private static void FindApplication(string appName) { LogHelper.Debug(null, "Finding any mixers that contain the word '{0}'", appName); EDataFlow flow = new EDataFlow(); MMDeviceEnumerator deviceEnum = new MMDeviceEnumerator(); devCol = deviceEnum.EnumerateAudioEndPoints(flow, DEVICE_STATE.DEVICE_STATE_ACTIVE); for (int devIdx = 0; devIdx < devCol.Count; devIdx++) { for (int sesIdx = 0; sesIdx < devCol[devIdx].AudioSessionManager2.Sessions.Count; sesIdx++) { if (devCol[devIdx].AudioSessionManager2.Sessions[sesIdx].GetSessionIdentifier.Contains(appName)) { LogHelper.Debug(null, "Found {0}", devCol[devIdx].AudioSessionManager2.Sessions[sesIdx].GetSessionIdentifier); devicesAndSessions.Add(new KeyValuePair<int, int>(devIdx, sesIdx)); } } } }
/** * Mutes/Unmutes Spotify. * i: 0 = unmute, 1 = mute, 2 = toggle **/ private void Mute(int i) { if (i == 2) // Toggle mute i = (muted ? 0 : 1); muted = Convert.ToBoolean(i); if (spotifyMute) // Mute only Spotify process { // EZBlocker2.AudioUtilities.SetApplicationMute("spotify", muted); MMDeviceEnumerator DevEnum = new MMDeviceEnumerator(); MMDevice device = DevEnum.GetDefaultAudioEndpoint(EDataFlow.eRender, ERole.eMultimedia); AudioSessionManager2 asm = device.AudioSessionManager2; SessionCollection sessions = asm.Sessions; for (int sid = 0; sid < sessions.Count; sid++) { string id = sessions[sid].GetSessionIdentifier; if (id.ToLower().IndexOf("spotify.exe") > -1) { if (muted) { volume = sessions[sid].SimpleAudioVolume.MasterVolume; sessions[sid].SimpleAudioVolume.MasterVolume = 0; } else { sessions[sid].SimpleAudioVolume.MasterVolume = volume; } //sessions[sid].SimpleAudioVolume.Mute = muted; } } } else // Mute all of Windows { Process process = new Process(); ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.FileName = "cmd.exe"; startInfo.Arguments = "/C nircmd mutesysvolume " + i.ToString(); process.StartInfo = startInfo; process.Start(); } }
static void Main(string[] args) { MMDeviceEnumerator DevEnum = new MMDeviceEnumerator(); MMDevice device = DevEnum.GetDefaultAudioEndpoint(EDataFlow.eRender, ERole.eMultimedia); // Note the AudioSession manager did not have a method to enumerate all sessions in windows Vista // this will only work on Win7 and newer. for (int i = 0; i < device.AudioSessionManager2.Sessions.Count; i++) { AudioSessionControl2 session = device.AudioSessionManager2.Sessions[i]; if (session.State == AudioSessionState.AudioSessionStateActive) { Console.WriteLine("Session :{0}", i); Console.WriteLine("DisplayName: {0}", session.DisplayName); Console.WriteLine("State: {0}", session.State); Console.WriteLine("IconPath: {0}", session.IconPath); Console.WriteLine("SessionIdentifier: {0}", session.GetSessionIdentifier); Console.WriteLine("SessionInstanceIdentifier: {0}", session.GetSessionInstanceIdentifier); Console.WriteLine("ProcessID: {0}", session.GetProcessID); Console.WriteLine("IsSystemIsSystemSoundsSession: {0}", session.IsSystemSoundsSession); Process p = Process.GetProcessById((int)session.GetProcessID); Console.WriteLine("ProcessName: {0}", p.ProcessName); Console.WriteLine("MainWindowTitle: {0}", p.MainWindowTitle); AudioMeterInformation mi = session.AudioMeterInformation; SimpleAudioVolume vol = session.SimpleAudioVolume; Console.WriteLine("---[Hotkeys]---"); Console.WriteLine("M Toggle Mute"); Console.WriteLine(", Lower volume"); Console.WriteLine(", Raise volume"); Console.WriteLine("Q Quit"); int start = Console.CursorTop; while (true) { //Draw a VU meter int len = (int) (mi.MasterPeakValue * 79); Console.SetCursorPosition(0, start); for (int j = 0; j < len; j++) Console.Write("*"); for (int j = 0; j < 79 - len; j++) Console.Write(" "); Console.SetCursorPosition(0, start+1); Console.WriteLine("Mute : {0} ",vol.Mute); Console.WriteLine("Master : {0:0.00} ", vol.MasterVolume*100); if (Console.KeyAvailable) { ConsoleKeyInfo key = Console.ReadKey(); switch (key.Key) { case ConsoleKey.M: vol.Mute = !vol.Mute; break; case ConsoleKey.Q: return; case ConsoleKey.OemComma: float curvol = vol.MasterVolume - 0.1f; if (curvol < 0) curvol = 0; vol.MasterVolume = curvol; break; case ConsoleKey.OemPeriod: float curvold = vol.MasterVolume + 0.1f; if (curvold > 1) curvold = 1; vol.MasterVolume = curvold; break; } } } } } //If we end up here there where no open audio sessions to monitor. Console.WriteLine("No Audio sessions found"); }