SPDIF/HDMI Sound Keeper v1.2.1 [2021/11/05]

Программа предотвращает засыпание цифровых аудиовыходов SPDIF и HDMI при отсутствии сигнала, и таким образом решает проблему обрезки начала звука при начале воспроизведения, которая вызвана тем, что звуковому тракту требуется небольшое время на пробуждение. Если у вас нет такой проблемы — значит драйвер аудиокарты не отправляет аудиотракт в сон при остановке воспроизведения. Если же проблема имеет место — Sound Keeper решит проблему непрерывным воспроизведением тишины.

Скачать: soundkeeper.7z (17КБ). Исходный код →

Особенности

Sound Keeper работает через WASAPI на Windows 7 и новее. Программа написана на C++, без использования тяжёлых фреймворков вроде .NET, поэтому она очень легковесна и расходует минимум памяти.

Sound Keeper внешне никак себя не проявляет и работает полностью автоматически: находит все цифровые выходы (SPDIF или HDMI) и предотвращает их засыпание. Если во время работы программы появится новый цифровой выход (например, если вы подключили компьютер по HDMI к телевизору) — это будет корректно обработано, перезапуск программы не требуется. Для отключения Sound Keeper вы должны либо выключить звук в микшере для этой программы (после чего Sound Keeper автоматически закроется), либо просто убить процесс soundkeeper.exe. Для автоматической загрузки программы вместе с системой просто скопируйте исполняемый файл soundkeeper.exe в каталог Автозагрузка (чтобы открыть его, нажмите Win+R, введите "shell:startup" и нажмите Enter).

Настройки

  • Поведение по умолчанию может быть изменено добавлением опций к имени исполняемого файла.
  • По умолчанию используется основной аудио выход. Добавьте "All" к имени исполняемого файла программы для включения Sound Keeper на всех аудио выходах.
  • По умолчанию используется неслышимый сигнал. Добавьте "Zero" к имени исполняемого файла чтобы использовать поток нулей в качестве сигнала (как это было в Sound Keeper v1.0).

Если режим по умолчанию не помогает, попробуйте новый тип потока "Sine". Он генерирует синусоиду, и может быть настроен. Имеется два параметра: F (частота) и A (амплитуда). Значение параметра идёт сразу за символом параметра. Например, добавьте "SineF10A5" к имени исполняемого файла для генерации синусоиды 10Hz с амплитудой 5%. Низкие частоты (ниже 20Hz) и высокие частоты (выше 20000Hz) с низкой амплитудой (до 10%) являются неслышимыми.

Sound Keeper vs. SPDIF Keep Alive vs. SPDIF-KA

Sound Keeper v1.0 SPDIF Keep Alive v1.2 SPDIF-KA v1.4
Полный автомат: Да Нет Нет
Поддержка нескольких выходов: Да Нет Нет
Графический интерфейс: Нет Есть Есть
Требует .NET: Нет Требует Требует
Объём EXE-файла: 17КБ 668КБ 163КБ
Расход CPU (на Intel Core i5 4460): 0.004% 0.06% 0.06%
Расход RAM (Private Working Set): 1636КБ 13704КБ 10600КБ

Ссылки

  1. #51
    Алексей

    Спасибо за ответ. Сначала искал командные аргументы, оказалось все куда проще, чеерез имя файла.

    Поигрался с настройкой, оказалось что слышу независимо от частоты.
    Видимо какой то гремлин в Windows, ибо на громкость этого звука влияет именно громкость в микшере для SoundKeeper

  2. #52
    VEG Автор

    Алексей, странно. Loudness Equalization в настройках аудиовыхода выключен? Оно должно быть на вкладке Enhancements (Улучшения) в свойствах аудиовыхода.

  3. #53
    Алексей

    VEG, вкладки Enhancements вообще нет для этого устройства, проверил по вашему совету раньше.

  4. #54
    VEG Автор

    Алексей, а в режиме Zero проблема тоже проявляется?

  5. #55
    Алексей

    VEG, в случае с Zero к сожалению SoundKeeper перестает "работать". Звуковое устройство засыпает, и появляются тихие щелчки при старте/остановке звука в приложениях. Собственно то, что я им и решаю :)