Простий спосіб переключення пристрою виводу звуку за замовчуванням


21

Я хочу більш легкий спосіб змінити свій звуковий пристрій за замовчуванням зі своєї звукової карти на гарнітуру usb.

В даний час це займає дуже точне праворуч, ліве клацання, ще одне праворуч та ще два лівих клацання.

В ідеалі я міг би просто поміняти його ярликом. (це було трохи простіше в XP, але не набагато.)

Програмне рішення є кращим, але я відкритий для пропозицій, які використовують апаратне забезпечення.

Зараз я запускаю Windows 7.


Розкажи мені про це! І Windows повинна бути спроектована для зручності використання. Pfft
Буде Шеппард

Відповіді:


16

Безкоштовно та з відкритим кодом: SoundSwitch

введіть тут опис зображення


Виглядає круто. Мені доведеться спробувати це.
MBraedley

Приємно !! Це працює добре!
Pedro77

Схоже, оригінальний автор, Jeroen Pelgrims, передав розробку в серпні 2015 року Антуану Афлало, який оновив його для Windows 10 і перемістив розробку на Belphemur / SoundSwitch на github .
robertpateii

1
Це чудова програма. Одна порада: Ви можете перейменувати свої звукові пристрої з 1) Запустіть c:\windows\system32\control.exe mmsys.cpl2) Клацніть правою кнопкою миші ваш звуковий пристрій -> Властивості. Нові імена будуть оновлені на SoundSwitch після перезапуску програми.
np8

12

Я використовую NirCMD , чудовий інструмент командного рядка, який дозволяє редагувати багато налаштувань Windows за допомогою сценарію.

У цьому випадку це було б

nircmd.exe setdefaultsounddevice "USB Headset"

Я використовую його для перемикання основного монітора на моє телевізор та виведення звуку через HDMI на цей пристрій:

nircmdc.exe setprimarydisplay \\.\DISPLAY7
nircmdc.exe setdefaultsounddevice "SONY TV-4"

9

Використовуйте AutoIt

Основна перевага полягає в тому, що вам не доведеться встановлювати жодне програмне забезпечення. Це працює нестандартно. Після створення інструменту розмістіть ярлик на робочому столі, щоб переключити пристрої.

Як налаштувати

  1. Створіть новий текстовий файл із блокнотом та скопіюйте та вставте код

    Run("c:\windows\system32\control.exe mmsys.cpl")
    WinWaitActive("Sound")
    WinSetOnTop ("Sound","Sound", 1 )
    send("{DOWN}")
    if ControlCommand("Sound", "", 1002, 'IsEnabled') Then
        ControlClick("Sound", "Set Default", 1002)
        $message = "Speakers"
    else
        send("{DOWN}")
        ControlClick("Sound", "Set Default", 1002)
        $message = "Headset"
    EndIf
    WinClose("Sound")
    TrayTip("", $message, 5)
    Sleep(2000)
    
  2. Відредагуйте рядки 4 та 8 відповідно send("{DOWN}")до своїх потреб. Наведений вище приклад переключається лише між пристроями №1 та №2. Ви повинні відредагувати два рядки відповідно до своїх потреб. Дивіться мої пояснення нижче.

  3. Замініть "Динаміки" та "Гарнітуру" на своє ім'я відповідного пристрою чи щось подібне.
    Пізніше ця підказка з’явиться у вашому лотку протягом 5 секунд, якщо ви перемикаєте звукові пристрої

  4. У не-англійських версіях Windows вам потрібно замінити Установити за замовчуванням у рядках 6 та 10 своїм локалізованим текстом кнопки
    введіть тут опис зображення

  5. Збережіть файл як щось.au3

  6. Завантажте поштову версію AutoIt та витягніть її. Перейдіть до підпапки Aut2Exe та запустіть Aut2exe.exe для перетворення сценарію .AU3 у файл .EXE. Ви закінчили

Посилання на всі команди AutoIt


Або використовуйте AutoHotKey

Це в основному те саме, лише з AutoHotKey. Прив’язка клавіш виконується прямо в сценарії, #!zщо означає, щоразу, коли ви натискаєте Alt+ Win+ z, переключаєтесь між пристроєм №1 та №2.

Як налаштувати

  1. Вставте код нижче в текстовий файл і збережіть його як SoundToggle.ahk

    #!z::
    Run, c:\windows\system32\control.exe mmsys.cpl    
    WinWaitActive, Sound
    WinSet, AlwaysOnTop, On, Sound    
    Send, {DOWN}    
    ControlGet, MyState, Enabled, , Button2
    If (MyState = 1){
        ControlClick, Button2, A
    } Else {
        Send, {DOWN}
        ControlClick, Button2, A
    }    
    WinClose, Sound        
    return
    
  2. Завантажте AutoHotKey (32-розрядний Unicode) та витягнітьAutoHotKey.exe

  3. Створіть ярлик до цього .EXE та змініть цільову лінію відповідно до власних шляхів

    "C:\myfolder\AutoHotkey.exe" "C:\myfolder\SoundToggle.ahk"
    
  4. Перемістіть ярлик у вашу папку запуску


Як редагувати send("{DOWN}")рядки

Відкрийте вашу звукову панель Win+ Rта введіть керування mmsys.cpl . Ви хочете знати, скільки разів потрібно натиснути DOWNклавішу, щоб перейти до першого звукового пристрою та скільки разів натиснути DOWNще раз, щоб дістатися до другого пристрою.

Наприклад, для перемикання пристроїв №3 та №5 вам потрібно тричі send("{DOWN 3}")натиснути і ще двічі натиснути, send("{DOWN 2}")щоб досягти п’ятого пристрою (3х вниз + 2х вниз = 5-й пристрій). Ви отримуєте ідею.

введіть тут опис зображення


Автоматична клавіша дійсно акуратна. Просто зауважте, що може знадобитися sleep, 100між надісланням клавіші {Down} та виконанням ControlGet. Мій сценарій Enabledінакше не розпізнав статус.
Wizongod

Крім того, ви повинні встановити Autoit, а також кодувати скрипт, я думаю, що спочатку рішення є простішим і практичним.
арана

8

Цей додаток під назвою " Прибережний аудіо Changer " повинен працювати для Windows 7. Станом на 2012 рік він має безкоштовну пробну версію і коштує 3 долари за покупку. Автор, Ендрю Бейлі, розміщує пробну версію та посилання на цей веб-сайт, присвячений прибережній аудіозміни .


Я в кінцевому рахунку використовував пробну версію цього додатка, а потім купував його. Спочатку це було трохи баггі, але потім автор випустив нову версію у квітні 2011 року, і тепер я це люблю. це ідеально і цілком коштує 5 баксів. :)
robertpateii

6
Використовуючи це зараз, тому що це простіше, працює краще і є відкритим кодом: soundswitch.codeplex.com
robertpateii

1
Чи можете ви тут узагальнити рішення? Коли посилання вмирає (коли, ні, якщо), ваша відповідь стане марною.
Joris Groosman
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.