Chciałbym używać mojego starego MacBooka jako elektronicznej nianie. Wyobrażam sobie, że praca polega na ustawieniu progu hałasu dla wewnętrznego mikrofonu w MacBooku, gdy dziecko się porusza lub narzeka, oraz na użyciu Wiadomości, aby wysłać SMS-a do mnie lub mojej żony, gdy próg zostanie osiągnięty.
Kiedy patrzę w Preferencjach systemowych, widzę, że Input level
mikrofon odbiera szum, ale jak mogę uzyskać policzalną liczbę w terminalu?
Widziałem online, osascript -e "get volume settings"
jak uzyskać dostęp do wartości liczbowej określającej czułość mikrofonu, ale nie mogę znaleźć sposobu, aby uzyskać dostęp do tego, jak głośne jest wejście w danym momencie.
Jakieś pomysły?
terminal
applescript
audio
microphone
CephBirk
źródło
źródło
Odpowiedzi:
Za pomocą narzędzi wiersza poleceń możesz wykonać następujące czynności:
Zainstaluj portaudio, ffmpeg i wszystkie zależności za pomocą brew
Zainstaluj pip, pobierając plik get-pip.py (bezpośredni link) i uruchamiając
Zainstaluj miernik dźwięku
Uruchom miernik dźwięku. Aby uzyskać pomoc, użyj przełącznika -h:
Samo uruchomienie
soundmeter
spowoduje wyświetlenie wartości RMS . Po zdefiniowaniu progu można wywołać akcję skryptu powłoki (która sama może wywołać skrypt AppleScript) za pomocą przełącznika -e.Wejście do
soundmeter --segment 0.1 --log
oglądania telewizji internetowej (zmiany klimatu i uprawa kawy w Kolumbii - koniec ziaren Arabiki) pokaże coś takiego:Tylko w celu potwierdzenia: to poziom wejściowy mikrofonu, a nie poziom dźwięku strumienia telewizyjnego, ponieważ powyższa instalacja działa na gościu VM, a strumień telewizyjny na hostującym komputerze Mac - przetestowany, ale nie zalogowany z pewnym klaskaniem, co zwiększy RMS do wartości powyżej 200!
Aby wysłać wiadomość po zdarzeniu wyzwalającym, wykonaj następujące czynności - zmień
<user_name>
krótką nazwę użytkownika OS X i<telephone_number>
odpowiedni numer telefonu poniżej:Utwórz katalog i zmień na niego:
Utwórz AppleScript:
z treścią:
Utwórz skrypt powłoki:
z treścią:
i zmień uprawnienia:
Teraz uruchom miernik dźwięku za pomocą następującego polecenia:
To powinno wysłać wiadomość na Twój numer telefonu (iPhone). Pamiętaj, że nie możesz wysłać iMessage do siebie. Wysłanie go do aliasu może działać. Inne podobne skrypty (Apple) są dostępne tutaj: Jak wysłać tekst wiadomości za pomocą AppleScript, tylko w dostarczonej usłudze?
źródło