Menggunakan alat baris perintah Anda dapat melakukan hal berikut:
- Pasang brew
- Perbarui dan sediakan dokter
Instal portaudio, ffmpeg dan semua dependensi dengan minuman
brew install portaudio
brew install ffmpeg
Instal pip dengan mengunduh get-pip.py (tautan langsung) dan jalankan
sudo python ~/Downloads/get-pip.py
Pasang soundmeter
sudo pip install soundmeter
Jalankan soundmeter. Untuk mendapatkan bantuan, gunakan sakelar -h:
soundmeter -h
optional arguments:
-h, --help show this help message and exit
-c, --collect collect RMS values to determine thresholds
-s SECONDS, --seconds SECONDS
time in seconds to run the meter (default forever)
-a {stop,exec-stop,exec}, --action {stop,exec-stop,exec}
triggered action
-t [+|-]THRESHOLD [NUM ...], --trigger [+|-]THRESHOLD [NUM ...]
trigger condition (threshold RMS and number of times)
-e SCRIPT, --exec SCRIPT
shell script to execute upon trigger
-d, --daemonize run the meter in the background
--log [LOGFILE] log the meter (default to ~/.soundmeter/log)
-v, --verbose verbose mode
--segment SECONDS audio segment length recorded in seconds (defaults to
0.5)
Cukup menjalankan soundmeter
akan menghasilkan nilai RMS . Setelah mendefinisikan ambang batas, Anda dapat memicu aksi skrip shell (yang dapat memicu skrip AppleScript) dengan tombol -e.
Memasuki soundmeter --segment 0.1 --log
menonton TV online (perubahan iklim dan pertanian kopi di Kolombia - akhir biji Arabika) akan menunjukkan sesuatu seperti:
2017-01-25 18:16:02,289 24
2017-01-25 18:16:02,665 24
2017-01-25 18:16:03,037 31
2017-01-25 18:16:03,399 3
2017-01-25 18:16:03,769 15
2017-01-25 18:16:04,142 11
2017-01-25 18:16:04,524 9
2017-01-25 18:16:04,891 7
2017-01-25 18:16:05,257 7
2017-01-25 18:16:05,632 0
2017-01-25 18:16:06,001 7
2017-01-25 18:16:06,384 0
2017-01-25 18:16:06,745 2
2017-01-25 18:16:07,113 10
2017-01-25 18:16:07,491 14
2017-01-25 18:16:07,860 6
2017-01-25 18:16:08,223 0
2017-01-25 18:16:08,609 13
2017-01-25 18:16:08,973 16
2017-01-25 18:16:09,347 7
2017-01-25 18:16:09,720 26
2017-01-25 18:16:10,091 1
2017-01-25 18:16:10,464 38 ← an Arabica bean died here
2017-01-25 18:16:10,835 13
2017-01-25 18:16:11,204 Stopped
Hanya untuk mengonfirmasi: itulah tingkat input mikrofon dan bukan tingkat suara aliran TV karena instalasi di atas berjalan di tamu VM dan aliran TV di hosting Mac - diuji tetapi tidak dicatat dengan beberapa tepukan yang akan meningkatkan RMS ke nilai-nilai di atas 200!
Untuk mengirim pesan setelah peristiwa yang memicu lakukan hal berikut - ubah <user_name>
nama pengguna pendek OS X Anda dan <telephone_number>
ke nomor telepon yang sesuai di bawah ini:
Buat dir dan ubahlah:
mkdir ~/.soundmeter
cd ~/.soundmeter
Buat AppleScript:
nano sendMessage.applescript
dengan konten:
on run {targetBuddyPhone, targetMessage}
tell application "Messages"
set targetService to 1st service whose service type = iMessage
set targetBuddy to buddy targetBuddyPhone of targetService
send targetMessage to targetBuddy
end tell
end run
Buat skrip shell:
nano sendMessage.sh
dengan konten:
#!/bin/bash
osascript /Users/<user_name>/.soundmeter/sendMessage.applescript <telephone_number> "Another Arabica bean died"
dan ubah izin:
chmod 755 sendMessage.sh
Sekarang mulai soundmeter dengan perintah seperti ini:
soundmeter -t +38 -a exec -e /Users/<user_name>/.soundmeter/sendMessage.sh
Ini akan mengirim pesan ke nomor telepon (iPhone) Anda. Harap dicatat bahwa Anda tidak dapat mengirim iMessage ke diri Anda sendiri. Mengirimnya ke alias mungkin berhasil. Script (Apple) serupa lainnya tersedia di sini: Bagaimana cara mengirim teks imessage dengan applescript, hanya dalam layanan yang disediakan?