Як змусити відтворювати звуковий ефект щоразу, коли клацаю?


11

Я знаю, що це звучить як дивна ідея, але мені якось хочеться з цим експериментувати.

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

Відповіді:


4

Гм, досить хакітне рішення, але воно працює! Перш за все, встановіть наступні речі:

sudo apt-get install xmacro expect mpg321

xmacroце програма, яка виявить ваші клацання миші. expect- це програма, яка прослухає висновок xmacroдля ваших клацань миші, щоб виконати mpg321, що є програвачем командного рядка!

Отже, запустіть цей сценарій всередині терміналу:

#!/usr/bin/expect -f
spawn xmacrorec2

while { 1 } {
   expect "ButtonRelease 1"
   system mpg321 /home/alex/Music/notification/notification.mp3&
}

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

Тож просто у вказаному вище скрипті встановіть mpg321 на вашому правильному mp3-файлі та протестуйте його :)

Він працює чудово під Ubuntu 12.04, але я без проблем використав усі ці 3 інструменти під Oneiric!

xmacrorec2може взяти за аргумент очікуваний ключ (-k аргумент) як код kei. Це дуже допомагає вам, якщо ви хочете помістити вищезазначений сценарій у ваші програми запуску, оскільки він не буде запитувати ключ введення кожного разу. Для того щоб знайти відповідний код ключа, який ви хочете використовувати, вам потрібно встановити крихітну програму xbindkeys:

sudo apt-get install xbindkeys

Потім зробіть:

touch ~/.xbindkeysrc
xbindkeys -k

Після останньої команди з’явиться невелике вікно, не роблячи нічого для цього, дайте йому введення з клавіатури, скажімо, F7. Ви побачите щось подібне:

You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
m:0x0 + c:73
F7

Помітьте рядок:

    m:0x0 + c:73

Код 73- той, який очікує xmacrorec2. Отже, ви можете додати до вищезазначеного скрипту аргумент -k, наприклад, такий: spawn xmacrorec2 -k 73і він автоматично запуститься. Закінчивши редагування сценарію, збережіть його у стабільній каталозі (я маю на увазі каталог, який ви не будете видаляти / переміщувати до найближчого майбутнього), як ~ / Документи та надайте йому виконавчі дозволи (клацніть правою кнопкою миші на ньому-> Властивості-> Дозволи -> Дозволити виконання файлу як програми або через термінал chmod +x script_name.sh). Потім просто додайте свій скрипт до запуску програм . Звичайно, щоразу, коли ви хочете, щоб цей звук припинився, вам доведеться дати відповідний вклад на клавіатурі, наприклад F7.

PS: Якщо ви не хочете встановлювати додатковий mp3-плеєр командного рядка (наприклад mpg321), ви можете використовувати попередньо встановлений програвач canberra-gtk-play, який використовується як

canberra-gtk-play -f music.wav

Недоліком цього є те, що він може відтворювати лише певні файли ogg та wav.


Я спробую твою команду. Також, що означає -fна початку та spawnкоманда?
Лусіо

А ви не знаєте ще щось, що mpg321 не встановлює зовнішню програму?
Луціо

Manpage ( man expect) керував мене так, як бути моїм першим рядком сценарію. Ще один попередньо встановлений програвач командного рядка є canberra-gtk-playі може називатися як canberra-gtk-play -f file.ogg. Недоліком цієї програми є те, що вона може відтворювати лише певні файли ogg та wav.
hytromo

Зараз я не можу довести ваш метод через помилку GPG під час оновлення .
Луціо

ОК, знайдіть свій час.
hytromo
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.