Registry / communication / pyobjc-framework-avrouting

pyobjc-framework-avrouting

JSON →
library12.2pypypiunverified

PyObjC is a bridge between Python and Objective-C, enabling Python developers to write full-featured macOS applications and access Cocoa frameworks. The `pyobjc-framework-avrouting` package provides Python wrappers for Apple's `AVRouting` framework, which allows applications to integrate third-party devices and protocols into the system's media route picker. It is actively maintained with releases frequently aligned with new macOS SDK versions, and the current version is 12.1.

pip install pyobjc-framework-avrouting
INSTALL
IMPORT
SIG · PYOBJC-FRAMEWORK-A
P
pyobjc-framework-avrouting
communicationpythonv12.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.920 runs
build_error
glibc
py 3.103.920 runs
build_error
Code
Verified usage

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

AVRouting
import AVRouting
All classes, functions, and constants from the AVRouting framework are made available under this module.

This quickstart demonstrates how to import the `AVRouting` framework and instantiate a basic class like `AVCustomRoutingController`. Full functionality of the `AVRouting` framework typically requires integration with other macOS services, UI elements like `AVRoutePickerView`, and the implementation of delegate protocols as detailed in Apple's `AVRouting` documentation.

import AVRouting import objc def main(): # Instantiate a core AVRouting class. AVCustomRoutingController manages custom device routes. # Actual functionality requires deeper integration with macOS services and delegates, # typically within a full Cocoa application context, as per Apple's AVRouting documentation. controller = AVRouting.AVCustomRoutingController.alloc().init() # Example of accessing a property (if available, consult Apple's docs for specifics) # This particular property needs a delegate or further setup to be meaningful. # For demonstration, we just show instantiation. print(f"AVRouting.AVCustomRoutingController instance created: {controller}") # To make sure PyObjC is properly initialized in a non-GUI context # This is often handled implicitly in Cocoa applications, but good for standalone scripts. objc.autoreleasepool(lambda: main_logic()) def main_logic(): # Your main PyObjC logic goes here pass # The example already does the print in the outer main if __name__ == '__main__': main()
Debug
Known issues
breakingPyObjC 12.0 dropped support for Python 3.9.
fix
Upgrade to Python 3.10 or newer (Python 3.10 is the minimum for PyObjC 12.x).
affects: 12.0 and later
breakingPyObjC 11.0 dropped support for Python 3.8.
fix
Upgrade to Python 3.9 or newer (Python 3.10 is the minimum for PyObjC 12.x).
affects: 11.0 and later
gotchaInstalling PyObjC from source (or in some edge cases even binary wheels) requires Apple's Xcode Command Line Tools to be installed on your macOS system.
fix
Run `xcode-select --install` in your terminal to install the necessary tools.
affects: All versions
gotchaBehavior around `__init__` when `__new__` is implemented in Python subclasses of Objective-C classes changed in PyObjC 10.3 and was partially reverted in 10.3.1. This can affect custom initializers.
fix
Review Python subclasses that implement both `__new__` and `__init__` if upgrading from pre-10.3.1. Consult PyObjC release notes for details.
affects: 10.3, fixed in 10.3.1 and later
gotchaPyObjC 11.1 introduced alignment with `clang`'s Automatic Reference Counting (ARC) for initializer methods (methods in the 'init' family), which now correctly model reference stealing and returning new references. This might subtly change memory management behavior for custom Objective-C class wrappers.
fix
Review custom Objective-C class wrappers, especially `init` methods, for potential changes in reference counting behavior.
affects: 11.1 and later
gotchaKey-Value Observing (KVO) usage is automatically disabled for subclasses of `NSProxy` defined in Python to prevent `SystemError`.
fix
If you relied on KVO with Python `NSProxy` subclasses, this behavior is now implicitly disabled. Re-evaluate if KVO is strictly necessary or if an alternative observation pattern can be used.
affects: 12.1 and later
Upgrade
Version history
12.2latest on PyPI · released May 30, 2026
Audit
Dependencies
pyobjc-corerequiredFundamental bridge between Python and Objective-C, required for all PyObjC framework wrappers.
Agent activity
14 hits · last 30 days
node
10
OpenAI (training)
1
Resources
pyobjc-framework-avrouting — pip install pyobjc-framework-avrouting · libregistry