การใช้เครื่องมือบรรทัดคำสั่งคุณสามารถทำสิ่งต่อไปนี้:
- ติดตั้งชง
- ปรับปรุงและชงหมอ
ติดตั้ง portaudio, ffmpeg และการอ้างอิงทั้งหมดด้วย Brew
brew install portaudio
brew install ffmpeg
ติดตั้ง pip ด้วยการดาวน์โหลดget-pip.py (ลิงค์โดยตรง) และดำเนินการ
sudo python ~/Downloads/get-pip.py
ติดตั้งSoundmeter
sudo pip install soundmeter
เรียกใช้ Soundmeter ในการขอความช่วยเหลือให้ใช้สวิตช์ -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)
เพียงแค่ทำงานsoundmeter
ประสงค์ออกค่า RMS หลังจากกำหนดขีด จำกัด คุณสามารถทริกเกอร์เชลล์แอ็คชัน (ซึ่งอาจเรียกสคริปต์ AppleScript) ด้วยสวิตช์ -e
เข้าสู่การsoundmeter --segment 0.1 --log
ดูทีวีออนไลน์ (การเปลี่ยนแปลงสภาพภูมิอากาศและการเพาะปลูกกาแฟในโคลัมเบีย - จุดสิ้นสุดของเมล็ดอาราบิก้า) จะแสดงสิ่งที่ชอบ:
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
เพียงเพื่อยืนยัน: นั่นคือระดับอินพุตไมโครโฟนไม่ใช่ระดับเสียงของทีวีสตรีมเนื่องจากการติดตั้งข้างต้นทำงานในเกสต์ VM และสตรีมทีวีบนโฮสติ้ง Mac - ทดสอบ แต่ไม่ได้บันทึกด้วยการตบมือซึ่งจะเพิ่ม RMS ให้เป็นค่า มากกว่า 200!
ในการส่งข้อความหลังจากเหตุการณ์ที่ทริกเกอร์ให้ทำดังต่อไปนี้ - เปลี่ยน<user_name>
เป็นชื่อผู้ใช้แบบย่อของ OS X และ<telephone_number>
เป็นหมายเลขโทรศัพท์ที่เหมาะสมด้านล่าง:
สร้าง dir และเปลี่ยนเป็น:
mkdir ~/.soundmeter
cd ~/.soundmeter
สร้าง AppleScript:
nano sendMessage.applescript
ด้วยเนื้อหา:
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
สร้างเชลล์สคริปต์:
nano sendMessage.sh
ด้วยเนื้อหา:
#!/bin/bash
osascript /Users/<user_name>/.soundmeter/sendMessage.applescript <telephone_number> "Another Arabica bean died"
และเปลี่ยนการอนุญาต:
chmod 755 sendMessage.sh
ตอนนี้เริ่ม soundmeter ด้วยคำสั่งดังนี้:
soundmeter -t +38 -a exec -e /Users/<user_name>/.soundmeter/sendMessage.sh
สิ่งนี้ควรส่งข้อความไปยังหมายเลขโทรศัพท์ (iPhone) ของคุณ โปรดทราบว่าคุณไม่สามารถส่ง iMessage ให้คุณได้ การส่งไปที่ชื่อแทนอาจใช้งานได้ สคริปต์อื่นที่คล้ายคลึงกัน (Apple) มีให้ที่นี่: วิธีส่งข้อความ imessage ด้วย applescript เฉพาะในบริการที่มีให้เท่านั้น