pyobjc-framework-PHASE 11.0__tar.gz → 12.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/Lib/PHASE/_metadata.py +34 -2
  2. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/Lib/pyobjc_framework_PHASE.egg-info/PKG-INFO +19 -6
  3. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/Lib/pyobjc_framework_PHASE.egg-info/SOURCES.txt +2 -6
  4. pyobjc_framework_phase-12.0/Lib/pyobjc_framework_PHASE.egg-info/pyobjc-build-info.txt +3 -0
  5. pyobjc_framework_phase-12.0/Lib/pyobjc_framework_PHASE.egg-info/requires.txt +2 -0
  6. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/License.txt +1 -1
  7. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PKG-INFO +19 -6
  8. pyobjc_framework_phase-12.0/PyObjCTest/__init__.py +1 -0
  9. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phasesoundevent.py +12 -1
  10. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phasetypes.py +5 -0
  11. pyobjc_framework_phase-11.0/metadata/raw/arm64-15.0.fwinfo → pyobjc_framework_phase-12.0/metadata/raw/arm64-26.0.fwinfo +130 -2
  12. pyobjc_framework_phase-11.0/metadata/raw/x86_64-15.0.fwinfo → pyobjc_framework_phase-12.0/metadata/raw/x86_64-26.0.fwinfo +130 -2
  13. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/pyobjc_setup.py +9 -41
  14. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/setup.py +1 -1
  15. pyobjc_framework_phase-11.0/Lib/pyobjc_framework_PHASE.egg-info/pyobjc-build-info.txt +0 -3
  16. pyobjc_framework_phase-11.0/Lib/pyobjc_framework_PHASE.egg-info/requires.txt +0 -2
  17. pyobjc_framework_phase-11.0/PyObjCTest/__init__.py +0 -1
  18. pyobjc_framework_phase-11.0/metadata/raw/arm64-13.1.fwinfo +0 -6876
  19. pyobjc_framework_phase-11.0/metadata/raw/arm64-14.5.fwinfo +0 -6797
  20. pyobjc_framework_phase-11.0/metadata/raw/x86_64-13.1.fwinfo +0 -6876
  21. pyobjc_framework_phase-11.0/metadata/raw/x86_64-14.5.fwinfo +0 -6797
  22. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/Lib/PHASE/__init__.py +0 -0
  23. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/Lib/pyobjc_framework_PHASE.egg-info/dependency_links.txt +0 -0
  24. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/Lib/pyobjc_framework_PHASE.egg-info/not-zip-safe +0 -0
  25. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/Lib/pyobjc_framework_PHASE.egg-info/top_level.txt +0 -0
  26. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/MANIFEST.in +0 -0
  27. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phase.py +0 -0
  28. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phaseassetregistry.py +0 -0
  29. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phaseducker.py +0 -0
  30. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phaseengine.py +0 -0
  31. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phaseenvelope.py +0 -0
  32. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phaseenventnodes.py +0 -0
  33. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phasegroup.py +0 -0
  34. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phasematerial.py +0 -0
  35. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phasemedium.py +0 -0
  36. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phasemixer.py +0 -0
  37. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phaseobject.py +0 -0
  38. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phasesoundeventnodes.py +0 -0
  39. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/PyObjCTest/test_phasespatialpipeline.py +0 -0
  40. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/metadata/PHASE.fwinfo +0 -0
  41. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/metadata/metadata.ini +0 -0
  42. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/pyproject.toml +0 -0
  43. {pyobjc_framework_phase-11.0 → pyobjc_framework_phase-12.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  # This file is generated by objective.metadata
2
2
  #
3
- # Last update: Fri Jun 21 10:17:22 2024
3
+ # Last update: Fri Aug 1 15:57:20 2025
4
4
  #
5
5
  # flake8: noqa
6
6
 
@@ -31,7 +31,7 @@ else:
31
31
 
32
32
  misc = {}
33
33
  constants = """$PHASEAssetErrorDomain$PHASEErrorDomain$PHASESoundEventErrorDomain$PHASESpatialCategoryDirectPathTransmission$PHASESpatialCategoryEarlyReflections$PHASESpatialCategoryLateReverb$"""
34
- enums = """$PHASEAssetErrorAlreadyExists@1346920804$PHASEAssetErrorBadParameters@1346920803$PHASEAssetErrorFailedToLoad@1346920801$PHASEAssetErrorGeneralError@1346920805$PHASEAssetErrorInvalidEngineInstance@1346920802$PHASEAssetErrorMemoryAllocation@1346920806$PHASEAssetTypeResident@0$PHASEAssetTypeStreamed@1$PHASEAutomaticHeadTrackingFlagOrientation@1$PHASECalibrationModeAbsoluteSpl@2$PHASECalibrationModeNone@0$PHASECalibrationModeRelativeSpl@1$PHASECullOptionDoNotCull@4$PHASECullOptionSleepWakeAtRandomOffset@2$PHASECullOptionSleepWakeAtRealtimeOffset@3$PHASECullOptionSleepWakeAtZero@1$PHASECullOptionTerminate@0$PHASECurveTypeCubed@1668432757$PHASECurveTypeHoldStartValue@1668434003$PHASECurveTypeInverseCubed@1668434243$PHASECurveTypeInverseSigmoid@1668434247$PHASECurveTypeInverseSine@1668434259$PHASECurveTypeInverseSquared@1668434257$PHASECurveTypeJumpToEndValue@1668434501$PHASECurveTypeLinear@1668435054$PHASECurveTypeSigmoid@1668436839$PHASECurveTypeSine@1668436846$PHASECurveTypeSquared@1668436849$PHASEErrorInitializeFailed@1346913633$PHASEErrorInvalidObject@1346913634$PHASEMaterialPresetBrick@1833071211$PHASEMaterialPresetCardboard@1833136740$PHASEMaterialPresetConcrete@1833132914$PHASEMaterialPresetDrywall@1833202295$PHASEMaterialPresetGlass@1833397363$PHASEMaterialPresetWood@1834448228$PHASEMediumPresetAir@1835286898$PHASENormalizationModeDynamic@1$PHASENormalizationModeNone@0$PHASEPlaybackModeLooping@1$PHASEPlaybackModeOneShot@0$PHASEPushStreamBufferDefault@1$PHASEPushStreamBufferInterrupts@4$PHASEPushStreamBufferInterruptsAtLoop@8$PHASEPushStreamBufferLoops@2$PHASEPushStreamCompletionDataRendered@0$PHASERenderingStatePaused@2$PHASERenderingStateStarted@1$PHASERenderingStateStopped@0$PHASEReverbPresetCathedral@1917023336$PHASEReverbPresetLargeChamber@1917600616$PHASEReverbPresetLargeHall@1917601841$PHASEReverbPresetLargeHall2@1917601842$PHASEReverbPresetLargeRoom@1917604401$PHASEReverbPresetLargeRoom2@1917604402$PHASEReverbPresetMediumChamber@1917666152$PHASEReverbPresetMediumHall@1917667377$PHASEReverbPresetMediumHall2@1917667378$PHASEReverbPresetMediumHall3@1917667379$PHASEReverbPresetMediumRoom@1917669997$PHASEReverbPresetNone@1917742958$PHASEReverbPresetSmallRoom@1918063213$PHASESoundEventErrorAPIMisuse@1346925668$PHASESoundEventErrorBadData@1346925666$PHASESoundEventErrorInvalidInstance@1346925667$PHASESoundEventErrorNotFound@1346925665$PHASESoundEventErrorOutOfMemory@1346925670$PHASESoundEventErrorSystemNotInitialized@1346925669$PHASESoundEventPrepareHandlerReasonFailure@0$PHASESoundEventPrepareHandlerReasonPrepared@1$PHASESoundEventPrepareHandlerReasonTerminated@2$PHASESoundEventPrepareStatePrepareInProgress@1$PHASESoundEventPrepareStatePrepareNotStarted@0$PHASESoundEventPrepareStatePrepared@2$PHASESoundEventSeekHandlerReasonFailure@0$PHASESoundEventSeekHandlerReasonFailureSeekAlreadyInProgress@1$PHASESoundEventSeekHandlerReasonSeekSuccessful@2$PHASESoundEventStartHandlerReasonFailure@0$PHASESoundEventStartHandlerReasonFinishedPlaying@1$PHASESoundEventStartHandlerReasonTerminated@2$PHASESpatialPipelineFlagDirectPathTransmission@1$PHASESpatialPipelineFlagEarlyReflections@2$PHASESpatialPipelineFlagLateReverb@4$PHASESpatializationModeAlwaysUseBinaural@1$PHASESpatializationModeAlwaysUseChannelBased@2$PHASESpatializationModeAutomatic@0$PHASEUpdateModeAutomatic@0$PHASEUpdateModeManual@1$"""
34
+ enums = """$PHASEAssetErrorAlreadyExists@1346920804$PHASEAssetErrorBadParameters@1346920803$PHASEAssetErrorFailedToLoad@1346920801$PHASEAssetErrorGeneralError@1346920805$PHASEAssetErrorInvalidEngineInstance@1346920802$PHASEAssetErrorMemoryAllocation@1346920806$PHASEAssetTypeResident@0$PHASEAssetTypeStreamed@1$PHASEAutomaticHeadTrackingFlagOrientation@1$PHASEAutomaticHeadTrackingFlagPosition@2$PHASECalibrationModeAbsoluteSpl@2$PHASECalibrationModeNone@0$PHASECalibrationModeRelativeSpl@1$PHASECullOptionDoNotCull@4$PHASECullOptionSleepWakeAtRandomOffset@2$PHASECullOptionSleepWakeAtRealtimeOffset@3$PHASECullOptionSleepWakeAtZero@1$PHASECullOptionTerminate@0$PHASECurveTypeCubed@1668432757$PHASECurveTypeHoldStartValue@1668434003$PHASECurveTypeInverseCubed@1668434243$PHASECurveTypeInverseSigmoid@1668434247$PHASECurveTypeInverseSine@1668434259$PHASECurveTypeInverseSquared@1668434257$PHASECurveTypeJumpToEndValue@1668434501$PHASECurveTypeLinear@1668435054$PHASECurveTypeSigmoid@1668436839$PHASECurveTypeSine@1668436846$PHASECurveTypeSquared@1668436849$PHASEErrorInitializeFailed@1346913633$PHASEErrorInvalidObject@1346913634$PHASEMaterialPresetBrick@1833071211$PHASEMaterialPresetCardboard@1833136740$PHASEMaterialPresetConcrete@1833132914$PHASEMaterialPresetDrywall@1833202295$PHASEMaterialPresetGlass@1833397363$PHASEMaterialPresetWood@1834448228$PHASEMediumPresetAir@1835286898$PHASENormalizationModeDynamic@1$PHASENormalizationModeNone@0$PHASEPlaybackModeLooping@1$PHASEPlaybackModeOneShot@0$PHASEPushStreamBufferDefault@1$PHASEPushStreamBufferInterrupts@4$PHASEPushStreamBufferInterruptsAtLoop@8$PHASEPushStreamBufferLoops@2$PHASEPushStreamCompletionDataRendered@0$PHASERenderingModeClient@1$PHASERenderingModeLocal@0$PHASERenderingStatePaused@2$PHASERenderingStateStarted@1$PHASERenderingStateStopped@0$PHASEReverbPresetCathedral@1917023336$PHASEReverbPresetLargeChamber@1917600616$PHASEReverbPresetLargeHall@1917601841$PHASEReverbPresetLargeHall2@1917601842$PHASEReverbPresetLargeRoom@1917604401$PHASEReverbPresetLargeRoom2@1917604402$PHASEReverbPresetMediumChamber@1917666152$PHASEReverbPresetMediumHall@1917667377$PHASEReverbPresetMediumHall2@1917667378$PHASEReverbPresetMediumHall3@1917667379$PHASEReverbPresetMediumRoom@1917669997$PHASEReverbPresetNone@1917742958$PHASEReverbPresetSmallRoom@1918063213$PHASESoundEventErrorAPIMisuse@1346925668$PHASESoundEventErrorBadData@1346925666$PHASESoundEventErrorInvalidInstance@1346925667$PHASESoundEventErrorNotFound@1346925665$PHASESoundEventErrorOutOfMemory@1346925670$PHASESoundEventErrorSystemNotInitialized@1346925669$PHASESoundEventPrepareHandlerReasonFailure@0$PHASESoundEventPrepareHandlerReasonPrepared@1$PHASESoundEventPrepareHandlerReasonTerminated@2$PHASESoundEventPrepareStatePrepareInProgress@1$PHASESoundEventPrepareStatePrepareNotStarted@0$PHASESoundEventPrepareStatePrepared@2$PHASESoundEventSeekHandlerReasonFailure@0$PHASESoundEventSeekHandlerReasonFailureSeekAlreadyInProgress@1$PHASESoundEventSeekHandlerReasonSeekSuccessful@2$PHASESoundEventStartHandlerReasonFailure@0$PHASESoundEventStartHandlerReasonFinishedPlaying@1$PHASESoundEventStartHandlerReasonTerminated@2$PHASESpatialPipelineFlagDirectPathTransmission@1$PHASESpatialPipelineFlagEarlyReflections@2$PHASESpatialPipelineFlagLateReverb@4$PHASESpatializationModeAlwaysUseBinaural@1$PHASESpatializationModeAlwaysUseChannelBased@2$PHASESpatializationModeAutomatic@0$PHASEUpdateModeAutomatic@0$PHASEUpdateModeManual@1$"""
35
35
  misc.update(
36
36
  {
37
37
  "PHASESpatialPipelineFlags": NewType("PHASESpatialPipelineFlags", int),
@@ -63,6 +63,7 @@ misc.update(
63
63
  "PHASENormalizationMode": NewType("PHASENormalizationMode", int),
64
64
  "PHASESoundEventError": NewType("PHASESoundEventError", int),
65
65
  "PHASEError": NewType("PHASEError", int),
66
+ "PHASERenderingMode": NewType("PHASERenderingMode", int),
66
67
  "PHASEReverbPreset": NewType("PHASEReverbPreset", int),
67
68
  "PHASEPushStreamCompletionCallbackCondition": NewType(
68
69
  "PHASEPushStreamCompletionCallbackCondition", int
@@ -332,6 +333,34 @@ try:
332
333
  }
333
334
  },
334
335
  )
336
+ r(
337
+ b"PHASESoundEvent",
338
+ b"seekToTime:resumeAtEngineTime:completion:",
339
+ {
340
+ "arguments": {
341
+ 4: {
342
+ "callable": {
343
+ "retval": {"type": b"v"},
344
+ "arguments": {0: {"type": b"^v"}, 1: {"type": b"q"}},
345
+ }
346
+ }
347
+ }
348
+ },
349
+ )
350
+ r(
351
+ b"PHASESoundEvent",
352
+ b"startAtTime:completion:",
353
+ {
354
+ "arguments": {
355
+ 3: {
356
+ "callable": {
357
+ "retval": {"type": b"v"},
358
+ "arguments": {0: {"type": b"^v"}, 1: {"type": b"q"}},
359
+ }
360
+ }
361
+ }
362
+ },
363
+ )
335
364
  r(
336
365
  b"PHASESoundEvent",
337
366
  b"startWithCompletion:",
@@ -391,6 +420,9 @@ objc.registerNewKeywordsFromSelector(
391
420
  b"initWithEngine:sourceGroups:targetGroups:gain:attackTime:releaseTime:attackCurve:releaseCurve:",
392
421
  )
393
422
  objc.registerNewKeywordsFromSelector("PHASEEngine", b"initWithUpdateMode:")
423
+ objc.registerNewKeywordsFromSelector(
424
+ "PHASEEngine", b"initWithUpdateMode:renderingMode:"
425
+ )
394
426
  objc.registerNewKeywordsFromSelector("PHASEEnvelope", b"initWithStartPoint:segments:")
395
427
  objc.registerNewKeywordsFromSelector(
396
428
  "PHASEEnvelopeDistanceModelParameters", b"initWithEnvelope:"
@@ -1,18 +1,17 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: pyobjc-framework-PHASE
3
- Version: 11.0
3
+ Version: 12.0
4
4
  Summary: Wrappers for the framework PHASE on macOS
5
5
  Home-page: https://github.com/ronaldoussoren/pyobjc
6
6
  Author: Ronald Oussoren
7
7
  Author-email: pyobjc-dev@lists.sourceforge.net
8
- License: MIT License
8
+ License: MIT
9
9
  Keywords: PyObjC,PHASE
10
10
  Platform: MacOS X (>=12.0)
11
11
  Classifier: Development Status :: 5 - Production/Stable
12
12
  Classifier: Environment :: Console
13
13
  Classifier: Environment :: MacOS X :: Cocoa
14
14
  Classifier: Intended Audience :: Developers
15
- Classifier: License :: OSI Approved :: MIT License
16
15
  Classifier: Natural Language :: English
17
16
  Classifier: Operating System :: MacOS :: MacOS X
18
17
  Classifier: Programming Language :: Python
@@ -24,14 +23,28 @@ Classifier: Programming Language :: Python :: 3.11
24
23
  Classifier: Programming Language :: Python :: 3.12
25
24
  Classifier: Programming Language :: Python :: 3.13
26
25
  Classifier: Programming Language :: Python :: 3.14
26
+ Classifier: Programming Language :: Python :: 3.15
27
27
  Classifier: Programming Language :: Python :: Implementation :: CPython
28
+ Classifier: Programming Language :: Python :: Free Threading :: 2 - Beta
28
29
  Classifier: Programming Language :: Objective C
29
30
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
31
  Classifier: Topic :: Software Development :: User Interfaces
31
32
  Requires-Python: >=3.9
32
33
  Description-Content-Type: text/x-rst; charset=UTF-8
33
- Requires-Dist: pyobjc-core>=11.0
34
- Requires-Dist: pyobjc-framework-AVFoundation>=11.0
34
+ Requires-Dist: pyobjc-core>=12.0
35
+ Requires-Dist: pyobjc-framework-AVFoundation>=12.0
36
+ Dynamic: author
37
+ Dynamic: author-email
38
+ Dynamic: classifier
39
+ Dynamic: description
40
+ Dynamic: description-content-type
41
+ Dynamic: home-page
42
+ Dynamic: keywords
43
+ Dynamic: license
44
+ Dynamic: platform
45
+ Dynamic: requires-dist
46
+ Dynamic: requires-python
47
+ Dynamic: summary
35
48
  Project-URL: Documentation, https://pyobjc.readthedocs.io/en/latest/
36
49
  Project-URL: Issue tracker, https://github.com/ronaldoussoren/pyobjc/issues
37
50
  Project-URL: Repository, https://github.com/ronaldoussoren/pyobjc
@@ -30,9 +30,5 @@ PyObjCTest/test_phasespatialpipeline.py
30
30
  PyObjCTest/test_phasetypes.py
31
31
  metadata/PHASE.fwinfo
32
32
  metadata/metadata.ini
33
- metadata/raw/arm64-13.1.fwinfo
34
- metadata/raw/arm64-14.5.fwinfo
35
- metadata/raw/arm64-15.0.fwinfo
36
- metadata/raw/x86_64-13.1.fwinfo
37
- metadata/raw/x86_64-14.5.fwinfo
38
- metadata/raw/x86_64-15.0.fwinfo
33
+ metadata/raw/arm64-26.0.fwinfo
34
+ metadata/raw/x86_64-26.0.fwinfo
@@ -0,0 +1,3 @@
1
+ macOS 26.0.1 (25A362)
2
+ Apple clang version 17.0.0 (clang-1700.3.19.1)
3
+ SDK: macOS 26.0
@@ -0,0 +1,2 @@
1
+ pyobjc-core>=12.0
2
+ pyobjc-framework-AVFoundation>=12.0
@@ -1,7 +1,7 @@
1
1
  (This is the MIT license, note that libffi-src is a separate product with its own license)
2
2
 
3
3
  Copyright 2002, 2003 - Bill Bumgarner, Ronald Oussoren, Steve Majewski, Lele Gaifax, et.al.
4
- Copyright 2003-2024 - Ronald Oussoren
4
+ Copyright 2003-2025 - Ronald Oussoren
5
5
 
6
6
  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
7
7
 
@@ -1,18 +1,17 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: pyobjc-framework-PHASE
3
- Version: 11.0
3
+ Version: 12.0
4
4
  Summary: Wrappers for the framework PHASE on macOS
5
5
  Home-page: https://github.com/ronaldoussoren/pyobjc
6
6
  Author: Ronald Oussoren
7
7
  Author-email: pyobjc-dev@lists.sourceforge.net
8
- License: MIT License
8
+ License: MIT
9
9
  Keywords: PyObjC,PHASE
10
10
  Platform: MacOS X (>=12.0)
11
11
  Classifier: Development Status :: 5 - Production/Stable
12
12
  Classifier: Environment :: Console
13
13
  Classifier: Environment :: MacOS X :: Cocoa
14
14
  Classifier: Intended Audience :: Developers
15
- Classifier: License :: OSI Approved :: MIT License
16
15
  Classifier: Natural Language :: English
17
16
  Classifier: Operating System :: MacOS :: MacOS X
18
17
  Classifier: Programming Language :: Python
@@ -24,14 +23,28 @@ Classifier: Programming Language :: Python :: 3.11
24
23
  Classifier: Programming Language :: Python :: 3.12
25
24
  Classifier: Programming Language :: Python :: 3.13
26
25
  Classifier: Programming Language :: Python :: 3.14
26
+ Classifier: Programming Language :: Python :: 3.15
27
27
  Classifier: Programming Language :: Python :: Implementation :: CPython
28
+ Classifier: Programming Language :: Python :: Free Threading :: 2 - Beta
28
29
  Classifier: Programming Language :: Objective C
29
30
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
31
  Classifier: Topic :: Software Development :: User Interfaces
31
32
  Requires-Python: >=3.9
32
33
  Description-Content-Type: text/x-rst; charset=UTF-8
33
- Requires-Dist: pyobjc-core>=11.0
34
- Requires-Dist: pyobjc-framework-AVFoundation>=11.0
34
+ Requires-Dist: pyobjc-core>=12.0
35
+ Requires-Dist: pyobjc-framework-AVFoundation>=12.0
36
+ Dynamic: author
37
+ Dynamic: author-email
38
+ Dynamic: classifier
39
+ Dynamic: description
40
+ Dynamic: description-content-type
41
+ Dynamic: home-page
42
+ Dynamic: keywords
43
+ Dynamic: license
44
+ Dynamic: platform
45
+ Dynamic: requires-dist
46
+ Dynamic: requires-python
47
+ Dynamic: summary
35
48
 
36
49
 
37
50
  Wrappers for the "PHASE" framework on macOS.
@@ -0,0 +1 @@
1
+ """test suite"""
@@ -1,4 +1,4 @@
1
- from PyObjCTools.TestSupport import TestCase
1
+ from PyObjCTools.TestSupport import TestCase, min_os_level
2
2
  import objc
3
3
 
4
4
  import PHASE
@@ -23,3 +23,14 @@ class TestPHASESoundEvent(TestCase):
23
23
  PHASE.PHASESoundEvent.seekToTime_completion_, 1, b"v" + objc._C_NSInteger
24
24
  )
25
25
  self.assertResultIsBOOL(PHASE.PHASESoundEvent.isIndefinite)
26
+
27
+ @min_os_level("26.0")
28
+ def test_methods26_0(self):
29
+ self.assertArgIsBlock(
30
+ PHASE.PHASESoundEvent.startAtTime_completion_, 1, b"v" + objc._C_NSInteger
31
+ )
32
+ self.assertArgIsBlock(
33
+ PHASE.PHASESoundEvent.seekToTime_resumeAtEngineTime_completion_,
34
+ 2,
35
+ b"v" + objc._C_NSInteger,
36
+ )
@@ -123,3 +123,8 @@ class TesPHASETypes(TestCase):
123
123
 
124
124
  self.assertIsEnumType(PHASE.PHASEAutomaticHeadTrackingFlags)
125
125
  self.assertEqual(PHASE.PHASEAutomaticHeadTrackingFlagOrientation, 1 << 0)
126
+ self.assertEqual(PHASE.PHASEAutomaticHeadTrackingFlagPosition, 1 << 1)
127
+
128
+ self.assertIsEnumType(PHASE.PHASERenderingMode)
129
+ self.assertEqual(PHASE.PHASERenderingModeLocal, 0)
130
+ self.assertEqual(PHASE.PHASERenderingModeClient, 1)
@@ -1,7 +1,7 @@
1
1
  // GENERATED FILE DO NOT EDIT
2
2
  //
3
3
  // This file was generated by objective.metadata
4
- // Last update: Tue Jun 11 10:16:45 2024
4
+ // Last update: Fri Aug 1 15:57:09 2025
5
5
  {
6
6
  "arch": "arm64",
7
7
  "definitions": {
@@ -1633,6 +1633,25 @@
1633
1633
  "selector": "initWithUpdateMode:",
1634
1634
  "visibility": "public"
1635
1635
  },
1636
+ {
1637
+ "args": [
1638
+ {
1639
+ "typestr": "q",
1640
+ "typestr_special": false
1641
+ },
1642
+ {
1643
+ "typestr": "q",
1644
+ "typestr_special": false
1645
+ }
1646
+ ],
1647
+ "class_method": false,
1648
+ "retval": {
1649
+ "typestr": "@",
1650
+ "typestr_special": false
1651
+ },
1652
+ "selector": "initWithUpdateMode:renderingMode:",
1653
+ "visibility": "public"
1654
+ },
1636
1655
  {
1637
1656
  "args": [
1638
1657
  {
@@ -1873,6 +1892,16 @@
1873
1892
  },
1874
1893
  "selector": "activeGroupPreset",
1875
1894
  "visibility": "public"
1895
+ },
1896
+ {
1897
+ "args": [],
1898
+ "class_method": false,
1899
+ "retval": {
1900
+ "typestr": "@",
1901
+ "typestr_special": false
1902
+ },
1903
+ "selector": "lastRenderTime",
1904
+ "visibility": "public"
1876
1905
  }
1877
1906
  ],
1878
1907
  "name": "PHASEEngine",
@@ -1990,6 +2019,15 @@
1990
2019
  "name": "activeGroupPreset",
1991
2020
  "typestr": "@",
1992
2021
  "typestr_special": false
2022
+ },
2023
+ {
2024
+ "attributes": [
2025
+ "nonatomic",
2026
+ "readonly"
2027
+ ],
2028
+ "name": "lastRenderTime",
2029
+ "typestr": "@",
2030
+ "typestr_special": false
1993
2031
  }
1994
2032
  ],
1995
2033
  "protocols": [],
@@ -5890,6 +5928,38 @@
5890
5928
  "selector": "startWithCompletion:",
5891
5929
  "visibility": "public"
5892
5930
  },
5931
+ {
5932
+ "args": [
5933
+ {
5934
+ "typestr": "@",
5935
+ "typestr_special": false
5936
+ },
5937
+ {
5938
+ "callable": {
5939
+ "arguments": {
5940
+ "0": {
5941
+ "type": "^v"
5942
+ },
5943
+ "1": {
5944
+ "type": "q"
5945
+ }
5946
+ },
5947
+ "retval": {
5948
+ "type": "v"
5949
+ }
5950
+ },
5951
+ "typestr": "@?",
5952
+ "typestr_special": false
5953
+ }
5954
+ ],
5955
+ "class_method": false,
5956
+ "retval": {
5957
+ "typestr": "v",
5958
+ "typestr_special": false
5959
+ },
5960
+ "selector": "startAtTime:completion:",
5961
+ "visibility": "public"
5962
+ },
5893
5963
  {
5894
5964
  "args": [
5895
5965
  {
@@ -5922,6 +5992,42 @@
5922
5992
  "selector": "seekToTime:completion:",
5923
5993
  "visibility": "public"
5924
5994
  },
5995
+ {
5996
+ "args": [
5997
+ {
5998
+ "typestr": "d",
5999
+ "typestr_special": false
6000
+ },
6001
+ {
6002
+ "typestr": "@",
6003
+ "typestr_special": false
6004
+ },
6005
+ {
6006
+ "callable": {
6007
+ "arguments": {
6008
+ "0": {
6009
+ "type": "^v"
6010
+ },
6011
+ "1": {
6012
+ "type": "q"
6013
+ }
6014
+ },
6015
+ "retval": {
6016
+ "type": "v"
6017
+ }
6018
+ },
6019
+ "typestr": "@?",
6020
+ "typestr_special": false
6021
+ }
6022
+ ],
6023
+ "class_method": false,
6024
+ "retval": {
6025
+ "typestr": "v",
6026
+ "typestr_special": false
6027
+ },
6028
+ "selector": "seekToTime:resumeAtEngineTime:completion:",
6029
+ "visibility": "public"
6030
+ },
5925
6031
  {
5926
6032
  "args": [],
5927
6033
  "class_method": false,
@@ -5942,6 +6048,21 @@
5942
6048
  "selector": "resume",
5943
6049
  "visibility": "public"
5944
6050
  },
6051
+ {
6052
+ "args": [
6053
+ {
6054
+ "typestr": "@",
6055
+ "typestr_special": false
6056
+ }
6057
+ ],
6058
+ "class_method": false,
6059
+ "retval": {
6060
+ "typestr": "v",
6061
+ "typestr_special": false
6062
+ },
6063
+ "selector": "resumeAtTime:",
6064
+ "visibility": "public"
6065
+ },
5945
6066
  {
5946
6067
  "args": [],
5947
6068
  "class_method": false,
@@ -6951,6 +7072,7 @@
6951
7072
  "PHASEAssetTypeResident": 0,
6952
7073
  "PHASEAssetTypeStreamed": 1,
6953
7074
  "PHASEAutomaticHeadTrackingFlagOrientation": 1,
7075
+ "PHASEAutomaticHeadTrackingFlagPosition": 2,
6954
7076
  "PHASECalibrationModeAbsoluteSpl": 2,
6955
7077
  "PHASECalibrationModeNone": 0,
6956
7078
  "PHASECalibrationModeRelativeSpl": 1,
@@ -6988,6 +7110,8 @@
6988
7110
  "PHASEPushStreamBufferInterruptsAtLoop": 8,
6989
7111
  "PHASEPushStreamBufferLoops": 2,
6990
7112
  "PHASEPushStreamCompletionDataRendered": 0,
7113
+ "PHASERenderingModeClient": 1,
7114
+ "PHASERenderingModeLocal": 0,
6991
7115
  "PHASERenderingStatePaused": 2,
6992
7116
  "PHASERenderingStateStarted": 1,
6993
7117
  "PHASERenderingStateStopped": 0,
@@ -7071,6 +7195,9 @@
7071
7195
  "PHASEPushStreamCompletionCallbackCondition": {
7072
7196
  "type": "q"
7073
7197
  },
7198
+ "PHASERenderingMode": {
7199
+ "type": "q"
7200
+ },
7074
7201
  "PHASERenderingState": {
7075
7202
  "type": "q"
7076
7203
  },
@@ -7144,6 +7271,7 @@
7144
7271
  "PHASEPullStreamRenderBlock": "OSStatus (^)(BOOL * _Nonnull, const AudioTimeStamp * _Nonnull, AVAudioFrameCount, AudioBufferList * _Nonnull)",
7145
7272
  "PHASEPushStreamBufferOptions": "enum PHASEPushStreamBufferOptions",
7146
7273
  "PHASEPushStreamCompletionCallbackCondition": "enum PHASEPushStreamCompletionCallbackCondition",
7274
+ "PHASERenderingMode": "enum PHASERenderingMode",
7147
7275
  "PHASERenderingState": "enum PHASERenderingState",
7148
7276
  "PHASEReverbPreset": "enum PHASEReverbPreset",
7149
7277
  "PHASESoundEventError": "enum PHASESoundEventError",
@@ -7183,5 +7311,5 @@
7183
7311
  "PHASETypes.h"
7184
7312
  ],
7185
7313
  "release": "10.16",
7186
- "sdk": "/Users/ronald/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.0.sdk"
7314
+ "sdk": "/Users/ronald/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk"
7187
7315
  }
@@ -1,7 +1,7 @@
1
1
  // GENERATED FILE DO NOT EDIT
2
2
  //
3
3
  // This file was generated by objective.metadata
4
- // Last update: Tue Jun 11 10:16:41 2024
4
+ // Last update: Fri Aug 1 15:57:05 2025
5
5
  {
6
6
  "arch": "x86_64",
7
7
  "definitions": {
@@ -1633,6 +1633,25 @@
1633
1633
  "selector": "initWithUpdateMode:",
1634
1634
  "visibility": "public"
1635
1635
  },
1636
+ {
1637
+ "args": [
1638
+ {
1639
+ "typestr": "q",
1640
+ "typestr_special": false
1641
+ },
1642
+ {
1643
+ "typestr": "q",
1644
+ "typestr_special": false
1645
+ }
1646
+ ],
1647
+ "class_method": false,
1648
+ "retval": {
1649
+ "typestr": "@",
1650
+ "typestr_special": false
1651
+ },
1652
+ "selector": "initWithUpdateMode:renderingMode:",
1653
+ "visibility": "public"
1654
+ },
1636
1655
  {
1637
1656
  "args": [
1638
1657
  {
@@ -1873,6 +1892,16 @@
1873
1892
  },
1874
1893
  "selector": "activeGroupPreset",
1875
1894
  "visibility": "public"
1895
+ },
1896
+ {
1897
+ "args": [],
1898
+ "class_method": false,
1899
+ "retval": {
1900
+ "typestr": "@",
1901
+ "typestr_special": false
1902
+ },
1903
+ "selector": "lastRenderTime",
1904
+ "visibility": "public"
1876
1905
  }
1877
1906
  ],
1878
1907
  "name": "PHASEEngine",
@@ -1990,6 +2019,15 @@
1990
2019
  "name": "activeGroupPreset",
1991
2020
  "typestr": "@",
1992
2021
  "typestr_special": false
2022
+ },
2023
+ {
2024
+ "attributes": [
2025
+ "nonatomic",
2026
+ "readonly"
2027
+ ],
2028
+ "name": "lastRenderTime",
2029
+ "typestr": "@",
2030
+ "typestr_special": false
1993
2031
  }
1994
2032
  ],
1995
2033
  "protocols": [],
@@ -5890,6 +5928,38 @@
5890
5928
  "selector": "startWithCompletion:",
5891
5929
  "visibility": "public"
5892
5930
  },
