Windows Vista / 7'de birden fazla ses çalma aygıtını nasıl yönetirim?


33

Masaüstü bilgisayarıma bağlı hoparlörler (ses girişi) ve kulaklıklarım (kendi ses kartına sahip USB kulaklık) var. Windows 7 altında, Ses Karıştırıcısını sağ tıklayıp Çalma Cihazları seçeneğini seçip bu cihazlar arasında geçiş yapabilirim.

Geçiş yapmayı kolaylaştıran bir klavye kısayolu, belki de daha kolay bir yolu var mı? Paylaşılan bir alanda çalışıyorum bazen kulaklıkların diğer insanları rahatsız etmesini engellemek istiyordum, ancak diğer zamanlarda konuşmacılar iyi durumda. Hızlıca geçiş yapabilmek istiyorum. İdeal bir dünyada, sorumun çözümü Vista'da da işe yarayacak.

Yanıtlar:


19

Bütün bu rahatsız edici Windows otomasyon problemlerinin çözümü: AutoIt !

Bu AutoIt'i koyun ve derleyin

;-----Configuration-----
;The title of the sound config window.
Dim $ConfigWindowTitle = "Sound"
;-----End of configuration----

Dim $ItemNumber = 1
If $CmdLine[0] >= 1 Then ;If we have a parameter...
    $ItemNumber = $CmdLine[1] ;...we should press the button the specified number of times.
EndIf

Run("control mmsys.cpl") ;Run the sound control applet and hide it.

WinWaitActive($ConfigWindowTitle) ;Wait for it to be active before sending keystrokes.

Send("{TAB}{TAB}{TAB}{TAB}") ;Put the focus on the list

For $i = 1 to $ItemNumber Step 1
    Send("{DOWN}")
Next

Send("!s") ;Press Alt + S to set the selected device as the default.
WinClose($ConfigWindowTitle)

Şimdi bir kısayol oluşturun ve Hedef içinde derlenen yürütülebilir dosyanın yolunu yerleştirin. Bir argüman için, ses cihazının numarasını geçmek istediğiniz listeye yerleştirin. (listedeki ilk öğeye geçmek için 1, listedeki ikinci öğe, 2 vb. koymak). Klavye kısayolu istiyorsanız, kısayolun özellikler penceresindeki Kısayol Tuşu alanını kullanın.

Ne yapmak istediğinizi yapacak bir şeyler arıyordum ve Vista / 7'de ses aygıtlarını değiştirmenin programlı bir yolu olmadığını bulmuştum. Bu sadece Microsoft'un programcıların yapması gereken bir şey değil, bu yüzden süreci otomatikleştirmek için bu betiği hazırlıyorum. Cihazı değiştirmek için pencereyi açması en iyisi değildir (gerekli), ancak sesin çıkış cihazını değiştirmek için kısayollar oluşturmayı mümkün kılar.


2
Bu, belki de tüm bu sitede henüz bulamadığım en faydalı cevap! Bunun için tekrar teşekkürler ....
JL.

Çok güzel, harika çalışıyor.
WerkkreW

9

Varsayılan Ses Değiştirici şu anda bence en iyi çözüm.

Klavye preslerini simüle etmek yerine belgelenmemiş sistem çağrıları kullanır; bu da endişelenmeden tam ekran uygulamalarda kullanabileceğiniz anlamına gelir.


Harika bir fikir, ama sadece işe yaramadı, şimdi takılıyken kulaklığım hiç algılanmadı. :(
Nick Spreitzer

2
Şiddetle tavsiye edilir! AutoIt betiğinden 10 kat daha iyi. Gerçekten kabul edilen cevap olmalı.
Otiel

2
Kurulum dosyaları burada: sourceforge.net/projects/defaultaudiocha/files Vay bu muhtemelen şimdiye kadar gördüğüm en temiz çalma aygıtları anahtarı çözümü! +1
Coğrafi

4

@Dan Walker Güzel bir çözüm, ama mükemmel değil;)

Bu komut dosyası, gerçekten bir geçiş yapmak için bir dosyanın varlığını kullanır, böylece oynatma aygıtları arasında geçiş yapmak için aynı kısayolu kullanabilirsiniz. Bu sadece basit bir düzenleme:

