Как заставить компьютерный динамик издавать звуковые сигналы из командной строки Windows 7?

49

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

В Linux я бы установил пакет « beep », но пока не нашел такой программы для Windows 7.

Возможно связанные ссылки:

Редактировать: кажется, что вопрос превратился в "Как заставить Windows 7 подать звуковой сигнал на динамик ПК?" , для которого ответ, предоставленный HarryMC, является наиболее подходящим.

oKtosiTe
источник
6
Ctrl + G> enter выдает системный гудок в командной строке. Несколько Ctrl + G получает несколько звуковых сигналов.
Моав
@ Денис Уильямсон: Да, но я использую Windows 7 в этом случае. Я в основном знаю о своих возможностях в отношении Linux.
Октябрь
2
@Moab: это не делает звуковой сигнал ПК, а по умолчанию используется для вывода звука.
октябрь
3
В некоторых системах по умолчанию используется динамик ПК, если не подключены другие динамики.
Моав
1
@oKtosiTe Интересно. На моем компьютере с динамиком ПК и 64-битной 7 я слышу звуковой сигнал при использовании ^ G в CMD.
AndrejaKo

Ответы:

13

Было бы полезно узнать, является ли ваша Windows 7 64-битной или 32-битной.

От умолчанию Beep PC Speaker изменилось в Windows 7 - Как вернуться к старому стилю :

Звуковой сигнал по умолчанию управляется драйвером в c:\windows\system32\drivers\beep.sys. Возможно, если вы отключите его с помощью драйвера из XP / Vista, это увеличит громкость.

Чтобы увидеть этот драйвер, откройте диспетчер устройств, затем нажмите «Просмотр»> «Показать скрытые устройства». Затем в разделе «Драйверы без Plug and Play» вы увидите «Beep». Это драйвер, который запускает ваш звуковой сигнал. Щелкните правой кнопкой мыши на нем, затем выберите «Свойства» и перейдите на вкладку «Драйвер», затем нажмите «Сведения о драйвере». Здесь показана версия файла, которая выглядит так, как будто она была изменена в Windows 7. Поэтому замените ее на более старую версию и посмотрите, что произойдет.

Процедура для подражания:

  1. Загрузитесь с диска UBCD4WIN (или BartPE, если у вас нет жесткого диска SATA)
  2. Возьмите в собственность файл «C: \ Windows \ System32 \ Drivers \ Beep.sys» и предоставьте локальной группе «Администраторы» разрешения «Полный доступ».
  3. Переименуйте «Beep.sys» в «Beep.old» (на всякий случай)
  4. Скопируйте «Beep.sys» с компьютера с XP в это место.
harrymc
источник
Windows 7, над которой я работаю, 32-битная. Попробую поменять beep.sysс той из Windows XP.
Октябрь
К счастью, у меня двойная загрузка с XP и Arch Linux, поэтому я думаю, что могу пропустить бит Live CD. :-)
октябрь
1
Когда я попробовал это на 64-битной Windows 7, это привело к тому, что устройство «Beep» не работает. Кто-нибудь пробовал это на 64-битной версии?
Джейсон
@Jason: вы пробовали beep.sys из 64-битной XP / Vista?
harrymc
1
@Jason: Вероятно, проблема с подписью драйверов, которая препятствует работе неподписанных драйверов XP в 64-разрядной версии Windows 7. Поэтому это решение не применимо к Windows 7 или более поздним 64-разрядным версиям.
harrymc
25

В Windows 7 звуковой сигнал был переписан для передачи звукового сигнала на звуковое устройство по умолчанию для сеанса. Обычно это звуковая карта, за исключением случаев, когда она запускается в службах терминалов, и в этом случае на клиенте подается звуковой сигнал.

( источник ) ( статья о том, почему ). Для тех, кто не может прочесть: «Это должно было снизить стоимость производства

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

Вы можете написать пакетный файл DOS, который подаст звуковой сигнал, выполнив следующее: в командной строке DOS введите:
echo @echo (Alt-7)>beep.bat

но вместо того, чтобы вводить символы: «(Alt-7)», вы удерживаете нажатой клавишу Alt и нажимаете 7 на цифровой клавиатуре. Не используйте 7 на qwerty части клавиатуры, она должна быть на клавиатуре, и Num Lock должен быть включен.

( источник )

Nifle
источник
2
К сожалению, я не доволен тем, что из динамиков раздается звуковой сигнал.
октябрь
@oKtosiTe - Тогда тебе, вероятно, не повезло
Nifle
1
Есть ли альтернатива цифровой клавиатуре для Alt-7? У меня есть только ноутбук и нет цифровой клавиатуры.
CajunLuke
4
@CajunLuke, да, вообще не используйте комбинацию Alt-key для управляющих кодов ASCII (1-31), просто нажмите Ctrl+G; это комбинация клавиш Ctrl для BEL.
Synetech
3
На моем Win7 я должен использовать ALT-007, а не ALT-7.
Кэмерон
9

Если у вас установлен Python 2.x, эта строка в bat-файле работает