5931
+ {
5932
+ "args": [
5933
+ {
5934
+ "typestr": "@",
5935
+ "typestr_special": false
5936
+ },
5937
+ {
5938
+ "callable": {
5939
+ "arguments": {
5940
+ "0": {
5941
+ "type": "^v"
5942
+ },
5943
+ "1": {
5944
+ "type": "q"
5945
+ }
5946
+ },
5947
+ "retval": {
5948
+ "type": "v"
5949
+ }
5950
+ },
5951
+ "typestr": "@?",
5952
+ "typestr_special": false
5953
+ }
5954
+ ],
5955
+ "class_method": false,
5956
+ "retval": {
5957
+ "typestr": "v",
5958
+ "typestr_special": false
5959
+ },
5960
+ "selector": "startAtTime:completion:",
5961
+ "visibility": "public"
5962
+ },
5893
5963
  {
5894
5964
  "args": [
5895
5965
  {
@@ -5922,6 +5992,42 @@
5922
5992
  "selector": "seekToTime:completion:",
5923
5993
  "visibility": "public"
5924
5994
  },
5995
+ {
5996
+ "args": [
5997
+ {
5998
+ "typestr": "d",
5999
+ "typestr_special": false
6000
+ },
6001
+ {
6002
+ "typestr": "@",
6003
+ "typestr_special": false
6004
+ },
6005
+ {
6006
+ "callable": {
6007
+ "arguments": {
6008
+ "0": {
6009
+ "type": "^v"
6010
+ },
6011
+ "1": {
6012
+ "type": "q"
6013
+ }
6014
+ },
6015
+ "retval": {
6016
+ "type": "v"
6017
+ }
6018
+ },
6019
+ "typestr": "@?",
6020
+ "typestr_special": false
6021
+ }
6022
+ ],
6023
+ "class_method": false,
6024
+ "retval": {
6025
+ "typestr": "v",
6026
+ "typestr_special": false
6027
+ },
6028
+ "selector": "seekToTime:resumeAtEngineTime:completion:",
6029
+ "visibility": "public"
6030
+ },
5925
6031
  {
5926
6032
  "args": [],
5927
6033
  "class_method": false,
@@ -5942,6 +6048,21 @@
5942
6048
  "selector": "resume",
5943
6049
  "visibility": "public"
5944
6050
  },
6051
+ {
6052
+ "args": [
6053
+ {
6054
+ "typestr": "@",
6055
+ "typestr_special": false
6056
+ }
6057
+ ],
6058
+ "class_method": false,
6059
+ "retval": {
6060
+ "typestr": "v",
6061
+ "typestr_special": false
6062
+ },
6063
+ "selector": "resumeAtTime:",
6064
+ "visibility": "public"
6065
+ },
5945
6066
  {
5946
6067
  "args": [],
5947
6068
  "class_method": false,
@@ -6951,6 +7072,7 @@
6951
7072
  "PHASEAssetTypeResident": 0,
6952
7073
  "PHASEAssetTypeStreamed": 1,
6953
7074
  "PHASEAutomaticHeadTrackingFlagOrientation": 1,
7075
+ "PHASEAutomaticHeadTrackingFlagPosition": 2,
6954
7076
  "PHASECalibrationModeAbsoluteSpl": 2,
6955
7077
  "PHASECalibrationModeNone": 0,
6956
7078
  "PHASECalibrationModeRelativeSpl": 1,
@@ -6988,6 +7110,8 @@
6988
7110
  "PHASEPushStreamBufferInterruptsAtLoop": 8,
6989
7111
  "PHASEPushStreamBufferLoops": 2,
6990
7112
  "PHASEPushStreamCompletionDataRendered": 0,
7113
+ "PHASERenderingModeClient": 1,
7114
+ "PHASERenderingModeLocal": 0,
6991
7115
  "PHASERenderingStatePaused": 2,
6992
7116
  "PHASERenderingStateStarted": 1,
6993
7117
  "PHASERenderingStateStopped": 0,
@@ -7071,6 +7195,9 @@
7071
7195
  "PHASEPushStreamCompletionCallbackCondition": {
7072
7196
  "type": "q"
7073
7197
  },
7198
+ "PHASERenderingMode": {
7199
+ "type": "q"
7200
+ },
7074
7201
  "PHASERenderingState": {
7075
7202
  "type": "q"
7076
7203
  },
@@ -7144,6 +7271,7 @@
7144
7271
  "PHASEPullStreamRenderBlock": "OSStatus (^)(BOOL * _Nonnull, const AudioTimeStamp * _Nonnull, AVAudioFrameCount, AudioBufferList * _Nonnull)",
7145
7272
  "PHASEPushStreamBufferOptions": "enum PHASEPushStreamBufferOptions",
7146
7273
  "PHASEPushStreamCompletionCallbackCondition": "enum PHASEPushStreamCompletionCallbackCondition",
7274
+ "PHASERenderingMode": "enum PHASERenderingMode",
7147
7275
  "PHASERenderingState": "enum PHASERenderingState",
7148
7276
  "PHASEReverbPreset": "enum PHASEReverbPreset",
7149
7277
  "PHASESoundEventError": "enum PHASESoundEventError",
@@ -7183,5 +7311,5 @@
7183
7311
  "PHASETypes.h"
7184
7312
  ],
7185
7313
  "release": "10.16",
7186
- "sdk": "/Users/ronald/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.0.sdk"
7314
+ "sdk": "/Users/ronald/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk"
7187
7315
  }