Chcę tylko, aby Mac OS X 10.6 wydawał sprzętowy sygnał dźwiękowy, jak w open suse i innych dystrybucjach. Próbowałem zastosować podejścia
Terminal -> beep = -bash: beep: polecenie nie zostało znalezione
Terminal -> say beep = głos wypowiada sygnał dźwiękowy (nie jest to dźwięk sprzętowy, ale super;))
applecript -> beep = dzwonek Macintosha (chcę dźwięk sprzętowy!)
Czy ktoś wie, jak zrobić sygnał dźwiękowy sprzętu w bin / bash lub applecript?
bash
macos
applescript
beep
elhombre
źródło
źródło
printf "\a"
wydaje sygnał dźwiękowy systemu operacyjnego, jeśli to pomaga.Odpowiedzi:
W systemie macOS nie ma „dźwięku sprzętowego”.
Funkcjonalność, o której myślisz, to artefakt bardzo starego (sprzed lat 90.) sprzętu kompatybilnego z IBM PC. Zanim większość komputerów posiadała karty dźwiękowe, większość komputerów miała mały głośnik lub piezoelektryczny brzęczyk podłączony do jednego z kanałów chipa czasowego. Można to wykorzystać do generowania prostych dźwięków lub sygnałów dźwiękowych. Nawet po wielu komputerowych zintegrowanych kartach dźwiękowych przez dłuższy czas komputery kierowały to wyjście do oddzielnego głośnika wewnętrznego. Ostatnio wiele komputerów, zwłaszcza laptopów, zintegrowało tę funkcję z wbudowaną kartą dźwiękową.
(Jeśli jesteś ciekawy szczegółów technicznych dotyczących działania interfejsu głośników komputera, tutaj znajdziesz więcej szczegółów ).
Ten sprzęt nigdy nie istniał w komputerach Apple. Jedynym dostępnym wyjściem audio jest karta dźwiękowa, a jedynym sygnałem dźwiękowym systemu w systemie macOS jest dźwięk ostrzeżenia użytkownika.
źródło
tput bel
działa w większości muszli.W systemie OS X to (i każde inne polecenie, które powoduje uruchomienie dzwonka) również zapewnia odznakę, jeśli polecenie zostanie wykonane, gdy Terminal nie był na pierwszym planie:
źródło
tput
to świetne polecenie z wieloma opcjami . To polecenie działa również w systemie Linux.echo -e "\a"
działa również na OS X i prawdopodobnie jest bardziej przenośnyDrukowanie
\a
nie zawsze działało dla mnie (MBA, 10.7.4). Używam tego zamiast tego:źródło
say
ja je (tylko na pełnym ekranie), czyli jaka aplikacja została zablokowana przy próbie połączenia się z jakimś hostem. Bardzo miły. Jakiś czas temu musiałem śledzić zmiany na stronie w ciągu dnia, więc zamiast siedzieć przed ekranem,say
dawałem znać, co się dzieje (oczywiście tylko sensowny tekst - to były reklamy sprzedaży).say "Pay attention to me" &
i jeden po drugimsay -v Whisper "I own you" &
.Rzeczywiście, poniższe jest skuteczne i nieco melodyjne:[Aktualizacja] Niestety Bells nie jest już uwzględniony w najnowszym OS X. Spróbuj:
Użyj następujących, aby poznać głosy:
źródło
say -v Bells "beep"
.say -v '?'
do wyświetlania wszystkich głosów. Użyj,say -v '?' | egrep `echo $LANG | sed "s/\..*//"`
aby wyświetlić listę głosów w Twoim obecnym języku.napisz
echo ^G
w bash. aby stworzyć^G
prasę,ctrl+v
a następniectrl+g
.źródło
/usr/bin/printf "\a"
aosascript -e "beep 1"
także działa wystarczająco dobrzeecho ^G
robi (czyli co mówi ta komenda w kategoriach laika)? Czy to jest znak specjalny, który oznacza sygnał dźwiękowy w systemie OSX? Czy są jakieś inne powiązane znaki specjalne? @mxhaack @ wongo888^G
to „znak kontrolny”, tj. Niedrukowalny znak, który jest / był używany do wywołania określonego efektu, takiego jak na przykład wyzwalanie dzwonka / sygnału dźwiękowego. Spójrz na ten artykuł na WikipediiSpowoduje to zapętlenie wszystkich głosów (działa w Yosemite):
źródło
W typie terminala:
Parametr -e mówi echo, aby przetwarzał znaki ucieczki. Ponieważ \ n jest znakiem nowej linii, \ a jest znakiem dzwonka (tak samo jak Ctrl + G).
źródło
printf "\a"
echo -e \\a
działa również.Odtwórz dowolny dźwięk ostrzeżenia za pomocą
afplay
Jestem zaskoczony, że nikt nie wspomniał
afplay
: to program wiersza poleceń, który odtwarza dowolne pliki dźwiękowe. To istnieje od oryginalnych wersji OS X (i NeXTSTEP, jeśli masz tak długą pamięć).Na przykład możesz to uruchomić z wiersza poleceń lub umieścić w skrypcie:
Nie jesteś ograniczony do dźwięków systemowych; Jedną z zalet używania
afplay
jest to, że możesz wybrać własny plik dźwiękowy jako ostrzeżenie. Na przykład możesz pobrać jeden z tych plików dźwiękowych i wybrać swój ulubiony.(Dodatkowe punkty, jeśli możesz znaleźć nagranie dzwonka Teletype Model 33!)
źródło
W terminalach OS X wykonaj polecenie:
osascript -e 'beep'
Użycie technologii OSA (Open Script Architecture) do nakazania AppleScript wykonania polecenia
beep
.źródło
Jeśli spojrzysz na
man printf
, zobaczysz listę znaków ucieczki, w tym\a
:źródło
printf "\a"
działa również w terminalu i odtworzy ustawiony dźwięk alarmu.źródło
Jeśli czegoś potrzebujesz, brzmi to jak „ważne”
możesz użyć
:)
źródło
w MacOS X, opcja „ostrzeżenie dźwiękowe” (Terminal / Preferencje) musi być aktywowana, aby uzyskać dźwięk.
źródło
To działa dla mnie (Mac OS 10.14.6)
źródło
Jeśli masz zainstalowany XCODE, możesz wygenerować sygnał dźwiękowy / dzwonek. Nie pomyślałem, że mogę sprawić, by
printf "\a"
postać działała w C.Jest jeden sposób, aby dźwięk działał podczas działania programu, uruchom XCODE, rozwijane menu w XCODE, Preferencje, Zachowania, zaznacz pierwsze pole ODTWÓRZ DŹWIĘK, wybierz z listy lub dodaj dźwięk.
To jeden ze sposobów, ale sądzę, że tylko podczas działania programu.
źródło
osascript -e 'tell application "System Events"
zapiszczaćźródło