python -c "print '\7'"
lgwest
источник
Я получаю «SyntaxError: неверный синтаксис», когда я пытаюсь сделать это с Python 3.3.2 (v3.3.2: d047928ae3f6, 16 мая 2013, 00:06:53) [MSC v.1600 64 бит (AMD64)] на win32
Адриан Костер
3
Так printкак это функция в Python 3.x, python -c "print('\7')"должно работать.
Макс Трукса
При этом в Windows 10 мои динамики воспроизводят звук ошибки Windows. Звуковой сигнал не поступает с материнской платы. :(
DaveTheMinion
Альтернатива с Perl: perl -e "print qq(\x07)". Если у вас есть strawberryperl портативный, вы можете использоватьportableshell.bat -e "print qq(\x07)"
Benoit
У меня была звуковая схема без звука, и мне было интересно, почему я ничего не слышу. Убедитесь, что у вас есть звуковая схема со звуком ошибки звука.
Мик
5

Этот маленький драйвер VDD устраняет проблему с NTVDM Windows 7, когда вывод на динамик ПК неправильно упакован.

Это может быть связано с тем, что функциональность системного драйвера BEEP.SYS была перенесена в Usermode Sound Agent. Для получения дополнительной информации см. Блог Ларри Остермана.

Этот драйвер пытается решить проблему, подключив функцию NTVDM, отвечающую за звуковой сигнал (LazyBeep), и заменяет ее собственной реализацией, которая имеет различные варианты решения проблемы.

http://www.waldbauer.com/tmp/dl.php?download=beepx

canopee
источник
Был вирус в ссылке для скачивания на целевой странице !!!
ellockie
Некоторые сканирования на вирусы дают положительные результаты при загрузке, но из-за характера программы это могут быть ложные срабатывания. Исходный код включен, так что каждый может также проверить его, если не уверен.
slhck
1
А для версии x64 попробуйте: waldbauer.com/tmp/dl.php?download=beepxp64
rustyx,
RustyX Спасибо большое !! Это было единственное, что наконец-то сработало! Красивый! Мой ИБП снова работает! Все хвалят beepxp64.
Зденек
5

Попробуйте startиспользовать поддельный файл, который не существует. Это делает и всплывающее окно и звуковой сигнал, но я не уверен, хотите ли вы всплывающее окно или нет ...

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

KenshinHeng
источник
2
Отредактировал ответ для уточнения; добавил изображение, чтобы показать, как это работает.
bwDraco
6
К сожалению, это не будет издавать звуковой сигнал из динамика компьютера, если есть реальное звуковое устройство. Надо было бы отключить звуковое устройство в Windows.
bwDraco
1

Ответ "Канопе" - это ответ! Тот драйвер, на который он ссылается, единственный, кто возвращает звуковой сигнал () для Windows 7 64bit. Я попробовал и могу подтвердить, что он работает как шарм.

В качестве альтернативы вы также можете скачать " buzzer.exe " с http://encode.ru/threads/383-A-command-line-tool-for-Windows-which-beeps-through-the-System-Speaker , который помогает использовать pc-динамик из командной строки еще больше. Он поддерживает пользовательские частоты и повторы.

Я никак не связан с waldbauer.com или encode.ru, я просто искал решение для пропавшего сигнала, нашел его и хотел помочь «распространить слово»! .. o)

Роберт Г.
источник
1

Кажется, что следующее работает на системах Windows с py2 & 3:

cmd line:

python -c "import winsound; winsound.PlaySound('SystemExit', winsound.SND_ALIAS);"

Документы

Педро Лобито
источник
0

Хватай NirCmd и беги nircmd stdbeep.

digitxp
источник
3
Боюсь, из-за этого звучат звуковые сигналы по умолчанию, а не динамик ПК.
октябрь
1
Вы уверены, что он включен ?
digitxp
@digitxp: звуковой сигнал BIOS и возможность издавать звуковые сигналы с консоли Linux заставляют меня поверить в это, но вы поднимаете правильную точку. Я буду расследовать.
Октябрь
Насколько я могу судить, он включен всеми возможными способами.
октябрь
3
Я согласен с oKtosiTe; nircmd воспроизводит звуковой сигнал через звуковую карту, а не через внутренний динамик; даже в XP. От NIRCMD.CHM: Воспроизведение стандартного звукового сигнала Windows.
Synetech
0

Если вы выключите свои внешние динамики, вы больше не будете их использовать. Таким образом, вы также можете просто отключить их от компьютера, чтобы звуковая команда прошла через динамик ПК. Никакого дополнительного программного обеспечения или пересадки драйверов не требуется. Вам просто нужно помнить, чтобы восстановить их потом.

Nzall
источник
1
Отключение динамиков не заставляет звук проходить через динамик ПК. Windows 7 обычно даже не обращается к динамику ПК, как было указано в некоторых других ответах и ​​комментариях. Кроме того, я использую их на регулярной основе, но не в 100% случаев.
октябрь
Не то чтобы это имело значение. С тех пор этот компьютер умер, и я ежедневно пользуюсь ультрабуком, у которого нет специального динамика для ПК. Вместо этого я теперь использую набор настольных динамиков (3,5 мм) для уведомлений и большинства игр и большие настенные динамики (HDMI) для музыки и фильмов.
октябрь