Registry / aws / pyobjc-framework-soundanalysis

pyobjc-framework-soundanalysis

JSON →
library12.2pypypiunverified

PyObjC-framework-soundanalysis provides Python wrappers for Apple's SoundAnalysis framework on macOS, enabling Python applications to perform advanced audio analysis tasks. It is part of the larger PyObjC project, currently at version 12.1, with a release cadence tied to macOS SDK updates and Python version support.

pip install pyobjc-framework-soundanalysis
INSTALL
IMPORT
SIG · PYOBJC-FRAMEWORK-S
P
pyobjc-framework-soundanalysis
awspythonv12.2
Install
Import
Disk
Pass rate
0/ 10
Env Coverage0 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v? · pip install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.940 runs
build_error
glibc
py 3.103.940 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

SAAudioAnalyzer
from SoundAnalysis import SAAudioAnalyzer
SADetectSpeechRequest
from SoundAnalysis import SADetectSpeechRequest

Demonstrates how to import and instantiate a basic class from the SoundAnalysis framework. This example creates a `SADetectSpeechRequest`, a common analysis request type.

from SoundAnalysis import SADetectSpeechRequest from Foundation import NSError # Common for PyObjC error handling import objc # Core PyObjC utilities # Create an instance of a SoundAnalysis request # SADetectSpeechRequest can be initialized without complex audio formats. error = objc.nil # Placeholder for NSError object speech_request = SADetectSpeechRequest.alloc().init() if speech_request: print(f"Successfully created SADetectSpeechRequest: {speech_request}") # In a real application, you would typically add this request to an SAAudioAnalyzer: # from SoundAnalysis import SAAudioAnalyzer # # ... (setup AVAudioFormat and SAAudioAnalyzer) # analyzer.addAnalysisRequest_error_(speech_request, error) else: print(f"Failed to create SADetectSpeechRequest. Error: {error}")
Debug
Known issues
breakingPyObjC version 12.0 dropped support for Python 3.9. Ensure your Python version meets the `pyobjc` requirements (Python 3.10+ for 12.x).
fix
Upgrade to Python 3.10 or later, or use an older PyObjC version (e.g., PyObjC 11.x for Python 3.9 support).
affects: >=12.0
breakingStarting with PyObjC 12.0, the `AVFAudio` framework (containing core audio classes like `AVAudioFormat`) was split into its own top-level package and is no longer merged into `AVFoundation`. Imports must be updated.
fix
Change imports from `from AVFoundation import ...` to `from AVFAudio import ...` for `AVAudio*` related classes.
affects: >=12.0
breakingPyObjC 11.1 aligned its behavior for Objective-C `init` family methods with `clang`'s Automatic Reference Counting (ARC) rules. Methods in the 'init' family now correctly steal a reference to `self` and return a new reference, which can affect memory management if not previously accounted for.
fix
Review custom Python subclasses of Objective-C objects, especially their `__init__` or `init*` methods, to ensure correct reference counting and object lifecycle management.
affects: >=11.1
gotchaPyObjC 10.3 introduced a change that prevented `__init__` from being called when a user implemented `__new__`, leading to unexpected behavior. This was quickly fixed in 10.3.1, but highlights potential interactions with `__new__`.
fix
Ensure you are using PyObjC 10.3.1 or later if you have Python classes that implement both `__new__` and `__init__` and derive from `objc.lookUpClass('NSObject')` or similar PyObjC bridged classes.
affects: 10.3
Upgrade
Version history
12.2latest on PyPI · released May 30, 2026
Audit
Dependencies
pyobjcrequiredCore PyObjC bridge is required for all framework wrappers.
Agent activity
14 hits · last 30 days
node
14
Resources
pyobjc-framework-soundanalysis — pip install pyobjc-framework-soundanalysis · libregistry