;-----Configuration-----
;The title of the sound config window.
Dim $ConfigWindowTitle = "Sound"
;-----End of configuration----

Dim $ItemNumber = 1 ; The first itme in the audio list

If FileExists ("a") Then; Use the existence of a file to know if we should toggle
    FileDelete("a")
    $ItemNumber = 3 ; The audio playback device you want to toggle to
Else
    FileOpen("a", 1)
    FileClose("a")
EndIf

Run("control mmsys.cpl") ;Run the sound control applet and hide it.

WinWaitActive($ConfigWindowTitle) ;Wait for it to be active before sending keystrokes.

Send("{TAB}{TAB}{TAB}{TAB}") ;Put the focus on the list

For $i = 1 to $ItemNumber Step 1
    Send("{DOWN}")
Next

Send("!s") ;Press Alt + S to set the selected device as the default.
WinClose($ConfigWindowTitle)

Güzel, değiştirmeyi seviyorum
Chaulky

3

Bunu bir süre googledim ve benim için hile yapan tek şey AutoHotKey'in bir senaryosudur, sahip olduğum tek dileğim bunu arka planda yapmaktır. İşte senaryo:

Run, mmsys.cpl
WinWait,Sound
ControlSend,SysListView321,{Down}
ControlClick,&Set Default
ControlClick,OK

İhtiyaçlarınızı karşılamak için değiştirebilirsiniz


Bu benim için çalıştı, ama SendInput {Down}yerine kullanmak zorunda kaldı ControlSend,SysListView321,{Down}. Ayrıca ses aygıtlarıma uyacak şekilde {Downs} sayısını da değiştirmek zorunda kaldım.
Iain

3

fakt'ın çözümü bir cazibe gibi çalışır. Burada "F4" e bastığınızda ilk ses aygıtını varsayılan olarak seçen ve "F3" e basarken ikinciyi seçen küçük bir otokript betiği. Bu sürüm tüm Windows Sürümleri ile çalışır. Win 7 64 kullanılarak test edilmiştir.

F3::
Run, mmsys.cpl
WinWaitActive,Sound
ControlSend,SysListView321,{Down}
ControlSend,SysListView321,{Down}
Sleep, 50
ControlClick,Button2
ControlClick,OK
return

F4::
Run, mmsys.cpl
WinWaitActive,Sound
ControlSend,SysListView321,{Down}
Sleep, 50
ControlClick,Button2
ControlClick,OK
return

2

@cptloop Varsayılan Ses Değiştirici oldukça iyiydi, ancak sinir bozucu bir aygıtı varsayılan aygıt olarak ayarladıktan sonra varsayılan iletişim aygıtı olarak ayarlamazdı.

Bu beni birkaç ek özelliklere sahip olan Audio Switcher'ı bulmamda bana yol açtı :

  • Kayıt cihazlarını değiştirmek için destek
  • Birden çok kısayol tuşu için destek
  • Çift anahtar (varsayılanı ve iletişim cihazlarını değiştirin)
  • Ve dahası!

Hoşuma gitmeyen tek şey, iki cihaz arasında geçiş yapmak için tek bir kısayol tuşu kullanmanıza izin vermemesidir, her birinin kendi kısayol tuşuyla yapılandırılması gerekir. Bununla birlikte, v2.0 geliştirilme aşamasındadır ve bazı özellik iyileştirmelerin yanı sıra eklenti desteği de vaat etmektedir. Ayrıca, temel API'yi yayınladılar, bu nedenle kendi uyarlanmış çözümünüzü oluşturmak mümkündür.

Düzenleme: xenolightning / AudioSwitcher_v1 # 607 uyarınca, aygıtları açma / kapatma özelliği zaten v2.0'da uygulanmıştır.


0

Bunu yapmak için başka iyi bir program Audio Router. 64 bit ve 32 bit işletim sistemi sürümleriyle ücretsiz (GPL) bir programdır. İşte programın GitHub bağlantısı:

Ses yönlendirici

İşte nasıl kullanıldığına dair basit bir GIF:

görüntü tanımını buraya girin

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.