Metadata-Version: 2.1
Name: audiotimer
Version: 0.4.0
Summary: UNKNOWN
Home-page: UNKNOWN
License: UNKNOWN
Platform: UNKNOWN
Description-Content-Type: text/markdown
Requires-Dist: backports.tarfile ==1.0.0
Requires-Dist: importlib-metadata ==7.1.0
Requires-Dist: jaraco.classes ==3.4.0
Requires-Dist: jaraco.context ==5.3.0
Requires-Dist: jaraco.functools ==4.0.0
Requires-Dist: keyring ==25.1.0
Requires-Dist: more-itertools ==10.2.0
Requires-Dist: numpy ==1.26.3
Requires-Dist: PyAudio ==0.2.14
Requires-Dist: pynput ==1.7.6
Requires-Dist: pyobjc ==10.1
Requires-Dist: pyobjc-core ==10.1
Requires-Dist: pyobjc-framework-Accessibility ==10.1
Requires-Dist: pyobjc-framework-Accounts ==10.1
Requires-Dist: pyobjc-framework-AddressBook ==10.1
Requires-Dist: pyobjc-framework-AdServices ==10.1
Requires-Dist: pyobjc-framework-AdSupport ==10.1
Requires-Dist: pyobjc-framework-AppleScriptKit ==10.1
Requires-Dist: pyobjc-framework-AppleScriptObjC ==10.1
Requires-Dist: pyobjc-framework-ApplicationServices ==10.1
Requires-Dist: pyobjc-framework-AppTrackingTransparency ==10.1
Requires-Dist: pyobjc-framework-AudioVideoBridging ==10.1
Requires-Dist: pyobjc-framework-AuthenticationServices ==10.1
Requires-Dist: pyobjc-framework-AutomaticAssessmentConfiguration ==10.1
Requires-Dist: pyobjc-framework-Automator ==10.1
Requires-Dist: pyobjc-framework-AVFoundation ==10.1
Requires-Dist: pyobjc-framework-AVKit ==10.1
Requires-Dist: pyobjc-framework-AVRouting ==10.1
Requires-Dist: pyobjc-framework-BackgroundAssets ==10.1
Requires-Dist: pyobjc-framework-BusinessChat ==10.1
Requires-Dist: pyobjc-framework-CalendarStore ==10.1
Requires-Dist: pyobjc-framework-CallKit ==10.1
Requires-Dist: pyobjc-framework-CFNetwork ==10.1
Requires-Dist: pyobjc-framework-Cinematic ==10.1
Requires-Dist: pyobjc-framework-ClassKit ==10.1
Requires-Dist: pyobjc-framework-CloudKit ==10.1
Requires-Dist: pyobjc-framework-Cocoa ==10.1
Requires-Dist: pyobjc-framework-Collaboration ==10.1
Requires-Dist: pyobjc-framework-ColorSync ==10.1
Requires-Dist: pyobjc-framework-Contacts ==10.1
Requires-Dist: pyobjc-framework-ContactsUI ==10.1
Requires-Dist: pyobjc-framework-CoreAudio ==10.1
Requires-Dist: pyobjc-framework-CoreAudioKit ==10.1
Requires-Dist: pyobjc-framework-CoreBluetooth ==10.1
Requires-Dist: pyobjc-framework-CoreData ==10.1
Requires-Dist: pyobjc-framework-CoreHaptics ==10.1
Requires-Dist: pyobjc-framework-CoreLocation ==10.1
Requires-Dist: pyobjc-framework-CoreMedia ==10.1
Requires-Dist: pyobjc-framework-CoreMediaIO ==10.1
Requires-Dist: pyobjc-framework-CoreMIDI ==10.1
Requires-Dist: pyobjc-framework-CoreML ==10.1
Requires-Dist: pyobjc-framework-CoreMotion ==10.1
Requires-Dist: pyobjc-framework-CoreServices ==10.1
Requires-Dist: pyobjc-framework-CoreSpotlight ==10.1
Requires-Dist: pyobjc-framework-CoreText ==10.1
Requires-Dist: pyobjc-framework-CoreWLAN ==10.1
Requires-Dist: pyobjc-framework-CryptoTokenKit ==10.1
Requires-Dist: pyobjc-framework-DataDetection ==10.1
Requires-Dist: pyobjc-framework-DeviceCheck ==10.1
Requires-Dist: pyobjc-framework-DictionaryServices ==10.1
Requires-Dist: pyobjc-framework-DiscRecording ==10.1
Requires-Dist: pyobjc-framework-DiscRecordingUI ==10.1
Requires-Dist: pyobjc-framework-DiskArbitration ==10.1
Requires-Dist: pyobjc-framework-DVDPlayback ==10.1
Requires-Dist: pyobjc-framework-EventKit ==10.1
Requires-Dist: pyobjc-framework-ExceptionHandling ==10.1
Requires-Dist: pyobjc-framework-ExecutionPolicy ==10.1
Requires-Dist: pyobjc-framework-ExtensionKit ==10.1
Requires-Dist: pyobjc-framework-ExternalAccessory ==10.1
Requires-Dist: pyobjc-framework-FileProvider ==10.1
Requires-Dist: pyobjc-framework-FileProviderUI ==10.1
Requires-Dist: pyobjc-framework-FinderSync ==10.1
Requires-Dist: pyobjc-framework-FSEvents ==10.1
Requires-Dist: pyobjc-framework-GameCenter ==10.1
Requires-Dist: pyobjc-framework-GameController ==10.1
Requires-Dist: pyobjc-framework-GameKit ==10.1
Requires-Dist: pyobjc-framework-GameplayKit ==10.1
Requires-Dist: pyobjc-framework-HealthKit ==10.1
Requires-Dist: pyobjc-framework-ImageCaptureCore ==10.1
Requires-Dist: pyobjc-framework-InputMethodKit ==10.1
Requires-Dist: pyobjc-framework-InstallerPlugins ==10.1
Requires-Dist: pyobjc-framework-InstantMessage ==10.1
Requires-Dist: pyobjc-framework-Intents ==10.1
Requires-Dist: pyobjc-framework-IntentsUI ==10.1
Requires-Dist: pyobjc-framework-IOBluetooth ==10.1
Requires-Dist: pyobjc-framework-IOBluetoothUI ==10.1
Requires-Dist: pyobjc-framework-IOSurface ==10.1
Requires-Dist: pyobjc-framework-iTunesLibrary ==10.1
Requires-Dist: pyobjc-framework-KernelManagement ==10.1
Requires-Dist: pyobjc-framework-LatentSemanticMapping ==10.1
Requires-Dist: pyobjc-framework-LaunchServices ==10.1
Requires-Dist: pyobjc-framework-libdispatch ==10.1
Requires-Dist: pyobjc-framework-libxpc ==10.1
Requires-Dist: pyobjc-framework-LinkPresentation ==10.1
Requires-Dist: pyobjc-framework-LocalAuthentication ==10.1
Requires-Dist: pyobjc-framework-LocalAuthenticationEmbeddedUI ==10.1
Requires-Dist: pyobjc-framework-MailKit ==10.1
Requires-Dist: pyobjc-framework-MapKit ==10.1
Requires-Dist: pyobjc-framework-MediaAccessibility ==10.1
Requires-Dist: pyobjc-framework-MediaLibrary ==10.1
Requires-Dist: pyobjc-framework-MediaPlayer ==10.1
Requires-Dist: pyobjc-framework-MediaToolbox ==10.1
Requires-Dist: pyobjc-framework-Metal ==10.1
Requires-Dist: pyobjc-framework-MetalFX ==10.1
Requires-Dist: pyobjc-framework-MetalKit ==10.1
Requires-Dist: pyobjc-framework-MetalPerformanceShaders ==10.1
Requires-Dist: pyobjc-framework-MetalPerformanceShadersGraph ==10.1
Requires-Dist: pyobjc-framework-MetricKit ==10.1
Requires-Dist: pyobjc-framework-MLCompute ==10.1
Requires-Dist: pyobjc-framework-ModelIO ==10.1
Requires-Dist: pyobjc-framework-MultipeerConnectivity ==10.1
Requires-Dist: pyobjc-framework-NaturalLanguage ==10.1
Requires-Dist: pyobjc-framework-NetFS ==10.1
Requires-Dist: pyobjc-framework-Network ==10.1
Requires-Dist: pyobjc-framework-NetworkExtension ==10.1
Requires-Dist: pyobjc-framework-NotificationCenter ==10.1
Requires-Dist: pyobjc-framework-OpenDirectory ==10.1
Requires-Dist: pyobjc-framework-OSAKit ==10.1
Requires-Dist: pyobjc-framework-OSLog ==10.1
Requires-Dist: pyobjc-framework-PassKit ==10.1
Requires-Dist: pyobjc-framework-PencilKit ==10.1
Requires-Dist: pyobjc-framework-PHASE ==10.1
Requires-Dist: pyobjc-framework-Photos ==10.1
Requires-Dist: pyobjc-framework-PhotosUI ==10.1
Requires-Dist: pyobjc-framework-PreferencePanes ==10.1
Requires-Dist: pyobjc-framework-PushKit ==10.1
Requires-Dist: pyobjc-framework-Quartz ==10.1
Requires-Dist: pyobjc-framework-QuickLookThumbnailing ==10.1
Requires-Dist: pyobjc-framework-ReplayKit ==10.1
Requires-Dist: pyobjc-framework-SafariServices ==10.1
Requires-Dist: pyobjc-framework-SafetyKit ==10.1
Requires-Dist: pyobjc-framework-SceneKit ==10.1
Requires-Dist: pyobjc-framework-ScreenCaptureKit ==10.1
Requires-Dist: pyobjc-framework-ScreenSaver ==10.1
Requires-Dist: pyobjc-framework-ScreenTime ==10.1
Requires-Dist: pyobjc-framework-ScriptingBridge ==10.1
Requires-Dist: pyobjc-framework-SearchKit ==10.1
Requires-Dist: pyobjc-framework-Security ==10.1
Requires-Dist: pyobjc-framework-SecurityFoundation ==10.1
Requires-Dist: pyobjc-framework-SecurityInterface ==10.1
Requires-Dist: pyobjc-framework-SensitiveContentAnalysis ==10.1
Requires-Dist: pyobjc-framework-ServiceManagement ==10.1
Requires-Dist: pyobjc-framework-SharedWithYou ==10.1
Requires-Dist: pyobjc-framework-SharedWithYouCore ==10.1
Requires-Dist: pyobjc-framework-ShazamKit ==10.1
Requires-Dist: pyobjc-framework-Social ==10.1
Requires-Dist: pyobjc-framework-SoundAnalysis ==10.1
Requires-Dist: pyobjc-framework-Speech ==10.1
Requires-Dist: pyobjc-framework-SpriteKit ==10.1
Requires-Dist: pyobjc-framework-StoreKit ==10.1
Requires-Dist: pyobjc-framework-Symbols ==10.1
Requires-Dist: pyobjc-framework-SyncServices ==10.1
Requires-Dist: pyobjc-framework-SystemConfiguration ==10.1
Requires-Dist: pyobjc-framework-SystemExtensions ==10.1
Requires-Dist: pyobjc-framework-ThreadNetwork ==10.1
Requires-Dist: pyobjc-framework-UniformTypeIdentifiers ==10.1
Requires-Dist: pyobjc-framework-UserNotifications ==10.1
Requires-Dist: pyobjc-framework-UserNotificationsUI ==10.1
Requires-Dist: pyobjc-framework-VideoSubscriberAccount ==10.1
Requires-Dist: pyobjc-framework-VideoToolbox ==10.1
Requires-Dist: pyobjc-framework-Virtualization ==10.1
Requires-Dist: pyobjc-framework-Vision ==10.1
Requires-Dist: pyobjc-framework-WebKit ==10.1
Requires-Dist: six ==1.16.0
Requires-Dist: slack-sdk ==3.27.1
Requires-Dist: zipp ==3.18.1

# Audio timer
Github: https://github.com/ARanch/audiotimer

This small program starts listening for an audio input on the system microphone. When a set audio level threshold is reached, a timer is started. When the audio level is reduced below the threshold, the timer is stopped after a short countdown, and the timespan is logged.

`python -m pip install audiotimer`

install requirements:
`pip install -r requirements.txt`

Note: on Mac OS you need [Portaudio](https://www.portaudio.com/) installed, otherwise you will get the error `ERROR: Failed building wheel for PyAudio`. Install it using:
`brew install portaudio` before installing requirements.


run using: 
`python -m audiotimer`

see -h flag for run-time options.

Eample usage:
Run using a treshold of "50" and a buffertime of 30 seconds:
`python -m audiotimer -t 50 -b 30`

## Use case
The program is intended to be used as a way of testing the battery life of battery powered loudspeakers. Set the speaker to play a pink noise at a certain level, and leave a laptop with the speaker to listen for when it dies out. 


