1 (изменено: belyankin12, 2017-01-30 21:37:26)

Тема: AHK: Смена устройства воспроизведения по умолчанию

Здравствуйте, появилась необходимость быстро менять устройство по умолчанию. Мне будет удобно, если это будет на AHK, потому обращаюсь к вам. Вот скриншот моих устройств воспроизведения:

+ открыть спойлер

http://image.prntscr.com/image/827026aee9fc4bfea0b5af3d6803d3bc.png

Мне нужно, чтобы я смог сменить устройство "Динамики" на "AAA-8" и обратно соответственно. Есть два варианта:
1) Проверка какое устройство сейчас по умолчанию и переключение на другое;
2) Два отдельных скрипта, при запуске которого каждый ставит по умолчанию свое устройство.

Первый вариант мне предпочтительнее конечно, но не буду требовать от вас слишком многого. Надеюсь на вашу помощь.

P.S. Устройство Headphone мне не нужно совсем, его можете не учитывать.

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.

2

Re: AHK: Смена устройства воспроизведения по умолчанию

Тут написано.

3

Re: AHK: Смена устройства воспроизведения по умолчанию

Требуется библиотека VA.
Оригинал.


loop
	MsgBox % SwapAudioDevice("AAA-8", "Динамики")

SwapAudioDevice(device_A, device_B)
{
    ; Get device IDs.
    A := VA_GetDevice(device_A), VA_IMMDevice_GetId(A, A_id)
    B := VA_GetDevice(device_B), VA_IMMDevice_GetId(B, B_id)
    if A && B
    {
        ; Get ID of default playback device.
        default := VA_GetDevice("playback")
        VA_IMMDevice_GetId(default, default_id)
        ObjRelease(default) 
        ; If device A is default, set device B; otherwise set device A.
        VA_SetDefaultEndpoint(default_id == A_id ? B : A, 0)
    }
    ObjRelease(B)
    ObjRelease(A)
    if !(A && B)
        throw Exception("Unknown audio device", -1, A ? device_B : device_A)
	Return default_id == A_id ? device_B : device_A
}
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

4

Re: AHK: Смена устройства воспроизведения по умолчанию

Спасибо, все работает.

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.