From 81e0360d1aefb418f1051dfb2944dc09cf1bbcec Mon Sep 17 00:00:00 2001 From: "Alex.F" Date: Tue, 2 Jun 2026 07:58:34 +0800 Subject: [PATCH 1/2] Add macOS support and iOS SPM package --- opus_flutter/example/.metadata | 5 +- .../ios/Flutter/AppFrameworkInfo.plist | 2 - .../ios/Runner.xcodeproj/project.pbxproj | 30 +- .../xcshareddata/xcschemes/Runner.xcscheme | 23 +- opus_flutter/example/lib/main.dart | 2 +- opus_flutter/example/macos/.gitignore | 7 + .../macos/Flutter/Flutter-Debug.xcconfig | 1 + .../macos/Flutter/Flutter-Release.xcconfig | 1 + .../Flutter/GeneratedPluginRegistrant.swift | 14 + .../macos/Runner.xcodeproj/project.pbxproj | 729 +++++++++++++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 117 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../example/macos/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 68 ++ .../AppIcon.appiconset/app_icon_1024.png | Bin 0 -> 102994 bytes .../AppIcon.appiconset/app_icon_128.png | Bin 0 -> 5680 bytes .../AppIcon.appiconset/app_icon_16.png | Bin 0 -> 520 bytes .../AppIcon.appiconset/app_icon_256.png | Bin 0 -> 14142 bytes .../AppIcon.appiconset/app_icon_32.png | Bin 0 -> 1066 bytes .../AppIcon.appiconset/app_icon_512.png | Bin 0 -> 36406 bytes .../AppIcon.appiconset/app_icon_64.png | Bin 0 -> 2218 bytes .../macos/Runner/Base.lproj/MainMenu.xib | 343 ++++++ .../macos/Runner/Configs/AppInfo.xcconfig | 14 + .../macos/Runner/Configs/Debug.xcconfig | 2 + .../macos/Runner/Configs/Release.xcconfig | 2 + .../macos/Runner/Configs/Warnings.xcconfig | 13 + .../macos/Runner/DebugProfile.entitlements | 12 + opus_flutter/example/macos/Runner/Info.plist | 32 + .../macos/Runner/MainFlutterWindow.swift | 15 + .../example/macos/Runner/Release.entitlements | 8 + .../macos/RunnerTests/RunnerTests.swift | 12 + opus_flutter/example/pubspec.lock | 327 ++++-- opus_flutter/example/pubspec.yaml | 4 +- .../windows/flutter/generated_plugins.cmake | 1 + opus_flutter/lib/src/opus_flutter_ffi.dart | 7 +- opus_flutter/pubspec.yaml | 7 +- opus_flutter_ios/ios/opus_flutter_ios.podspec | 2 +- .../ios/opus_flutter_ios/Package.swift | 28 + .../OpusFlutterIosPlugin.swift | 7 + .../opus.xcframework/Info.plist | 0 .../ios-arm64/opus.framework/Headers/opus.h | 0 .../opus.framework/Headers/opus_defines.h | 0 .../opus.framework/Headers/opus_multistream.h | 0 .../opus.framework/Headers/opus_types.h | 0 .../ios-arm64/opus.framework/Info.plist | Bin .../opus.framework/Modules/module.modulemap | 0 .../ios-arm64/opus.framework/opus | Bin .../opus.framework/Headers/opus.h | 0 .../opus.framework/Headers/opus_defines.h | 0 .../opus.framework/Headers/opus_multistream.h | 0 .../opus.framework/Headers/opus_types.h | 0 .../opus.framework/Info.plist | Bin .../opus.framework/Modules/module.modulemap | 0 .../ios-x86_64-simulator/opus.framework/opus | Bin opus_flutter_ios/pubspec.yaml | 2 +- opus_flutter_macos/CHANGELOG.md | 3 + opus_flutter_macos/LICENSE | 10 + opus_flutter_macos/README.md | 38 + .../lib/opus_flutter_macos.dart | 29 + .../macos/opus_flutter_macos.podspec | 22 + .../macos/opus_flutter_macos/Package.swift | 28 + .../OpusFlutterMacosPlugin.swift | 7 + .../opus.xcframework/Info.plist | 28 + .../macos-arm64_x86_64/opus.framework/Headers | 1 + .../macos-arm64_x86_64/opus.framework/Modules | 1 + .../opus.framework/Resources | 1 + .../opus.framework/Versions/A/Headers/opus.h | 981 ++++++++++++++++++ .../Versions/A/Headers/opus_custom.h | 342 ++++++ .../Versions/A/Headers/opus_defines.h | 799 ++++++++++++++ .../Versions/A/Headers/opus_multistream.h | 660 ++++++++++++ .../Versions/A/Headers/opus_projection.h | 568 ++++++++++ .../Versions/A/Headers/opus_types.h | 166 +++ .../Versions/A/Modules/module.modulemap | 6 + .../Versions/A/Resources/Info.plist | 28 + .../opus.framework/Versions/A/opus | Bin 0 -> 868312 bytes .../opus.framework/Versions/Current | 1 + .../macos-arm64_x86_64/opus.framework/opus | 1 + opus_flutter_macos/pubspec.lock | 205 ++++ opus_flutter_macos/pubspec.yaml | 25 + opus_flutter_platform_interface/pubspec.yaml | 4 +- opus_flutter_web/pubspec.yaml | 2 +- opus_flutter_windows/pubspec.yaml | 3 +- 84 files changed, 5716 insertions(+), 116 deletions(-) create mode 100644 opus_flutter/example/macos/.gitignore create mode 100644 opus_flutter/example/macos/Flutter/Flutter-Debug.xcconfig create mode 100644 opus_flutter/example/macos/Flutter/Flutter-Release.xcconfig create mode 100644 opus_flutter/example/macos/Flutter/GeneratedPluginRegistrant.swift create mode 100644 opus_flutter/example/macos/Runner.xcodeproj/project.pbxproj create mode 100644 opus_flutter/example/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 opus_flutter/example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 opus_flutter/example/macos/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 opus_flutter/example/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 opus_flutter/example/macos/Runner/AppDelegate.swift create mode 100644 opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png create mode 100644 opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png create mode 100644 opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png create mode 100644 opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png create mode 100644 opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png create mode 100644 opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png create mode 100644 opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png create mode 100644 opus_flutter/example/macos/Runner/Base.lproj/MainMenu.xib create mode 100644 opus_flutter/example/macos/Runner/Configs/AppInfo.xcconfig create mode 100644 opus_flutter/example/macos/Runner/Configs/Debug.xcconfig create mode 100644 opus_flutter/example/macos/Runner/Configs/Release.xcconfig create mode 100644 opus_flutter/example/macos/Runner/Configs/Warnings.xcconfig create mode 100644 opus_flutter/example/macos/Runner/DebugProfile.entitlements create mode 100644 opus_flutter/example/macos/Runner/Info.plist create mode 100644 opus_flutter/example/macos/Runner/MainFlutterWindow.swift create mode 100644 opus_flutter/example/macos/Runner/Release.entitlements create mode 100644 opus_flutter/example/macos/RunnerTests/RunnerTests.swift create mode 100644 opus_flutter_ios/ios/opus_flutter_ios/Package.swift create mode 100644 opus_flutter_ios/ios/opus_flutter_ios/Sources/opus_flutter_ios/OpusFlutterIosPlugin.swift rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/Info.plist (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-arm64/opus.framework/Headers/opus.h (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-arm64/opus.framework/Headers/opus_multistream.h (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-arm64/opus.framework/Info.plist (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-arm64/opus.framework/opus (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus.h (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_multistream.h (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-x86_64-simulator/opus.framework/Info.plist (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap (100%) rename opus_flutter_ios/ios/{ => opus_flutter_ios}/opus.xcframework/ios-x86_64-simulator/opus.framework/opus (100%) create mode 100644 opus_flutter_macos/CHANGELOG.md create mode 100644 opus_flutter_macos/LICENSE create mode 100644 opus_flutter_macos/README.md create mode 100644 opus_flutter_macos/lib/opus_flutter_macos.dart create mode 100644 opus_flutter_macos/macos/opus_flutter_macos.podspec create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/Package.swift create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/Sources/opus_flutter_macos/OpusFlutterMacosPlugin.swift create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/Info.plist create mode 120000 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Headers create mode 120000 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Modules create mode 120000 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Resources create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus.h create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_custom.h create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_defines.h create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_multistream.h create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_projection.h create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_types.h create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Modules/module.modulemap create mode 100644 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Resources/Info.plist create mode 100755 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/opus create mode 120000 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/Current create mode 120000 opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/opus create mode 100644 opus_flutter_macos/pubspec.lock create mode 100644 opus_flutter_macos/pubspec.yaml diff --git a/opus_flutter/example/.metadata b/opus_flutter/example/.metadata index 46ce868..c42508f 100644 --- a/opus_flutter/example/.metadata +++ b/opus_flutter/example/.metadata @@ -4,7 +4,7 @@ # This file should be version controlled and should not be manually edited. version: - revision: "2f708eb8396e362e280fac22cf171c2cb467343c" + revision: "559ffa3f75e7402d65a8def9c28389a9b2e6fe42" channel: "stable" project_type: app @@ -27,6 +27,9 @@ migration: - platform: windows create_revision: 2f708eb8396e362e280fac22cf171c2cb467343c base_revision: 2f708eb8396e362e280fac22cf171c2cb467343c + - platform: macos + create_revision: 559ffa3f75e7402d65a8def9c28389a9b2e6fe42 + base_revision: 559ffa3f75e7402d65a8def9c28389a9b2e6fe42 # User provided section diff --git a/opus_flutter/example/ios/Flutter/AppFrameworkInfo.plist b/opus_flutter/example/ios/Flutter/AppFrameworkInfo.plist index 0d9747f..256cf28 100644 --- a/opus_flutter/example/ios/Flutter/AppFrameworkInfo.plist +++ b/opus_flutter/example/ios/Flutter/AppFrameworkInfo.plist @@ -20,7 +20,5 @@ ???? CFBundleVersion 1.0 - MinimumOSVersion - 11.0 diff --git a/opus_flutter/example/ios/Runner.xcodeproj/project.pbxproj b/opus_flutter/example/ios/Runner.xcodeproj/project.pbxproj index 13d15f6..dbf0074 100644 --- a/opus_flutter/example/ios/Runner.xcodeproj/project.pbxproj +++ b/opus_flutter/example/ios/Runner.xcodeproj/project.pbxproj @@ -14,6 +14,7 @@ 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -55,6 +56,7 @@ 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = FlutterGeneratedPluginSwiftPackage; path = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -62,6 +64,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -71,6 +74,7 @@ 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( + 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */, 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, 9740EEB21CF90195004384FC /* Debug.xcconfig */, 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, @@ -143,6 +147,9 @@ productType = "com.apple.product-type.bundle.unit-test"; }; 97C146ED1CF9000F007C117D /* Runner */ = { + packageProductDependencies = ( + 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */, + ); isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( @@ -166,10 +173,13 @@ /* Begin PBXProject section */ 97C146E61CF9000F007C117D /* Project object */ = { + packageReferences = ( + 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage" */, + ); isa = PBXProject; attributes = { BuildIndependentTargetsInParallel = YES; - LastUpgradeCheck = 1430; + LastUpgradeCheck = 1510; ORGANIZATIONNAME = ""; TargetAttributes = { 331C8080294A63A400263BE5 = { @@ -345,7 +355,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -472,7 +482,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -521,7 +531,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -609,6 +619,18 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ +/* Begin XCLocalSwiftPackageReference section */ + 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage" */ = { + isa = XCLocalSwiftPackageReference; + relativePath = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; + }; +/* End XCLocalSwiftPackageReference section */ +/* Begin XCSwiftPackageProductDependency section */ + 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */ = { + isa = XCSwiftPackageProductDependency; + productName = FlutterGeneratedPluginSwiftPackage; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = 97C146E61CF9000F007C117D /* Project object */; } diff --git a/opus_flutter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/opus_flutter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 952169b..ee31721 100644 --- a/opus_flutter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/opus_flutter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,10 +1,28 @@ + + + + + + + + + + diff --git a/opus_flutter/example/lib/main.dart b/opus_flutter/example/lib/main.dart index 6faa5e3..ff51ded 100644 --- a/opus_flutter/example/lib/main.dart +++ b/opus_flutter/example/lib/main.dart @@ -173,5 +173,5 @@ void _share(Uint8List data) async { name: 'output.wav', length: data.length, ); - await Share.shareXFiles([file]); + await SharePlus.instance.share(ShareParams(files: [file])); } diff --git a/opus_flutter/example/macos/.gitignore b/opus_flutter/example/macos/.gitignore new file mode 100644 index 0000000..746adbb --- /dev/null +++ b/opus_flutter/example/macos/.gitignore @@ -0,0 +1,7 @@ +# Flutter-related +**/Flutter/ephemeral/ +**/Pods/ + +# Xcode-related +**/dgph +**/xcuserdata/ diff --git a/opus_flutter/example/macos/Flutter/Flutter-Debug.xcconfig b/opus_flutter/example/macos/Flutter/Flutter-Debug.xcconfig new file mode 100644 index 0000000..c2efd0b --- /dev/null +++ b/opus_flutter/example/macos/Flutter/Flutter-Debug.xcconfig @@ -0,0 +1 @@ +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/opus_flutter/example/macos/Flutter/Flutter-Release.xcconfig b/opus_flutter/example/macos/Flutter/Flutter-Release.xcconfig new file mode 100644 index 0000000..c2efd0b --- /dev/null +++ b/opus_flutter/example/macos/Flutter/Flutter-Release.xcconfig @@ -0,0 +1 @@ +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/opus_flutter/example/macos/Flutter/GeneratedPluginRegistrant.swift b/opus_flutter/example/macos/Flutter/GeneratedPluginRegistrant.swift new file mode 100644 index 0000000..c6290e2 --- /dev/null +++ b/opus_flutter/example/macos/Flutter/GeneratedPluginRegistrant.swift @@ -0,0 +1,14 @@ +// +// Generated file. Do not edit. +// + +import FlutterMacOS +import Foundation + +import opus_flutter_macos +import share_plus + +func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + OpusFlutterMacosPlugin.register(with: registry.registrar(forPlugin: "OpusFlutterMacosPlugin")) + SharePlusMacosPlugin.register(with: registry.registrar(forPlugin: "SharePlusMacosPlugin")) +} diff --git a/opus_flutter/example/macos/Runner.xcodeproj/project.pbxproj b/opus_flutter/example/macos/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..0653ea9 --- /dev/null +++ b/opus_flutter/example/macos/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,729 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXAggregateTarget section */ + 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; + buildPhases = ( + 33CC111E2044C6BF0003C045 /* ShellScript */, + ); + dependencies = ( + ); + name = "Flutter Assemble"; + productName = FLX; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C80D7294CF71000263BE5 /* RunnerTests.swift */; }; + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; + 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C80D9294CF71000263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC10EC2044A3C60003C045; + remoteInfo = Runner; + }; + 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC111A2044C6BA0003C045; + remoteInfo = FLX; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 33CC110E2044A8840003C045 /* Bundle Framework */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Bundle Framework"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 331C80D5294CF71000263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; + 33CC10ED2044A3C60003C045 /* opus_flutter_example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "opus_flutter_example.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; + 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; + 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = ""; }; + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = ""; }; + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = ""; }; + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = ""; }; + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = ""; }; + 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = ""; }; + 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = ""; }; + 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = ""; }; + 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = FlutterGeneratedPluginSwiftPackage; path = ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 331C80D2294CF70F00263BE5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10EA2044A3C60003C045 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C80D6294CF71000263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C80D7294CF71000263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 33BA886A226E78AF003329D5 /* Configs */ = { + isa = PBXGroup; + children = ( + 33E5194F232828860026EE4D /* AppInfo.xcconfig */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, + ); + path = Configs; + sourceTree = ""; + }; + 33CC10E42044A3C60003C045 = { + isa = PBXGroup; + children = ( + 33FAB671232836740065AC1E /* Runner */, + 33CEB47122A05771004F2AC0 /* Flutter */, + 331C80D6294CF71000263BE5 /* RunnerTests */, + 33CC10EE2044A3C60003C045 /* Products */, + D73912EC22F37F3D000D13A0 /* Frameworks */, + ); + sourceTree = ""; + }; + 33CC10EE2044A3C60003C045 /* Products */ = { + isa = PBXGroup; + children = ( + 33CC10ED2044A3C60003C045 /* opus_flutter_example.app */, + 331C80D5294CF71000263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 33CC11242044D66E0003C045 /* Resources */ = { + isa = PBXGroup; + children = ( + 33CC10F22044A3C60003C045 /* Assets.xcassets */, + 33CC10F42044A3C60003C045 /* MainMenu.xib */, + 33CC10F72044A3C60003C045 /* Info.plist */, + ); + name = Resources; + path = ..; + sourceTree = ""; + }; + 33CEB47122A05771004F2AC0 /* Flutter */ = { + isa = PBXGroup; + children = ( + 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */, + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, + ); + path = Flutter; + sourceTree = ""; + }; + 33FAB671232836740065AC1E /* Runner */ = { + isa = PBXGroup; + children = ( + 33CC10F02044A3C60003C045 /* AppDelegate.swift */, + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, + 33E51913231747F40026EE4D /* DebugProfile.entitlements */, + 33E51914231749380026EE4D /* Release.entitlements */, + 33CC11242044D66E0003C045 /* Resources */, + 33BA886A226E78AF003329D5 /* Configs */, + ); + path = Runner; + sourceTree = ""; + }; + D73912EC22F37F3D000D13A0 /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C80D4294CF70F00263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C80D1294CF70F00263BE5 /* Sources */, + 331C80D2294CF70F00263BE5 /* Frameworks */, + 331C80D3294CF70F00263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C80DA294CF71000263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C80D5294CF71000263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 33CC10EC2044A3C60003C045 /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 33CC10E92044A3C60003C045 /* Sources */, + 33CC10EA2044A3C60003C045 /* Frameworks */, + 33CC10EB2044A3C60003C045 /* Resources */, + 33CC110E2044A8840003C045 /* Bundle Framework */, + 3399D490228B24CF009A79C7 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + 33CC11202044C79F0003C045 /* PBXTargetDependency */, + ); + name = Runner; + packageProductDependencies = ( + 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */, + ); + productName = Runner; + productReference = 33CC10ED2044A3C60003C045 /* opus_flutter_example.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 33CC10E52044A3C60003C045 /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastSwiftUpdateCheck = 0920; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C80D4294CF70F00263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 33CC10EC2044A3C60003C045; + }; + 33CC10EC2044A3C60003C045 = { + CreatedOnToolsVersion = 9.2; + LastSwiftMigration = 1100; + ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.Sandbox = { + enabled = 1; + }; + }; + }; + 33CC111A2044C6BA0003C045 = { + CreatedOnToolsVersion = 9.2; + ProvisioningStyle = Manual; + }; + }; + }; + buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 33CC10E42044A3C60003C045; + packageReferences = ( + 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage" */, + ); + productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 33CC10EC2044A3C60003C045 /* Runner */, + 331C80D4294CF70F00263BE5 /* RunnerTests */, + 33CC111A2044C6BA0003C045 /* Flutter Assemble */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C80D3294CF70F00263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10EB2044A3C60003C045 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3399D490228B24CF009A79C7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; + }; + 33CC111E2044C6BF0003C045 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + Flutter/ephemeral/FlutterInputs.xcfilelist, + ); + inputPaths = ( + Flutter/ephemeral/tripwire, + ); + outputFileListPaths = ( + Flutter/ephemeral/FlutterOutputs.xcfilelist, + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C80D1294CF70F00263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10E92044A3C60003C045 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C80DA294CF71000263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC10EC2044A3C60003C045 /* Runner */; + targetProxy = 331C80D9294CF71000263BE5 /* PBXContainerItemProxy */; + }; + 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; + targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { + isa = PBXVariantGroup; + children = ( + 33CC10F52044A3C60003C045 /* Base */, + ); + name = MainMenu.xib; + path = Runner; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 331C80DB294CF71000263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = eu.epnw.opusFlutterExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/opus_flutter_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/opus_flutter_example"; + }; + name = Debug; + }; + 331C80DC294CF71000263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = eu.epnw.opusFlutterExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/opus_flutter_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/opus_flutter_example"; + }; + name = Release; + }; + 331C80DD294CF71000263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = eu.epnw.opusFlutterExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/opus_flutter_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/opus_flutter_example"; + }; + name = Profile; + }; + 338D0CE9231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.15; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Profile; + }; + 338D0CEA231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Profile; + }; + 338D0CEB231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Profile; + }; + 33CC10F92044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.15; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 33CC10FA2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.15; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Release; + }; + 33CC10FC2044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + 33CC10FD2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + 33CC111C2044C6BA0003C045 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 33CC111D2044C6BA0003C045 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C80DB294CF71000263BE5 /* Debug */, + 331C80DC294CF71000263BE5 /* Release */, + 331C80DD294CF71000263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10F92044A3C60003C045 /* Debug */, + 33CC10FA2044A3C60003C045 /* Release */, + 338D0CE9231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10FC2044A3C60003C045 /* Debug */, + 33CC10FD2044A3C60003C045 /* Release */, + 338D0CEA231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC111C2044C6BA0003C045 /* Debug */, + 33CC111D2044C6BA0003C045 /* Release */, + 338D0CEB231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + +/* Begin XCLocalSwiftPackageReference section */ + 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage" */ = { + isa = XCLocalSwiftPackageReference; + relativePath = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; + }; +/* End XCLocalSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */ = { + isa = XCSwiftPackageProductDependency; + productName = FlutterGeneratedPluginSwiftPackage; + }; +/* End XCSwiftPackageProductDependency section */ + }; + rootObject = 33CC10E52044A3C60003C045 /* Project object */; +} diff --git a/opus_flutter/example/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/opus_flutter/example/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/opus_flutter/example/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/opus_flutter/example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/opus_flutter/example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..717a712 --- /dev/null +++ b/opus_flutter/example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/opus_flutter/example/macos/Runner.xcworkspace/contents.xcworkspacedata b/opus_flutter/example/macos/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/opus_flutter/example/macos/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/opus_flutter/example/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/opus_flutter/example/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/opus_flutter/example/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/opus_flutter/example/macos/Runner/AppDelegate.swift b/opus_flutter/example/macos/Runner/AppDelegate.swift new file mode 100644 index 0000000..b3c1761 --- /dev/null +++ b/opus_flutter/example/macos/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Cocoa +import FlutterMacOS + +@main +class AppDelegate: FlutterAppDelegate { + override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { + return true + } + + override func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool { + return true + } +} diff --git a/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..a2ec33f --- /dev/null +++ b/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "images" : [ + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_16.png", + "scale" : "1x" + }, + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "2x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "1x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_64.png", + "scale" : "2x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_128.png", + "scale" : "1x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "2x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "1x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "2x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "1x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_1024.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png new file mode 100644 index 0000000000000000000000000000000000000000..82b6f9d9a33e198f5747104729e1fcef999772a5 GIT binary patch literal 102994 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ⅅ8MglG&ER{i5lN315cO?EdHNLrg? zgxkP+ytd)OMWe7QvTf8yj4;V=?m172!BEt@6*TPUT4m3)yir}esnIodFGatGnsSfJ z**;;yw=1VCb2J|A7cBz-F5QFOQh2JDQFLarE>;4ZMzQ$s^)fOscIVv2-o{?ct3~Zv zy{0zU>3`+-PluS|ADraI9n~=3#Tvfx{pDr^5i$^-h5tL*CV@AeQFLxv4Y<$xI{9y< zZ}li*WIQ+XS!IK;?IVD0)C?pNBA(DMxqozMy1L#j+ba1Cd+2w&{^d-OEWSSHmNH>9 z%1Ldo(}5*>a8rjQF&@%Ka`-M|HM+m<^E#bJtVg&YM}uMb7UVJ|OVQI-zt-*BqQ zG&mq`Bn7EY;;+b%Obs9i{gC^%>kUz`{Qnc=ps7ra_UxEP$!?f&|5fHnU(rr?7?)D z$3m9e{&;Zu6yfa1ixTr;80IP7KLgkKCbgv1%f_weZK6b7tY+AS%fyjf6dR(wQa9TD zYG9`#!N4DqpMim|{uViKVf0B+Vmsr7p)Y+;*T~-2HFr!IOedrpiXXz+BDppd5BTf3 ztsg4U?0wR?9@~`iV*nwGmtYFGnq`X< zf?G%=o!t50?gk^qN#J(~!sxi=_yeg?Vio04*w<2iBT+NYX>V#CFuQGLsX^u8dPIkP zPraQK?ro`rqA4t7yUbGYk;pw6Z})Bv=!l-a5^R5Ra^TjoXI?=Qdup)rtyhwo<(c9_ zF>6P%-6Aqxb8gf?wY1z!4*hagIch)&A4treifFk=E9v@kRXyMm?V*~^LEu%Y%0u(| z52VvVF?P^D<|fG)_au(!iqo~1<5eF$Sc5?)*$4P3MAlSircZ|F+9T66-$)0VUD6>e zl2zlSl_QQ?>ULUA~H?QbWazYeh61%B!!u;c(cs`;J|l z=7?q+vo^T#kzddr>C;VZ5h*;De8^F2y{iA#9|(|5@zYh4^FZ-3r)xej=GghMN3K2Y z=(xE`TM%V8UHc4`6Cdhz4%i0OY^%DSguLUXQ?Y3LP+5x3jyN)-UDVhEC}AI5wImt; zHY|*=UW}^bS3va-@L$-fJz2P2LbCl)XybkY)p%2MjPJd-FzkdyWW~NBC@NlPJkz{v z+6k6#nif`E>>KCGaP34oY*c#nBFm#G8a0^px1S6mm6Cs+d}E8{J;DX=NEHb|{fZm0 z@Ors@ebTgbf^Jg&DzVS|h&Or)56$+;%&sh0)`&6VkS@QxQ=#6WxF5g+FWSr7Lp9uF zV#rc`yLe?f*u6oZoi3WpOkKFf^>lHb2GC6t!)dyGaQbK7&BNZ7oyP)hUX1Y(LdW-I z6LI2$i%+g!zsjT(5l}5ROLb)8`9kkldbklcq6tfLSrAyh#s(C1U2Sz9`h3#T9eX#Hryi1AU^!uv*&6I~qdM_B7-@`~8#O^jN&t7+S zTKI6;T$1@`Kky-;;$rU1*TdY;cUyg$JXalGc&3-Rh zJ&7kx=}~4lEx*%NUJA??g8eIeavDIDC7hTvojgRIT$=MlpU}ff0BTTTvjsZ0=wR)8 z?{xmc((XLburb0!&SA&fc%%46KU0e&QkA%_?9ZrZU%9Wt{*5DCUbqIBR%T#Ksp?)3 z%qL(XlnM!>F!=q@jE>x_P?EU=J!{G!BQq3k#mvFR%lJO2EU2M8egD?0r!2s*lL2Y} zdrmy`XvEarM&qTUz4c@>Zn}39Xi2h?n#)r3C4wosel_RUiL8$t;FSuga{9}-%FuOU z!R9L$Q!njtyY!^070-)|#E8My)w*~4k#hi%Y77)c5zfs6o(0zaj~nla0Vt&7bUqfD zrZmH~A50GOvk73qiyfXX6R9x3Qh)K=>#g^^D65<$5wbZjtrtWxfG4w1f<2CzsKj@e zvdsQ$$f6N=-%GJk~N7G(+-29R)Cbz8SIn_u|(VYVSAnlWZhPp8z6qm5=hvS$Y zULkbE?8HQ}vkwD!V*wW7BDBOGc|75qLVkyIWo~3<#nAT6?H_YSsvS+%l_X$}aUj7o z>A9&3f2i-`__#MiM#|ORNbK!HZ|N&jKNL<-pFkqAwuMJi=(jlv5zAN6EW`ex#;d^Z z<;gldpFcVD&mpfJ1d7><79BnCn~z8U*4qo0-{i@1$CCaw+<$T{29l1S2A|8n9ccx0!1Pyf;)aGWQ15lwEEyU35_Y zQS8y~9j9ZiByE-#BV7eknm>ba75<_d1^*% zB_xp#q`bpV1f9o6C(vbhN((A-K+f#~3EJtjWVhRm+g$1$f2scX!eZkfa%EIZd2ZVG z6sbBo@~`iwZQC4rH9w84rlHjd!|fHc9~12Il&?-FldyN50A`jzt~?_4`OWmc$qkgI zD_@7^L@cwg4WdL(sWrBYmkH;OjZGE^0*^iWZM3HBfYNw(hxh5>k@MH>AerLNqUg*Og9LiYmTgPw zX9IiqU)s?_obULF(#f~YeK#6P>;21x+cJ$KTL}|$xeG?i`zO;dAk0{Uj6GhT-p-=f zP2NJUcRJ{fZy=bbsN1Jk3q}(!&|Fkt_~GYdcBd7^JIt)Q!!7L8`3@so@|GM9b(D$+ zlD&69JhPnT>;xlr(W#x`JJvf*DPX(4^OQ%1{t@)Lkw5nc5zLVmRt|s+v zn(25v*1Z(c8RP@=3l_c6j{{=M$=*aO^ zPMUbbEKO7m2Q$4Xn>GIdwm#P_P4`or_w0+J+joK&qIP#uEiCo&RdOaP_7Z;PvfMh@ zsXUTn>ppdoEINmmq5T1BO&57*?QNLolW-8iz-jv7VAIgoV&o<<-vbD)--SD%FFOLd z>T$u+V>)4Dl6?A24xd1vgm}MovrQjf-@YH7cIk6tP^eq-xYFymnoSxcw}{lsbCP1g zE_sX|c_nq(+INR3iq+Oj^TwkjhbdOo}FmpPS2*#NGxNgl98|H0M*lu)Cu0TrA|*t=i`KIqoUl(Q7jN zb6!H-rO*!&_>-t)vG5jG>WR6z#O9O&IvA-4ho9g;as~hSnt!oF5 z6w(4pxz|WpO?HO<>sC_OB4MW)l`-E9DZJ$!=ytzO}fWXwnP>`8yWm5tYw`b1KDdg zp@oD;g===H+sj+^v6DCpEu7R?fh7>@pz>f74V5&#PvBN+95?28`mIdGR@f*L@j2%% z%;Rz5R>l#1U zYCS_5_)zUjgq#0SdO#)xEfYJ)JrHLXfe8^GK3F*CA(Y)jsSPJ{j&Ae!SeWN%Ev727 zxdd3Y0n^OBOtBSKdglEBL)i5=NdKfqK=1n~6LX`ja;#Tr!II$AAH{Z#sp%`rwNGT5 zvHT%(LJB+kD{5N}7c_Rk6}@tikIeq%@MqxX%$P!(238YD(H<_d;xxo*oMiv^1io>g zt5z&6`}cjci90q2r0hutQXr!UA~|4e*u=k81D(Cp7n{4LVCa+u0%-8Uha+sqI#Om~ z!&)KN(#Zone^~&@Ja{|l?X64Dxk)q>tLRv{=0|t$`Kdaj z#{AJr>{_BtpS|XEgTVJ4WMvBRk-(mk@ZYGdY1VwI z81;z(MBGV|2j*Cj%dvl8?b2{{B#e0B7&7wfv+>g`R2^Ai5C_WUx|CnTrHm+RFGXrt zs<~zBtk@?Niu%|o6IEL+y60Q>zJlv``ePCa07C%*O~lj?74|}&A0!uA)3V7ST8b_- z6CBP1;x+S@xTzgOY2#s%@=bhZ@i@BwmS)neQG&=9KUtRf^K=MvjC5JnqLqykCE_P0 zjf#V4SdH2#%2EuDb!>FLHK7j;nd6VLW|$3gJuegpEl3DZ`BpJU$<}}A(rW?<6OB@9 zKP9G3An?T5BztrLdlximA;{>Tr7GAeSU=^<*y;%RHj+7;v+tonyh(8d;Izn}2{oz& zW)fsZ9gHYpI?B|uekS3zHUue3mI zb7?0+&Zm>Kq(F>~%VYEn)0b32I3~O^?Wx-HI|Zu?1-OA2yfyJ;gWygLOeU;)vRm3u z5J4vDIQYztnEm=QauX2(WJO{yzI0HUFl+oO&isMf!Yh2pu@p}65)|0EdWRbg(@J6qo5_Els>#|_2a1p0&y&UP z8x#Z69q=d663NPPi>DHx3|QhJl5Ka$Cfqbvl*oRLYYXiH>g8*vriy!0XgmT~&jh3l z+!|~l=oCj<*PD>1EY*#+^a{rVk3T(66rJ^DxGt|~XTNnJf$vix1v1qdYu+d@Jn~bh z!7`a`y+IEcS#O*fSzA;I`e_T~XYzpW7alC%&?1nr);tSkNwO&J`JnX+7X1Q8fRh_d zx%)Xh_YjI3hwTCmGUeq_Z@H#ovkk_b(`osa$`aNmt`9A#t&<^jvuf z1E1DrW(%7PpAOQGwURz@luEW9-)L!`Jy*aC*4mcD?Si~mb=3Kn#M#1il9%`C0wkZ` zbpJ-qEPaOE5Y5iv_z%Wr{y4jh#U+o^KtP{pPCq-Qf&!=Uu)cEE(Iu9`uT#oHwHj+w z_R=kr7vmr~{^5sxXkj|WzNhAlXkW^oB4V)BZ{({~4ylOcM#O>DR)ZhD;RWwmf|(}y zDn)>%iwCE=*82>zP0db>I4jN#uxcYWod+<;#RtdMGPDpQW;riE;3cu``1toL|FaWa zK)MVA%ogXt3q55(Q&q+sjOG`?h=UJE9P;8i#gI*#f}@JbV(DuGEkee;La*9{p&Z?;~lE!&-kUFCtoDHY*MS zzj+S$L9+aTs(F^4ufZe6>SBg;m@>0&+kEZMFmD*~p~sx?rx=!>Ge;KYw<33y#*&77 zFZI`YE(Iz?+tH;Fq;y=MaSqT{Ayh*HFv0(z{_?Q+7@nE%p?S8%X6c!+y;!0NLXwJV8Co_}R3*7>n+oMsQpv8}8ZS-P@(Rg|gmxZHzf=nMOUAAY}AZGfWVzZjE@4$=7xkIrs8BE%606aVU%kxz_04ipig51k& z(>c9rJL2q%xvU%Zj#GR9C9)HLCR;#zQBB@x;e_9$ayn(JmSg_*0G?+wOF?&iu@}S{ zt$;TPf*Lj$3=d<}Q3o!Hq@3~lFxoiCyeEt}o3fihIn{x2s1)e2@3##&GYDq~YO|!q zUs0P-zy)+ohl-VQ`bhvUpC{-d$lkpML_M%Kl6@#_@A}w{jWCDsPa#cSbWA#C4Sf|*C*&Z{ zz?hOU7Cc`?>H$WGqITA2P~fYudnQHxB8^;0ZFKC;19F#~n_2P@{cE{Czq-#K5L_8| zc3aOEwq4%zL5>YU_mc9fc-p~{fBTWUkxTiZvxt9FOqC{s#TBp(#dWc+{Ee{dZ#B!g zHnaOJ8;KO1G;QU2ciodE+#Z$Wuz*Hc6NRO!AUMi|gov=>=cwcZeL&`>Jfn!35hV1J z;B2@0!bIR853w%T*m6)gQ?DPnQ)o6EtKaN3L;o?*q<83d&lG&U=A|6hcT?f0)4h6{ zGIZ0|!}-?*n{zr}-}cC}qWxEN%g60+{my)o^57{QEn(tSrmD7o)|r0+HVpQPopFu; z0<S}pW8W2vXzSxEqGD+qePj^x?R$e2LO&*ewsLo{+_Z)Wl|Z1K47j zsKoNRlX)h2z^ls_>IZ0!2X5t&irUs%RAO$Dr>0o$-D+$!Kb9puSgpoWza1jnX6(eG zTg-U z6|kf1atI!_>#@|=d01Ro@Rg)BD?mY3XBsG7U9%lmq>4;Gf&2k3_oyEOdEN&X6Hl5K zCz^hyt67G;IE&@w1n~%ji_{sob_ssP#Ke|qd!Xx?J&+|2K=^`WfwZ-zt|sklFouxC zXZeDgluD2a?Zd3e{MtE$gQfAY9eO@KLX;@8N`(?1-m`?AWp!a8bA%UN>QTntIcJX zvbY+C-GD&F?>E?jo$xhyKa@ps9$Dnwq>&)GB=W~2V3m)k;GNR$JoPRk%#f3#hgVdZ zhW3?cSQ*((Fog26jiEeNvum-6ID-fbfJ?q1ZU#)dgnJ^FCm`+sdP?g;d4VD$3XKx{ zs|Y4ePJp|93fpu)RL+#lIN9Ormd;<_5|oN!k5CENnpO>{60X;DN>vgHCX$QZYtgrj z*1{bEA1LKi8#U%oa!4W-4G+458~`5O4S1&tuyv>%H9DjLip7cC~RRS@HvdJ<|c z$TxEL=)r)XTfTgVxaG!gtZhLL`$#=gz1X=j|I@n~eHDUCW39r=o_ml@B z0cDx$5;3OA2l)&41kiKY^z7sO_U%1=)Ka4gV(P#(<^ z_zhThw=}tRG|2|1m4EP|p{Swfq#eNzDdi&QcVWwP+7920UQB*DpO0(tZHvLVMIGJl zdZ5;2J%a!N1lzxFwAkq05DPUg2*6SxcLRsSNI6dLiK0&JRuYAqwL}Z!YVJ$?mdnDF z82)J_t=jbY&le6Hq$Qs}@AOZGpB1}$Ah#i;&SzD1QQNwi6&1ddUf7UG0*@kX?E zDCbHypPZ9+H~KnDwBeOXZ-W-Y80wpoGB*A) z_;26Z`#s0tKrf~QBi2rl2=>;CS1w)rcD3-sB!8NI*1iQo59PJ>OLnqeV4iK7`RBi^ zFW{*6;nlD&cSunmU3v4JKj|K4xeN(q>H%;SsY8yDdw5BJ75q8>Ov)&D5OPZ`XiRHl z;)mAA0Woy6f!xCK(9H2rq?qzp83liZAIpBPl-dQ&$2=&H?Im~%g;vnIw1I+8q|kr! z36&^9}CMmR(U2rf|j12oG=vb%Ypsq8u9Kq}U*ANX*)9uK}fAi8;V_7Z;0_4*iydDxN-? zv?qJ=T*{MzL~-xUv{_Kh_q9#F{8gPV!yPUUS8pEq*=}2-#1d=sC_|U-rX~F0 zBLawgCWy#?#ax{~DAnDvh^`}wyUO`ioMK~jgh%L7^}#h?beSyvQ_g>+`2`}`-1h7# zg*?qJdm=53hwN8~B=^|LPmYtOVrQ(W{sNm4uofq=4P@dUA%$onWbw_m-KWia&n9iv zi)!9#OJ#^}eg8tE{wSb9(c0D^PS1 z9EBS5*ypSiVRS_G0v?$hyoZOS7hFWlp4qbYkf9Y&{%OzhsIdHskLptn96@k6@^K@U zszd8POehITDK+AyW#JKpnWY;ju#MC$JjB1Y*~(E6N%{p#kO+bVxG3X<34n3fW=k{A zCZt|KP%x^GQ9%mU)KE0{LA=vaZvRQbxSlK~eAkwWo2Z<{j5eS5NVTMe`m%re8%~7K zZLtU&b~YDN%~uA9wPf>x2=PI=MA6_oVe>Ek$s5&&Z=8vvF5EODP4Av(b|dlNgF1O8 zy83W0WRdzjz2iNA~t1piEqlyU&`$yZtqR`6X_PmuP>W+D|8iH;FQ zN{JuU#Tz9mV=4R_IewROL1|mK^`lLat#LcIBfggzM(iO$pQT*-c_ z94^LUWw#5B9~sp2W1p`c)Y(xfR<{O^9n4E6vDDw{#-R4UMBKo{>Hqlqn*a9rl_>+0 zS5MwJC~nCC`1X%VCyWFsiDX;bfAJQAUkU#105f_s5U-8rqO}n8fA1{b>Fr6Q|Ea(V z5B11Lo^ooWF?`^{-U#?iatokWI-e$632frzY?Yzzx(xJc@LFM4A~-eg!u|tl{)8Nx ztZLXsSC*68g%9TFu(f&J9nmc^9hgyy#uUOMJFCaifSaDcyQ&6=8e9=t zIFEAQ{EK{|73{($!a4=!wj4ABcQrUQp#+gGM?wEUp(w@+Fzi{!lt}|3`PM%&d-seeR zB$}BrFGD3R10CE>Hsb>;PrP}pd` zaY4}6+Wu(`#uAV+E5SV7VIT7ES#b(U0%%DgN1}USJH>)mm;CHPv>}B18&0F~Kj@1= z&^Jyo+z-E)GRT4U*7$8wJO1OibWg0Jw>C$%Ge|=YwV@Y1(4fR>cV#6aGtRoF@I`*w_V4;)V231NzNqb6g@jdpjmjv*<2j02yU$F8ZS$fTvCC`%|Yn#x< zXUnP&b!GLpOY-TY3d?<-Hhxom_LM9`JC9LEX2{t1P-Nj%nG+0Vq)vQwvO^}coPH-> zAo8w#s>Je^Yy*#PlK=XDxpVS~pFe-j#jN-(As&LRewOf(kN-aKF(H+s*{*!0xrlZw zchJu@XAvQWX7DI1E8?F}Wc8m46eT+C<0eXVB+Z^(g=Kl@FG-cn@u$suj)1V2(KNg_ zh29ws6&6(q~+sOAoHY^o86A<#n*?Pg2)cK$+y;cY$hJLq4)4V84=j+3ShSr##Tk5kgmxB zkW+8A1GtceEx~^Ebhwm36U?oA)h)!mt=eg0QE$D1QsLNZ_T3NH?=B&0j~#298!6iv zhc0|-{46*3`Rx&nKSXnf1&w-Rs>#PGAGuY@cBTU-j|Fxbn3z49S#6KBaP^Lx*AOXxIibr z!1ysMi(&kr!1wwQB5w`BDH2~>T4bI`T1}A2RM0zd7ikC&kuBRsB`Z2@J!Udm{AmSN zrr0k6_qCZL**=)xRW`MFu(OY=OT;3G8eF~ z2mmkXZ9X(sjuKmq+_<=LSjphB$~R1o^Yb=rO!j!(4ErIox^x55o{pXSE9X$!76^*$ zoKhlAX6y%n^U=C~@!vIlEgXQGD@>oOU=_(aXF-Sjas*$AKESfRzxQ8#3yOj|y0OCU z>6Z-0%LCcjla&7I+CXm&caKp@@jQ!5M`(_{CL=@4#JJ}cHeZw>^b6fpv269LSV?gV5Q{kk?4;;y9RIsy5vk%DIRiL(9xe1aA@4!VX zDh2}xgUd5X?6nji%&7-%QuyKSYA-Z{PwJijUQ}In+EJl|x@dF1P<5bPa5W3&&?^h$ zZCo8LepKo0a(Fsln*cHL;D(gu9MMkoiM0*n31u)jHqX5x^F95tnI&^}^yKx3YwEm@ zo8?EZ710ykx@19{=yz5IXb8w4yjdveWb{IVL6Z(Cs>!a_0X^1E27o!4e&b43+J*u2Gb(59k2uK0goLwhO{ujLS ziI9LA9`&x~Y$6JNX!aEXR``}LUI}Gr#=<^wBHmg%v<)zRWDVtq)kT$-P7iU1R)2XZ zi~bYhV@EZ`@prgK(cs{>2jn$pxg$<|KjJ7%26Km>%KcXh^bU@y@V_Lf@=j1x%R4{v zOcQn{I}!2W<~08FOVnoV>zOTH=+>v9!jFo|q)ucqIe!N4{U5_G`>>*sVD{8I~4FqyU8imZ**-Gy`~Xd z4w35GMf%7^i65HdX{Iz|f2Kg193#KhPIeR)-=eYx3Z!%RM=JjwLrdk^B#6rg!ym2w zPbFqYyO4>W_Z6PonAwiu7?!h=x%sR-T+_*xZOGh2wWhWr%}%2^$$ zQvACIB~pi=m|`hXIMvoq`TOCx=J_D2>pi6$NPy3&8#vy|oX)=kM0Z}$BR$r0G}MzOk-OqG+VmZtOZoj6x4(tLh|5h) zBv64Y{DPHsy&_H(5_l(&Y}FhVvr9m_*_Q~Zy-}V9+VmGnvndEjYW4qt4K~N&Y&6g| zfpz*V=A#^mVmuOAz)(KVI<%v5NY0%Goy!{9&o41upsPWk(yFuRP|A4q6NMnX%V~MT zi_Rb-Bno2kI+j0Cw`@ydy{e%ARS#Z%b6I%_yfo_ZKXr4BLVoHzBKJ^ZG z-2>2IzU)55@9C|?_P$ew^-7zEiAKG1XAi{!3h%1m#9s%^pGy6S9wKFYY4<$djeoJP z{GI}Vd%idY$4_fh(7NXm7#;cC!DS&-{tGr!Qze{^%bUx2jgG@-kMta^q-EwrKB}d8 z{%FT>rFk_bzW<{lc%eYlrsiYTZXGgzD1&lmRyp+c1O=0=zAX=KV62bx-a~JP{cPF4 zU$-XT#(9&T>l@bMu3nSr{)%-5lV+0t&bxip4DVJ~vlL$J2P6X~ zd{FS8vm{Lhrieul*7&(AgPuXhjpGila%6_?-+k#b)cdk#M1jB*nE>G6NGOr+Ek{`= z9b%S1`$`=g0CC$>0$Db;l_szReLYVmce*(()9%Zz1`*fNXhI*oRlerWHarD(v^W^c zuc1Vuw6Gbp7ZsoRH>QGt#&lv;5G~Ovt$%7VFd*-rN2>UjbOWBFGNGO`bru7CFB4tn zL`^?69Lj_g_TA&`9`dSI8s|)K|QM0 zybvV7!>xDY|6c6y;Q}qs`){1+WQu_5Dgd8Qe|q}}bxjH+joQQtqs1IVZn6{e7T{ia zF|=^xa%eWO%(x<7j*QZbcU_;aVaVP!arexOLOtoSNt*hvsRL%}%)jPetSich(`b-^ zMZ$PM9%s@%*jPVz0Z^W*cK_>G4f}+eEVX`HOaHg#!B`<4v;x}zDLMR*M27`kNfp!! zOfdt(>k-g>7jf^{Se@3$8<+;R*cYtw+wD_Z8Pl~!JDCUEPq{Ea*!J9`%ihyNJZ30i zmfve}S5<$Uso}_?SuI$ks|{-ddGLu9WR9`^9)Kdi@Vs;x#SY-xp}wHPU0|vEA7234 z@BN1z7OF=OOQtPF$4twn3!HTVlUVD_)ubMM7PEPoiC6lQgL2q9PK4~e8v-OuH%lie z?NgBLkIdPMG$QBq(>r^AOHB`|*1#*!2Z? zuU8H|FD`OBRu^(R?Z-Vhr0j;FLpS~a34KREnd}B=EYHS*>Hm+f%tgJt!4J8Q`qn^4 z9F=tO#JRJ}tzA`vx$nZ)O%wC?Uiv0+_nz}5Lj4ki*&=K&*#U`=rv z`Q@Q{+IhAj@6lrNK2B=8Yln!O2%zomfRehFT~;!O@(@Xy|1Jlw*uOB-M$#6K^)QBm z_7%#QVUDPwnW{iOV-grMQQU|3{=BQMh}c5(yMGdoQf*)k9-B zMQ(^GdJh+y)>qJprknS!%WxqM>HlHOP#7UVdy>%PW$!l72J`n-p7j(DBKoGxXWh(Y z>BFDZl|7knU_jg_SSbvFk8)39%2)Hu5W0}HKlh>EaqvFoXI&56Yy)3) zQkE4X^P0QnPn?iUUVHJZXzPp`s5uv?pG{K9IgGoHvcmlBxubi|iF7n{)mhenIcxGs zgr0OpQy#Y#u=5lOyiECfE_Sn?Fj1LyoRKcbTgX{p<T*v!CGkPc)pcA2D=4Ekp0Gb*wpy7S88C%Ywsbr?MI(3UdsCM?XJ1X%*hNjB)XqZ*W(qDdtSb z<3XN74ARXL3=c^bfW~F%NM^5*Zx92>Wq`&M625p~j$8mYwLbk%Kf)jbn#<2z$%vP5 zy#b>-tF-S2_AB4;R^K&^-1LJrUmi@9rB^FLF)-k&YHK8P+k@RCJ1qSTZ@=kHxA3l$ zmK_ZG)l6(nmCR1a8|;QF-B5e_ELnjJ1$m-;4UXX?WytF_wz7#&AjwZYTMVieLbq@R z3t-q|G4^BB#EpNu4uyfDebB+-uu_$9>y-dzB30Y9F=R zrW-Heqnj*InPTWHgR9v^R7~hokldh&h8=HDhMW(EFfim1*{)5Lc1-+eBVkK-2!u=N zuZKABgJs3I--NbjE;>Undg6uK`^U>AQ6V zhc!RhYgvrmeGNsftr+(C<_MtuV$`5RZTf#5r=DR?gWG->#})#=(td%C3`oO+2B7im zUqY}&a_QNTn?s+?=mNXiREN%x_=(H)L|DtYPY>SR3pQfBOel7G_jR_{!9`dSj8Up-`JgcB;=Oor)U=_EVjF3C5{Sqh8cq=~bRjoBpoc$kJCgtTyZGSpQ4= zYi$6b$-dGmuTDF&@amhV?cU05g(AZV&v2$4m&j_~GZk;&keSO(@LRESRZ&p`dV*6w z2$em~p*8yM6j;SYorw`M5K2mluJq7P5Yn$VtZj8DEs2Zk=O@4T&Q}>~f31Z{uk}`E z{Dp{KObh1kk~~MfLUod72{Pk6G@T$_0_N??lOrdR=Z;VV#m0l)&@hz{Z?)@sgImi-&i1@95g53rON83v!yVPDHRU*Mzc4yZ(-Fr z{8{WXmIJf7jeswk$;6s~Qac6QyM3W&`}m#gRt=rr95A+Ad&wSAgvXZ|F))rBJVJ5W1CsjN`QaOzct2ocq#0!v zmj#075)C!3oS>&N;aHS@<+c>RHL)8j^p)k(8#7$LEx!1g_1^02!4_qA=;uhKW=+ix zGX%+vBMiRiF^^jm{mdO(?GdWJ#unO#_F^7mhT8)s(z_WlwFyJ#Xh)k5+RG2f;LC*K**1dr`#}~6A=0B=I&V;%zDA1)d@G!X#Rng)7G*2k8Kg447r0ox> z5NK`d(H-afBwo9feDOUi>;BbPsu!2|=@g=3j*PY}@YrOb+SX6?#Yb2xaaK!?>SX1J z_!VsB`2n1=wwSftkydm!39|-1?c%Epx?TO<(#GO~I&{f4+)XwRk<7RQ1~5>QcKH|D z?!}j1ueO0Lk;FZ{k4FA_(S`Ot0w~tl&m0duID*f6RY#bkw||o;kZ# zISYNTb|{~|X$m$Q-Jv#uxyw)eM0gIv`V#wOAp&Vv@>X4_tSZ&L#juM@$S9 zx_X_tLh<_^-F;LAQ09s@sPb%PMTrcw*HUV0P=RYSlM&AXEOI&&R&YCm_S<7DRBx^L zA^R^iwW+LMk(r*$Pq-fKU5X@=mQ=`ErO30H@@&qqnI7zJcrbSh+H<V ze&7Uli0xj@WrW#&-9%*FP~kPYF_YYM_hs5~|ExMynQ%qvq`leRB6W0yhC@pCb8>_P zlf=F~WMv_u*-DV=UaVu#2rlzK{q8D95VwZrfV?gj@rSNWXFvktUq)V5+YrlxwX302ae(;aG4e>L-M@3J+-f3IT{b9l!kg*2M zC1+ND9}6m^()LE87Mt+^Q|)!y#suc&v26C=0W88%a{?)E8Yvo@kM&KNMaOst#|-_CbUTm}WS@-c>nRb;&z^ zYr)+IE$1=jov(CZ%3uR+`~NI>1&Gs6W(jaamjcN$a`2!*nO}l|b%?)Q%%UWzw>A`C zR@px(P*7j$TK?jbv*%x)e^|jcLsv}aF(Z0=7(%Oa7+1wY>{B>d+i&ZA$}k(qgZPZY z;VkW~8eWnU&HPIAbco?&tc2O1$6=7n{u|^Y*nXoac{o1W-6aXfy~KlNbJfLoq~6;+ zDYmnv--Fhqrl+UV#k@_(1=gWNtqhyVKN=9CZ-{Ohi>e=~bm4IKbhM%%W zW8oXE!rGpV7Wt(_^4nndH1_imheaWzDi|I})9ZVZ9>pN+P%dVc5wG`Ze*4`@rjn1^ z`ln(;vPBHQUb}y8S>=8q__r7g+=z$>!pReVB0@XKchAvyGjLQs-u>+w%`frV4FeIG zj=7n~hGrwx*&5aHy(7X$bDZ7YhcP%(*>G^lAYMK;qG~V8Jz@b7oNg;IA1z$9@TbzW z;@I51@Ekef#qbxnG$Y8Z%bm~ibZ=4#%yKr%#b)CDrfKN`ujIY?tA4h9)i~dZ4E;ZM znvb$n2)zn$Wx&zlW%mJZDh28ox$@%`w3i7YFepXUChw}$UXKI=-TM51`M#FH=tdr*mQ!c=aB1296Lu>iTTKZWss0f z5~ihdImPN$aTle_AdbYC^31}_^EK|9R&l#%3hbx;8vJ+Gp^tm{9JDILu*1PW!rh^Dn9p<)h#Sl4kKM%nm<+!ESSk* zC;lLNT$fgr-!+{aBsSx$41b}yy6o>r3F#1&iv3cfY2N<+`0qJ+>=&Qxs}JOEkD?^l-F5i`t5+zNuvJf z3Fh4$mNqiFXL-aq4U4K@Ae$fq-TDT`rvrx;gqx96w^*@s=mcthCaIyPe(w)6kI{EqV10tcShHU9eeAPs)s?6#vrq}>y3FeTJu$Udha+z zs7}rmA@yR(L&>35sNjQqrw}o^)UitMU!5g6nnG)(tgst!^`FKJEzI1(d@j_w@;^hr zgYxlIRYjho4U$bhczfq&YySCqCE(5_d>l(4tk1v9!V7PB%Vx{QO=G2NC@c1%3rEzw zN<6i?h;CJX>h)kn49Sr)g#Em6km6ESP`1qc5C3ZHizN>r>V-fSS=X1nT{+Thh@kC! z(H=PlqDt7V6gOYezXUK-dretz!1?IUD6&eL2b!4=9h+HUO&DYZKMM>|YhlEEg?q?S z^XT4$2Fd|zT=x3U#L1|F;-#`to-Y6hiYkWdO=rRC)meY72pIfl`3zEGDU8($iWR^K zI$nq80aSJII<;#W5Pj>^_T&013BJ*O89Uoq z5>;Paa^E}xar^r=!pexg&OTM8wluk4R~Ru=)Hgk`Y#i_$jk{jc8hx}?(dW*X!l4vs z6_%$s#duJJFmaFc-5#>v6Yea=I~)s_pXGS>Tkz?s+WS}>Qp<9MappMLXpkXpSM~SmH6u)`Z5>o02kJs;w@KhdiZ3}29y*xr|6tMo zBHzGic+b+dTd!xOJ;p{Rguh^corJ;K?R6daayQKm+0rf7|AXg0qs!R9eS7t4{G=fs z1$=?kK1Ih=gEkI>@jgXDWHZt*C7FUEWs|u^pE3Z``^K|1KEC^sbN*4nQUfRc_AyE0 zn)?RrGjgPkzfE~_s!rDB!fDsV+*|kEX4+DyS#8%!cshn;s8svwBXSsDGX2ZRa0={* z=`p1F{zD17*Rk>Uk_cw3t5j=9-d6$}MoM~z{v{t^M!g75-+o8_XkP@CZWUQ2z!^26 zCNOu~hgrrK)y>bgqb{`Q_1^zrG4;cGarP!nb4E~(ZKWc`LVeEq;IewVneLp^ZU2+% z95PgN*M5v7Q;ZlGvM#`&u2NdHm%&gZ{bZM5wBCp&?HeZhwU87wyT_z!n4z+1?=RvXZ^72d*%+R1s1$KbAFtR|= zw;MEq=O7pMIKpFwKH6$OOszJAf<_Z<1)36cB>D>|Z6$gJL~jH`n3MMou$#Si%rDAu z4pSkJspG|^CJ86vg6kkfXsA_`8@8iOryOe!Qhn8SV6}mPlof3=WJRVqAr_b;e->`Z zMR(p|K|$L0^6;u~USxg#B6-ZNc%E1dv*^P=|2k*^NOBni#G%9Y?##{=)8KZwh85OL zSBG9|gb|hdmY^gn(ziY&O5#@I?W)W;361Yb^VQNpz0A7&^(7HRAsUvw#)fvhocvja zLxV65J0_$>&cVRctJFsn^qLos^tG`+B0_gQ{NeOwKt-!C^gGFufdtPT*Vi>l#X1|V z2XxsAcixN)Ekq=a##_^=k_^BFH5_zpvPDRP>u6+3$}i&b zy0@FdzAHw?i9OqnlTts_w5D@Nd#eM)KKEuN#m{|AJyscxa}(eA?z4&4yvXo{OBS65 z-?gW;<+;+ntM}U_yTmHm6*2zj0Imj<&ZgE9Wj|gfsXhrVH-c0p$7HXnR8bxDYOi z=_r3FA~u`L&2;Vir8}P3)k|@c?sK1U@&iWo{HEXcoy>6wQSuJ+b4l%aTBuigs&k@Y<2c=S3Ef?p zH>ki4yDuXdo_eu>X1{E$g(Q-u#zVXN^&%70guoizo7x(kQ0OZ}H$O9UB}(FaX8Ct1 zFpx~}EbHf2r6V;x=@8GH$C2|6*?K~?LrtMYd^bw*WYXhA z_))@RMH;nZedW3+qfWbv<|_#BYOxX^rhbN+!za)|!|8K*LRs(R$O*2SDM{g9k7e{u zN4VIdi}e#0&h?sBxu$>Yy%)j(k1V2fuhp8r!}gfF@b;F?U`6}YnnMh1&sSU&lR^?# zu!61+lGsuFEfDraX3+$QZibCbKzc{75G^T7@WZSQ)j5898G1AOXB*H*TSd`f<`IK# zm1%&t?i|2Z-a&r!pJehzg@!awNp)R)aa?q_SqGrxE5u+T#f?K2;GAHV?O&>!W@Q*k)7=g2vDW+7K zbyY9i{|nOF*SbMYoRQSAbSH2y$bE5(@d6xKxcF#@TE~X#3o=;`0sc!RupdRmQsML? z&>SCwS{FOpSr+@6Uuz3m`hj}(^g`Jz|6?({!%WVJn$H|ugxW+x-GEA?J&U^ugj3Nb z;65~)W<}iH2PJ@st8LtLfSOLXYgj=9<;?ih7rq$bXW9J#!B8!Wu6#U`A$wlcoC*&` z_9Js~7%m79#+edeT&P`@_Ng@e&5J+pqpx%31tAF71)pcz~-yJ>P5yX(nuM4;bUHDa8E(~~l{j~JeCGkX>nHJDpgSf&bTHEf)qw8{Q~CBPEVen|MW2P3vmf`8X9-g|>>ddp zcgfjbl~(?3Wa*NzQH>4nsM$3}Ul>pX1xC0oF3TZXe7=V!9!n?WgvH|R zpbruczmB%z=zkZ>=1R|gXwGThLELqD5KCUhtiRGT*JwKIvzbzV%ZU!e!VcNHSSX3> zObH|oohc8nvQZ2}q??C}@>!fe3gH+HF@4(qWqi>;ag~md#D;cl8&gQb^?2a@5cikT z=7r78@&5gV3Ggc9f=<<8v~yz`NcEGvbX1V_`IL(&+Z>LB zM~$ok2qXzod@1$TEl*U~H$V5g$er{Uj^($sWb7Nr{gsIbE(`$LRGECTOraXiU%=uq z0zvpi1S%)RxTjzoVcR4#10)fs()4Mtsa@e?9j)Bk!LsYyXIZga2q7d%`vQE!V@<1Y zmkpH3LeXJNO9f7l>F84g;huc=4nk(UnU}RLZmYk2TtB#lv34K(?8~gyx-mN%g=U44 zOPdr_!j-;IEbe|l9-buuKEy^Q9MLjSKG$S6dz)!U_32{1)N}L)3+COmlg=nY1@od$ zJ<0z-B%sisAR1yh>z-RfQQb6M4i-d#vxvb~f69M{JLPZv1JSCh1$gQ*LxOF-tH9!k zbQ0ZW)S7)qCSF|=2`q_A3}OHBNBueZwTTz^ar~gz#2KA74&&D)KHt~m4F_nK<^*7_ z!!pN@xiGkq%>1N(rNxw$zu-=1t*IpAy$ z4~dD0w%9;E?(greVWZ3(o9ux`elM>Rek#0 zO=#-(4p5B+wFzlEU7^k{3EdL6sIp|K*>xrriI`}E8ze|z-$YpN`^_teL_7P`%e>IN z7tNiH619P+0Q1hBR|W#POOta)1|LkIRtgz zMJ9VOxXN#o)mlXS=u%`Q>~PBuKEmOWsIuQRp{y%!ty{fEyL0gV)$LQeL#pqX3L@SR zJ2Gb^E9+KVd?;joVOXlGie3?z6>(>u(i!(qGz(W( ze~^xj&IRF<98ypEis{Y_FoHn%C0bW(XeF#Lj=2WUEBqKNPPFppEH?_a3}-h906X}C zSYKcZFU`Om5YlWhh@ogzCn3NvuM~F9jOX|xe-X*!YL+#ceh_tJoHXz`aTnvSrOAZ| zOtdGz?QdT!oAJr3(XL2G(p%2X4{xEohU&vd_zQ(U%ihHOlKPWnb$&YYhx48?|R++>`5?sxvM?!;ru|9 zZ#nwuTK^S%ce<+ggdJBE&fRrXN7O!{nu`%q`M{2Ef_+IRad2cf01P9pST9AOK>y75c!9}~)Et^6$`&Nm{wzWcm4c0j9DF!xJTpGrMp3esI4D_iiDe`sswXSu{dQZE_`^A11 z?Z@Hw=65mVu^%X`>;$mciK}XiZ{xw7I_!t)S00^JuxdCXhIRO~S*lPS(S^je`DH4E zxbKNs8RL`N?gCQ@YSOU=>0FE#Ku#DRO7JA&fu-X8b;3!^#{=7`WsDXUxfUsE(FKSQ z&=N`A7IwLq%+vt(F;z+T=uZNl=@K4|E%p{p^o5(BGjsE|WOR`%8+XgGW8xJTFJc4L zVY#L`OdnSM{HyS$fX1)3_JuNNH1aDsDqi>CzCT5=kY5zV<~29bX)c^I8R5n&ymHkx zj(QC4t#mDK;2xi8O%V;C{HqDQeM64=b4@sa*N_K0a&ro4+8LY6cFHz< ze|!g}zF|tDrP=`+U7KwKl20gdW1%!iN>1=uxA|NZJ2peruBOj?RBPb~8G;s6xIi6- z?_odhafsxoxiBf zwZZ)c*)FLc0#wE~bXw0TPBYl+h9hs|DYr_B4LR_YL@S1hQs=p zNEh%_fUvWZCbJtaF#kP5=(O#{8|g&Kmz1&8{@Lufw^DhtvKx955~aqxi2C=)Z-!Kd z+m-u+#^U4(HYn6a1w652kO0bYBt&goyx(n?MR^kI+{Q?0Y{G~W2) z0dS3fuJ?SU(6ZDp=kUley%PK}K_;YQyK|U|?7t9SHiyIfpT4a_kUVIhH4PSaj@3mo z`z}|mHhx1Pq?@(3vTBb5HTXuFAzFZEt0D-fw_kd=XvwIUh3VXTm{wbDA~cESd5cI1 zd>6=&AvG3yu+)`9oxmfrDQ(1fzv(_0l?bp{a364dXLRRBI8kBv!KsL;brY)#E3`o{ z3TlWUsS0{Voci?6MejccG9x_KiqN>So*1{25r6BSl9jUyR}1TgXBLL7Pr6Wv~Nu47;fbiU7TbL}>qmtl36YSZ() zVf@nqW(As~#`@bIC+AxSw!O5Pocf&rYaCFm?Jd?XR)p#@{!|5^Ws@wd855)mI^8y{ zws+VvGXW6%xoj@JkGb=~%oJ~7m6+uhOv?bH+jJJ~eFgp+}~*^C+3>R-MY!IZQoabCh( zN(T+z@Oyc^C)WqQESmh{d!!T8zS(!wX=R#hEKxMXy(eg zZ+Cwm1a%?;RH$h2_ws|nRjn8ZY!>3gn+6Ep4xT|AeFox7!rac2Lw?jsz}JqPE?5JG zok0}q1P;cuzs%Yrze|&d$oTr<`Lx{fbq2OV=!3v-ODq(n?|WxuhtmwJBIoW^^FB+D z-?Ok9HBKc5@)L(W&vmI{prL?4^OE9TR)bELS=<>*w%&aKjzi*@;5#P3moG@dm{Eke zhE#Is;&=o|{2GWai}7LYEI+gmc^Kj4K7w7n)+9godg?yB2?xs}pF1<*!Sv?D~Uvbkgs9xx9s#6zBv9l@ox>d#H6eqw^KZO;Vg}h!q zI33^$4}yF*q+q{DsJsa(SsV!YQ#zi^IF9MQV6i{SiN4dWWCi%YQ+hNc1r!^+<(YnB zG62-D`M3w3Q2;@X{S`n`{QO>migDpz0FK`->sYDOESs6u>-~<}_XN_6><2g7U#XC{ z$#Ig;n{_yEMnlvx-lP*;ts#DHV0r8j518>~33?Ak#jocW>uk>6V||p7{4rov#RS9c zdPD6r`qF1om9r!zS4Jk1>7fn#GCnmD=JIt1Na`X)=*LP7R!3XATgk`;&U*P<(0d z9p<0T&eYqQ9jot39FxpfuPSPYlfQ$s-*;+c1KL+cHIVcG5`H~^Ryu1Hk7%Nf$TCwR!SzG31@NHpm`mcp8v!wyWM49TjTxASJ-8JP*MTHLC}hF==PUOh8kaaXeGFGd<|e29vSDaS ztPeu&zv0^wN}Hahi`$pcDs~FVt2F;K!q}q*Y@{7i#stWfU`u2La4aerBKhV`^zG~j zJWvtZpcHIP7x*tfLSQcng6D(`HVp4=LWp_0Xt=2wEHjK)!DSz_Z?5J@>awRyk?azj zU-kdSs~cp))*pfJ_q7u`IsCq8F|OShB~D56S(Mwwlt?{yURE7#eI&WcpVq(@9Fd~g zeUiD!a4w51Nj(YzLnau+O3MDub|?loF0=<#jLztAM>PruE7yNDD0L}y=Ayuc?^?Ni zf~%GK=iEhn2}xKp7GonJx!JpDmDsco$|$XtRdUDwbM9$9s7x9-of2nKNj~?b@UOKz z9{`=Irz^ba-c&1vSQxSh;I2`cKc8-4)aCy%#bam;3_8vSJ-jw`_}lyukEC~z00EbC zI*dU3F21A)dSZr{qA5QF+{a%D`h#?8o%M?)*hWxuqnQD(TpcmfNq&UN$BmB)0!r8) zxno@Q?$_D&*4(rW6b+?-Y^5|*P`DHmJ%pI<6*yP)o}2^?>d7P#bd2j=vvx2mfLW@R zQLD`%buR*}nzNYNf%68w-D$7%v|=bXg1mYrdZy~}(@RRZ-U+Gx=nmCjVxr5Ag# zLw3R29-MHJl|`mRxj#sv@EfyR#-q>BE-XFEENbV$#dWM?!VjU8~kKZsd@G=HPrI{HiqN&j<92*-3$^M*;n@rG*i! zvi#?j;lc5w>@+r!6*CVUrN9as=S3?(ZBT979$5R#ZpPm?2VjIyQcEFp9orGR>f;G? zK<~FiYY6ow-&}|v7k?+03TC++so$)2~rN``u z>N%j$AbNQLX_!evzG8abf=15260vIXdz7K^a$YS)iw{@x5<|Rr#ii|ov=LJ{eu>dZYe_ip$ZuzvRu1dpjQK1BvP zH~m#t=2_wy>9+YkdNF-z` zQ*#7=^r%R*pIi2AI`>n9>(QJVE1k8?Ilav<)NUjW^O$}^yZZ{_Uwn!4Fq1`aslX;Y zj`XDIm`E1sz|wShA=?a@ZGKDSMU#Z3$E!1nZ)g^Eg3ZDoSN6@RXrGVCHvMIauS7d> zuJltXf9)LdTWdF!n%-iA9b#2$W#i??K)zYho^((ZqluvhAr@{H{diy0%@-~VW zKYC|2Ma)2^=skdLT@ZVqJfiCDqS@~qIGexL(BKy6Aw9ch0hoHN&E+m3*uka9+AIh3gTWdSe~W({-&^oFw`!j7$DcsF$7`pO?kRMK<9h=SV?cmyJIe`$4|zoI(6u9#qY9zM?#zNe^!Dl2>Z^dH`>`wSY# ztU;V*+g0R0DH6EnJA$U{QL&T~&s{`smeC2I-5mzv=v$l@iF;yN0hMibU=CG^e>J;+9k`Si9PzLaj$>}QKI6lWmO_o+_( zmhxA*0|-Na`+*J1qEMIXZf9rb#;pcOw>EDeDjb!|GumQ2!1ac;YqU|X;F@l1_lemzTN0J|U zFJF(kO21aHg)*KfuKT=BA{VDkOvlx(b{f|A9D69_BHUm#S$F>~`Mt@GesjLp3;reY zP~q>6Tt;`XkjqV?i7lqPbWGh`y<7dq<}pDHl-dDA4QG6`QDq)+vq_&HfW!}P6Cp4d zt>Qnli5ri*I1ILEOGD~3Y!@2^Jmcy1xDXmKolC?at}_6;neEfca0rLHT}NLpoUYh` zDbCtfZnYN&>}m-(F{5d1=)bBuZ?OcP`GmsQV@kn%JMJUIep`Avon#8=ATpEo-@hg& z12f-)R=HCD%pUjvbWa|P!}u)=wInpZG*LHKrZDMeC>Qils^IyY)x;kDRs4c3!DDOG zAptSsf#1X>kSli|Qka@S)6O4un-2aKL?bcV;$*>KSxHovjrfZ^-+c#>;(42yj71K| zzRyFiLrwv$rPcNA{mtv=o(*JDA0kS93>OE0D{KMJzLk$cc_5dCLWnJcFJd6_>BpE< z?aW9;^!;arQcIjloW&YL+~MkNO&a>N=pmhg>{SM<@`a&VeUA`ay*P@R$_+WS2%r?_ zs&Z%c`>ie+%!I=Lz>$9$7a`-`hoc&*dl60^whsaQ;~9~@JYn1Oc_bmgVVyAzUOYgZ z#j{`#D_YZ)(wa5;qzR#zo4a|-ANJjBB90r4Iun3*BkMxw_Ti>SjhktsmR|BPCLt>9 zZ_3eQjweI*-8+HNt)$9^s|+10w@sU!PY{`#BnF!ULS=#{k0Zr5`yOS?p8PfWbKT`6 z@T+PeRJ4`fj5t8bMs)0>o9|C>mBTlfQ*nFG#Rri-Q7}E}+eaz`LmO!`Y_pHkoAruu z`&!5VNnA3IG$}Pz)V&pt&AF!$E{J-;or3vWv3&Sl&9KzG+ae73Zf}=aP*SCI1{?0T z9SAC)W(?DSKOkcmW$(K5Bl?c@(5#>J#j@eq#ctX~$TIjkl>Wrfv%Ey+bl1Z-v?NxJ zwZ9!ae-MsHPUx&_W22?9$mCE%&~lzVG?hDXM%~gXGk+Q!Jf0BspkMWxy;^!n<6JIrSYjv z6F%~$8)0^qbUho9Sdf97b_n({$;|XH9-RHrohHuPcro@03KEPFejN&q?&nJFoIQY; zSI#uL6>2^^yOR!51OLO65xGas55dPG;3=uQ35ZYW04#+~byXQf^7Vq`G z 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 Pe7HEdAEg|=c=LY&YVNkY literal 0 HcmV?d00001 diff --git a/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png new file mode 100644 index 0000000000000000000000000000000000000000..13b35eba55c6dabc3aac36f33d859266c18fa0d0 GIT binary patch literal 5680 zcmaiYXH?Tqu=Xz`p-L#B_gI#0we$cm_HcmYFP$?wjD#BaCN4mzC5#`>w9y6=ThxrYZc0WPXprg zYjB`UsV}0=eUtY$(P6YW}npdd;%9pi?zS3k-nqCob zSX_AQEf|=wYT3r?f!*Yt)ar^;l3Sro{z(7deUBPd2~(SzZ-s@0r&~Km2S?8r##9-< z)2UOSVaHqq6}%sA9Ww;V2LG=PnNAh6mA2iWOuV7T_lRDR z&N8-eN=U)-T|;wo^Wv=34wtV0g}sAAe}`Ph@~!|<;z7*K8(qkX0}o=!(+N*UWrkEja*$_H6mhK1u{P!AC39} z|3+Z(mAOq#XRYS)TLoHv<)d%$$I@+x+2)V{@o~~J-!YUI-Q9%!Ldi4Op&Lw&B>jj* zwAgC#Y>gbIqv!d|J5f!$dbCXoq(l3GR(S>(rtZ~Z*agXMMKN!@mWT_vmCbSd3dUUm z4M&+gz?@^#RRGal%G3dDvj7C5QTb@9+!MG+>0dcjtZEB45c+qx*c?)d<%htn1o!#1 zpIGonh>P1LHu3s)fGFF-qS}AXjW|M*2Xjkh7(~r(lN=o#mBD9?jt74=Rz85I4Nfx_ z7Z)q?!};>IUjMNM6ee2Thq7))a>My?iWFxQ&}WvsFP5LP+iGz+QiYek+K1`bZiTV- zHHYng?ct@Uw5!gquJ(tEv1wTrRR7cemI>aSzLI^$PxW`wL_zt@RSfZ1M3c2sbebM* ze0=;sy^!90gL~YKISz*x;*^~hcCoO&CRD)zjT(A2b_uRue=QXFe5|!cf0z1m!iwv5GUnLw9Dr*Ux z)3Lc!J@Ei;&&yxGpf2kn@2wJ2?t6~obUg;?tBiD#uo$SkFIasu+^~h33W~`r82rSa ztyE;ehFjC2hjpJ-e__EH&z?!~>UBb=&%DS>NT)1O3Isn-!SElBV2!~m6v0$vx^a<@ISutdTk1@?;i z<8w#b-%|a#?e5(n@7>M|v<<0Kpg?BiHYMRe!3Z{wYc2hN{2`6(;q`9BtXIhVq6t~KMH~J0~XtUuT06hL8c1BYZWhN zk4F2I;|za*R{ToHH2L?MfRAm5(i1Ijw;f+0&J}pZ=A0;A4M`|10ZskA!a4VibFKn^ zdVH4OlsFV{R}vFlD~aA4xxSCTTMW@Gws4bFWI@xume%smAnuJ0b91QIF?ZV!%VSRJ zO7FmG!swKO{xuH{DYZ^##gGrXsUwYfD0dxXX3>QmD&`mSi;k)YvEQX?UyfIjQeIm! z0ME3gmQ`qRZ;{qYOWt}$-mW*>D~SPZKOgP)T-Sg%d;cw^#$>3A9I(%#vsTRQe%moT zU`geRJ16l>FV^HKX1GG7fR9AT((jaVb~E|0(c-WYQscVl(z?W!rJp`etF$dBXP|EG z=WXbcZ8mI)WBN>3<@%4eD597FD5nlZajwh8(c$lum>yP)F}=(D5g1-WVZRc)(!E3} z-6jy(x$OZOwE=~{EQS(Tp`yV2&t;KBpG*XWX!yG+>tc4aoxbXi7u@O*8WWFOxUjcq z^uV_|*818$+@_{|d~VOP{NcNi+FpJ9)aA2So<7sB%j`$Prje&auIiTBb{oD7q~3g0 z>QNIwcz(V-y{Ona?L&=JaV5`o71nIsWUMA~HOdCs10H+Irew#Kr(2cn>orG2J!jvP zqcVX0OiF}c<)+5&p}a>_Uuv)L_j}nqnJ5a?RPBNi8k$R~zpZ33AA4=xJ@Z($s3pG9 zkURJY5ZI=cZGRt_;`hs$kE@B0FrRx(6K{`i1^*TY;Vn?|IAv9|NrN*KnJqO|8$e1& zb?OgMV&q5|w7PNlHLHF) zB+AK#?EtCgCvwvZ6*u|TDhJcCO+%I^@Td8CR}+nz;OZ*4Dn?mSi97m*CXXc=};!P`B?}X`F-B5v-%ACa8fo0W++j&ztmqK z;&A)cT4ob9&MxpQU41agyMU8jFq~RzXOAsy>}hBQdFVL%aTn~M>5t9go2j$i9=(rZ zADmVj;Qntcr3NIPPTggpUxL_z#5~C!Gk2Rk^3jSiDqsbpOXf^f&|h^jT4|l2ehPat zb$<*B+x^qO8Po2+DAmrQ$Zqc`1%?gp*mDk>ERf6I|42^tjR6>}4`F_Mo^N(~Spjcg z_uY$}zui*PuDJjrpP0Pd+x^5ds3TG#f?57dFL{auS_W8|G*o}gcnsKYjS6*t8VI<) zcjqTzW(Hk*t-Qhq`Xe+x%}sxXRerScbPGv8hlJ;CnU-!Nl=# zR=iTFf9`EItr9iAlAGi}i&~nJ-&+)Y| zMZigh{LXe)uR+4D_Yb+1?I93mHQ5{pId2Fq%DBr7`?ipi;CT!Q&|EO3gH~7g?8>~l zT@%*5BbetH)~%TrAF1!-!=)`FIS{^EVA4WlXYtEy^|@y@yr!C~gX+cp2;|O4x1_Ol z4fPOE^nj(}KPQasY#U{m)}TZt1C5O}vz`A|1J!-D)bR%^+=J-yJsQXDzFiqb+PT0! zIaDWWU(AfOKlSBMS};3xBN*1F2j1-_=%o($ETm8@oR_NvtMDVIv_k zlnNBiHU&h8425{MCa=`vb2YP5KM7**!{1O>5Khzu+5OVGY;V=Vl+24fOE;tMfujoF z0M``}MNnTg3f%Uy6hZi$#g%PUA_-W>uVCYpE*1j>U8cYP6m(>KAVCmbsDf39Lqv0^ zt}V6FWjOU@AbruB7MH2XqtnwiXS2scgjVMH&aF~AIduh#^aT1>*V>-st8%=Kk*{bL zzbQcK(l2~)*A8gvfX=RPsNnjfkRZ@3DZ*ff5rmx{@iYJV+a@&++}ZW+za2fU>&(4y`6wgMpQGG5Ah(9oGcJ^P(H< zvYn5JE$2B`Z7F6ihy>_49!6}(-)oZ(zryIXt=*a$bpIw^k?>RJ2 zQYr>-D#T`2ZWDU$pM89Cl+C<;J!EzHwn(NNnWpYFqDDZ_*FZ{9KQRcSrl5T>dj+eA zi|okW;6)6LR5zebZJtZ%6Gx8^=2d9>_670!8Qm$wd+?zc4RAfV!ZZ$jV0qrv(D`db zm_T*KGCh3CJGb(*X6nXzh!h9@BZ-NO8py|wG8Qv^N*g?kouH4%QkPU~Vizh-D3<@% zGomx%q42B7B}?MVdv1DFb!axQ73AUxqr!yTyFlp%Z1IAgG49usqaEbI_RnbweR;Xs zpJq7GKL_iqi8Md?f>cR?^0CA+Uk(#mTlGdZbuC*$PrdB$+EGiW**=$A3X&^lM^K2s zzwc3LtEs5|ho z2>U(-GL`}eNgL-nv3h7E<*<>C%O^=mmmX0`jQb6$mP7jUKaY4je&dCG{x$`0=_s$+ zSpgn!8f~ya&U@c%{HyrmiW2&Wzc#Sw@+14sCpTWReYpF9EQ|7vF*g|sqG3hx67g}9 zwUj5QP2Q-(KxovRtL|-62_QsHLD4Mu&qS|iDp%!rs(~ah8FcrGb?Uv^Qub5ZT_kn%I^U2rxo1DDpmN@8uejxik`DK2~IDi1d?%~pR7i#KTS zA78XRx<(RYO0_uKnw~vBKi9zX8VnjZEi?vD?YAw}y+)wIjIVg&5(=%rjx3xQ_vGCy z*&$A+bT#9%ZjI;0w(k$|*x{I1c!ECMus|TEA#QE%#&LxfGvijl7Ih!B2 z6((F_gwkV;+oSKrtr&pX&fKo3s3`TG@ye+k3Ov)<#J|p8?vKh@<$YE@YIU1~@7{f+ zydTna#zv?)6&s=1gqH<-piG>E6XW8ZI7&b@-+Yk0Oan_CW!~Q2R{QvMm8_W1IV8<+ zQTyy=(Wf*qcQubRK)$B;QF}Y>V6d_NM#=-ydM?%EPo$Q+jkf}*UrzR?Nsf?~pzIj$ z<$wN;7c!WDZ(G_7N@YgZ``l;_eAd3+;omNjlpfn;0(B7L)^;;1SsI6Le+c^ULe;O@ zl+Z@OOAr4$a;=I~R0w4jO`*PKBp?3K+uJ+Tu8^%i<_~bU!p%so z^sjol^slR`W@jiqn!M~eClIIl+`A5%lGT{z^mRbpv}~AyO%R*jmG_Wrng{B9TwIuS z0!@fsM~!57K1l0%{yy(#no}roy#r!?0wm~HT!vLDfEBs9x#`9yCKgufm0MjVRfZ=f z4*ZRc2Lgr(P+j2zQE_JzYmP0*;trl7{*N341Cq}%^M^VC3gKG-hY zmPT>ECyrhIoFhnMB^qpdbiuI}pk{qPbK^}0?Rf7^{98+95zNq6!RuV_zAe&nDk0;f zez~oXlE5%ve^TmBEt*x_X#fs(-En$jXr-R4sb$b~`nS=iOy|OVrph(U&cVS!IhmZ~ zKIRA9X%Wp1J=vTvHZ~SDe_JXOe9*fa zgEPf;gD^|qE=dl>Qkx3(80#SE7oxXQ(n4qQ#by{uppSKoDbaq`U+fRqk0BwI>IXV3 zD#K%ASkzd7u>@|pA=)Z>rQr@dLH}*r7r0ng zxa^eME+l*s7{5TNu!+bD{Pp@2)v%g6^>yj{XP&mShhg9GszNu4ITW=XCIUp2Xro&1 zg_D=J3r)6hp$8+94?D$Yn2@Kp-3LDsci)<-H!wCeQt$e9Jk)K86hvV^*Nj-Ea*o;G zsuhRw$H{$o>8qByz1V!(yV{p_0X?Kmy%g#1oSmlHsw;FQ%j9S#}ha zm0Nx09@jmOtP8Q+onN^BAgd8QI^(y!n;-APUpo5WVdmp8!`yKTlF>cqn>ag`4;o>i zl!M0G-(S*fm6VjYy}J}0nX7nJ$h`|b&KuW4d&W5IhbR;-)*9Y0(Jj|@j`$xoPQ=Cl literal 0 HcmV?d00001 diff --git a/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png b/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png new file mode 100644 index 0000000000000000000000000000000000000000..0a3f5fa40fb3d1e0710331a48de5d256da3f275d GIT binary patch literal 520 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 literal 0 HcmV?d00001 diff --git a/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png b/opus_flutter/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png new file mode 100644 index 0000000000000000000000000000000000000000..2f1632cfddf3d9dade342351e627a0a75609fb46 GIT binary patch literal 2218 zcmV;b2vzrqP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91K%fHv1ONa40RR91KmY&$07g+lumAuE6iGxuRCodHTWf3-RTMruyW6Fu zQYeUM04eX6D5c0FCjKKPrco1(K`<0SL=crI{PC3-^hZU0kQie$gh-5!7z6SH6Q0J% zqot*`H1q{R5fHFYS}dje@;kG=v$L0(yY0?wY2%*c?A&{2?!D*x?m71{of2gv!$5|C z3>qG_BW}7K_yUcT3A5C6QD<+{aq?x;MAUyAiJn#Jv8_zZtQ{P zTRzbL3U9!qVuZzS$xKU10KiW~Bgdcv1-!uAhQxf3a7q+dU6lj?yoO4Lq4TUN4}h{N z*fIM=SS8|C2$(T>w$`t@3Tka!(r!7W`x z-isCVgQD^mG-MJ;XtJuK3V{Vy72GQ83KRWsHU?e*wrhKk=ApIYeDqLi;JI1e zuvv}5^Dc=k7F7?nm3nIw$NVmU-+R>> zyqOR$-2SDpJ}Pt;^RkJytDVXNTsu|mI1`~G7yw`EJR?VkGfNdqK9^^8P`JdtTV&tX4CNcV4 z&N06nZa??Fw1AgQOUSE2AmPE@WO(Fvo`%m`cDgiv(fAeRA%3AGXUbsGw{7Q`cY;1BI#ac3iN$$Hw z0LT0;xc%=q)me?Y*$xI@GRAw?+}>=9D+KTk??-HJ4=A>`V&vKFS75@MKdSF1JTq{S zc1!^8?YA|t+uKigaq!sT;Z!&0F2=k7F0PIU;F$leJLaw2UI6FL^w}OG&!;+b%ya1c z1n+6-inU<0VM-Y_s5iTElq)ThyF?StVcebpGI znw#+zLx2@ah{$_2jn+@}(zJZ{+}_N9BM;z)0yr|gF-4=Iyu@hI*Lk=-A8f#bAzc9f z`Kd6K--x@t04swJVC3JK1cHY-Hq+=|PN-VO;?^_C#;coU6TDP7Bt`;{JTG;!+jj(` zw5cLQ-(Cz-Tlb`A^w7|R56Ce;Wmr0)$KWOUZ6ai0PhzPeHwdl0H(etP zUV`va_i0s-4#DkNM8lUlqI7>YQLf)(lz9Q3Uw`)nc(z3{m5ZE77Ul$V%m)E}3&8L0 z-XaU|eB~Is08eORPk;=<>!1w)Kf}FOVS2l&9~A+@R#koFJ$Czd%Y(ENTV&A~U(IPI z;UY+gf+&6ioZ=roly<0Yst8ck>(M=S?B-ys3mLdM&)ex!hbt+ol|T6CTS+Sc0jv(& z7ijdvFwBq;0a{%3GGwkDKTeG`b+lyj0jjS1OMkYnepCdoosNY`*zmBIo*981BU%%U z@~$z0V`OVtIbEx5pa|Tct|Lg#ZQf5OYMUMRD>Wdxm5SAqV2}3!ceE-M2 z@O~lQ0OiKQp}o9I;?uxCgYVV?FH|?Riri*U$Zi_`V2eiA>l zdSm6;SEm6#T+SpcE8Ro_f2AwxzI z44hfe^WE3!h@W3RDyA_H440cpmYkv*)6m1XazTqw%=E5Xv7^@^^T7Q2wxr+Z2kVYr + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/opus_flutter/example/macos/Runner/Configs/AppInfo.xcconfig b/opus_flutter/example/macos/Runner/Configs/AppInfo.xcconfig new file mode 100644 index 0000000..9a8eb71 --- /dev/null +++ b/opus_flutter/example/macos/Runner/Configs/AppInfo.xcconfig @@ -0,0 +1,14 @@ +// Application-level settings for the Runner target. +// +// This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the +// future. If not, the values below would default to using the project name when this becomes a +// 'flutter create' template. + +// The application's name. By default this is also the title of the Flutter window. +PRODUCT_NAME = opus_flutter_example + +// The application's bundle identifier +PRODUCT_BUNDLE_IDENTIFIER = eu.epnw.opusFlutterExample + +// The copyright displayed in application information +PRODUCT_COPYRIGHT = Copyright © 2026 eu.epnw. All rights reserved. diff --git a/opus_flutter/example/macos/Runner/Configs/Debug.xcconfig b/opus_flutter/example/macos/Runner/Configs/Debug.xcconfig new file mode 100644 index 0000000..36b0fd9 --- /dev/null +++ b/opus_flutter/example/macos/Runner/Configs/Debug.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Debug.xcconfig" +#include "Warnings.xcconfig" diff --git a/opus_flutter/example/macos/Runner/Configs/Release.xcconfig b/opus_flutter/example/macos/Runner/Configs/Release.xcconfig new file mode 100644 index 0000000..dff4f49 --- /dev/null +++ b/opus_flutter/example/macos/Runner/Configs/Release.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Release.xcconfig" +#include "Warnings.xcconfig" diff --git a/opus_flutter/example/macos/Runner/Configs/Warnings.xcconfig b/opus_flutter/example/macos/Runner/Configs/Warnings.xcconfig new file mode 100644 index 0000000..42bcbf4 --- /dev/null +++ b/opus_flutter/example/macos/Runner/Configs/Warnings.xcconfig @@ -0,0 +1,13 @@ +WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings +GCC_WARN_UNDECLARED_SELECTOR = YES +CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES +CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE +CLANG_WARN__DUPLICATE_METHOD_MATCH = YES +CLANG_WARN_PRAGMA_PACK = YES +CLANG_WARN_STRICT_PROTOTYPES = YES +CLANG_WARN_COMMA = YES +GCC_WARN_STRICT_SELECTOR_MATCH = YES +CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES +CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES +GCC_WARN_SHADOW = YES +CLANG_WARN_UNREACHABLE_CODE = YES diff --git a/opus_flutter/example/macos/Runner/DebugProfile.entitlements b/opus_flutter/example/macos/Runner/DebugProfile.entitlements new file mode 100644 index 0000000..dddb8a3 --- /dev/null +++ b/opus_flutter/example/macos/Runner/DebugProfile.entitlements @@ -0,0 +1,12 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.cs.allow-jit + + com.apple.security.network.server + + + diff --git a/opus_flutter/example/macos/Runner/Info.plist b/opus_flutter/example/macos/Runner/Info.plist new file mode 100644 index 0000000..4789daa --- /dev/null +++ b/opus_flutter/example/macos/Runner/Info.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) + NSHumanReadableCopyright + $(PRODUCT_COPYRIGHT) + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + diff --git a/opus_flutter/example/macos/Runner/MainFlutterWindow.swift b/opus_flutter/example/macos/Runner/MainFlutterWindow.swift new file mode 100644 index 0000000..3cc05eb --- /dev/null +++ b/opus_flutter/example/macos/Runner/MainFlutterWindow.swift @@ -0,0 +1,15 @@ +import Cocoa +import FlutterMacOS + +class MainFlutterWindow: NSWindow { + override func awakeFromNib() { + let flutterViewController = FlutterViewController() + let windowFrame = self.frame + self.contentViewController = flutterViewController + self.setFrame(windowFrame, display: true) + + RegisterGeneratedPlugins(registry: flutterViewController) + + super.awakeFromNib() + } +} diff --git a/opus_flutter/example/macos/Runner/Release.entitlements b/opus_flutter/example/macos/Runner/Release.entitlements new file mode 100644 index 0000000..852fa1a --- /dev/null +++ b/opus_flutter/example/macos/Runner/Release.entitlements @@ -0,0 +1,8 @@ + + + + + com.apple.security.app-sandbox + + + diff --git a/opus_flutter/example/macos/RunnerTests/RunnerTests.swift b/opus_flutter/example/macos/RunnerTests/RunnerTests.swift new file mode 100644 index 0000000..61f3bd1 --- /dev/null +++ b/opus_flutter/example/macos/RunnerTests/RunnerTests.swift @@ -0,0 +1,12 @@ +import Cocoa +import FlutterMacOS +import XCTest + +class RunnerTests: XCTestCase { + + func testExample() { + // If you add code to the Runner application, consider adding tests here. + // See https://developer.apple.com/documentation/xctest for more information about using XCTest. + } + +} diff --git a/opus_flutter/example/pubspec.lock b/opus_flutter/example/pubspec.lock index be89a47..7f342f0 100644 --- a/opus_flutter/example/pubspec.lock +++ b/opus_flutter/example/pubspec.lock @@ -1,94 +1,126 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: + args: + dependency: transitive + description: + name: args + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 + url: "https://pub.dev" + source: hosted + version: "2.7.0" async: dependency: transitive description: name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + sha256: e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37 url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.13.1" boolean_selector: dependency: transitive description: name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" characters: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: faf38497bda5ead2a8c7615f4f7939df04333478bf32e4173fcb06d428b5716b url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.1" clock: dependency: transitive description: name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" + code_assets: + dependency: transitive + description: + name: code_assets + sha256: bf394f466ba9205f1812a0433b392d6af280f155f56651eda7c18cc32ed493b8 + url: "https://pub.dev" + source: hosted + version: "1.2.1" collection: dependency: transitive description: name: collection - sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687 + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.17.2" + version: "1.19.1" cross_file: dependency: transitive description: name: cross_file - sha256: "445db18de832dba8d851e287aff8ccf169bed30d2e94243cb54c7d2f1ed2142c" + sha256: "28bb3ae56f117b5aec029d702a90f57d285cd975c3c5c281eaca38dbc47c5937" url: "https://pub.dev" source: hosted - version: "0.3.3+6" + version: "0.3.5+2" crypto: dependency: transitive description: name: crypto - sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf url: "https://pub.dev" source: hosted - version: "3.0.3" + version: "3.0.7" cupertino_icons: dependency: "direct main" description: name: cupertino_icons - sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d + sha256: "41e005c33bd814be4d3096aff55b1908d419fde52ca656c8c47719ec745873cd" url: "https://pub.dev" source: hosted - version: "1.0.6" + version: "1.0.9" fake_async: dependency: transitive description: name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.3" ffi: dependency: transitive description: name: ffi - sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878" + sha256: "6d7fd89431262d8f3125e81b50d3847a091d846eafcd4fdb88dd06f36d705a45" url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.2.0" + ffi_leak_tracker: + dependency: transitive + description: + name: ffi_leak_tracker + sha256: "4093d4ef9ca06ffe2786e73bfb25e22aa92112b9bb4ec941f11e3e6b61489a97" + url: "https://pub.dev" + source: hosted + version: "0.1.2" file: dependency: transitive description: name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be url: "https://pub.dev" source: hosted - version: "7.0.0" + version: "1.1.1" flutter: dependency: "direct main" description: flutter @@ -112,14 +144,38 @@ packages: description: flutter source: sdk version: "0.0.0" + hooks: + dependency: transitive + description: + name: hooks + sha256: "62ae9bb76d02526c7c2110a19b6e6ad788fe28d35e553e35efb02a41a46ab43a" + url: "https://pub.dev" + source: hosted + version: "2.0.1" inject_js: dependency: transitive description: name: inject_js - sha256: "3ab213e2c76375a611f57eb0044d32c6e18c5091d52510e7fe9f88f6bee83d19" + sha256: "849eacfd4b7e9182a7e743843a820d74bf1abcb692bdbe09e34ef0f753ad7227" url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.1.0" + jni: + dependency: transitive + description: + name: jni + sha256: c2230682d5bc2362c1c9e8d3c7f406d9cbba23ab3f2e203a025dd47e0fb2e68f + url: "https://pub.dev" + source: hosted + version: "1.0.0" + jni_flutter: + dependency: transitive + description: + name: jni_flutter + sha256: "8b59e590786050b1cd866677dddaf76b1ade5e7bc751abe04b86e84d379d3ba6" + url: "https://pub.dev" + source: hosted + version: "1.0.1" js: dependency: transitive description: @@ -128,6 +184,30 @@ packages: url: "https://pub.dev" source: hosted version: "0.6.7" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" + url: "https://pub.dev" + source: hosted + version: "11.0.2" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" + url: "https://pub.dev" + source: hosted + version: "3.0.10" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" lints: dependency: transitive description: @@ -136,38 +216,54 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.1" + logging: + dependency: transitive + description: + name: logging + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 + url: "https://pub.dev" + source: hosted + version: "1.3.0" matcher: dependency: transitive description: name: matcher - sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" + sha256: dc0b7dc7651697ea4ff3e69ef44b0407ea32c487a39fff6a4004fa585e901861 url: "https://pub.dev" source: hosted - version: "0.12.16" + version: "0.12.19" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" + sha256: "9c337007e82b1889149c82ed242ed1cb24a66044e30979c44912381e9be4c48b" url: "https://pub.dev" source: hosted - version: "0.5.0" + version: "0.13.0" meta: dependency: transitive description: name: meta - sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" + sha256: "1741988757a65eb6b36abe716829688cf01910bbf91c34354ff7ec1c3de2b349" url: "https://pub.dev" source: hosted - version: "1.9.1" + version: "1.18.0" mime: dependency: transitive description: name: mime - sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "2.0.0" + objective_c: + dependency: transitive + description: + name: objective_c + sha256: "6cb691c686fa2838c6deb34980d426145c2a5d537491cb83d463c33cdbc726ed" + url: "https://pub.dev" + source: hosted + version: "9.4.1" opus_dart: dependency: "direct main" description: @@ -182,7 +278,7 @@ packages: path: ".." relative: true source: path - version: "3.0.2" + version: "3.0.3" opus_flutter_android: dependency: "direct overridden" description: @@ -196,6 +292,13 @@ packages: path: "../../opus_flutter_ios" relative: true source: path + version: "3.0.1" + opus_flutter_macos: + dependency: "direct overridden" + description: + path: "../../opus_flutter_macos" + relative: true + source: path version: "3.0.0" opus_flutter_platform_interface: dependency: "direct overridden" @@ -218,38 +321,46 @@ packages: relative: true source: path version: "3.0.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc + url: "https://pub.dev" + source: hosted + version: "2.2.0" path: dependency: transitive description: name: path - sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.8.3" + version: "1.9.1" path_provider: dependency: transitive description: name: path_provider - sha256: a1aa8aaa2542a6bc57e381f132af822420216c80d4781f7aa085ca3229208aaa + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.5" path_provider_android: dependency: transitive description: name: path_provider_android - sha256: e595b98692943b4881b219f0a9e3945118d3c16bd7e2813f98ec6e532d905f72 + sha256: "69cbd515a62b94d32a7944f086b2f82b4ac40a1d45bebfc00813a430ab2dabcd" url: "https://pub.dev" source: hosted - version: "2.2.1" + version: "2.3.1" path_provider_foundation: dependency: transitive description: name: path_provider_foundation - sha256: "19314d595120f82aca0ba62787d58dde2cc6b5df7d2f0daf72489e38d1b57f2d" + sha256: "2a376b7d6392d80cd3705782d2caa734ca4727776db0b6ec36ef3f1855197699" url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.6.0" path_provider_linux: dependency: transitive description: @@ -262,26 +373,26 @@ packages: dependency: transitive description: name: path_provider_platform_interface - sha256: "94b1e0dd80970c1ce43d5d4e050a9918fce4f4a775e6142424c30a29a363265c" + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" path_provider_windows: dependency: transitive description: name: path_provider_windows - sha256: "8bc9f22eee8690981c22aa7fc602f5c85b497a6fb2ceb35ee5a5e5ed85ad8170" + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 url: "https://pub.dev" source: hosted - version: "2.2.1" + version: "2.3.0" platform: dependency: transitive description: name: platform - sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59" + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" url: "https://pub.dev" source: hosted - version: "3.1.3" + version: "3.1.6" platform_info: dependency: "direct main" description: @@ -294,151 +405,167 @@ packages: dependency: transitive description: name: plugin_platform_interface - sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" url: "https://pub.dev" source: hosted - version: "2.1.6" + version: "2.1.8" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + record_use: + dependency: transitive + description: + name: record_use + sha256: "2551bd8eecfe95d14ae75f6021ad0248be5c27f138c2ec12fcb52b500b3ba1ed" + url: "https://pub.dev" + source: hosted + version: "0.6.0" share_plus: dependency: "direct main" description: name: share_plus - sha256: f74fc3f1cbd99f39760182e176802f693fa0ec9625c045561cfad54681ea93dd + sha256: a857d8b1479250aff6b57a51b2c02d31ca05848d441817c43f1640c885c286c0 url: "https://pub.dev" source: hosted - version: "7.2.1" + version: "13.1.0" share_plus_platform_interface: dependency: transitive description: name: share_plus_platform_interface - sha256: df08bc3a07d01f5ea47b45d03ffcba1fa9cd5370fb44b3f38c70e42cced0f956 + sha256: "7f7ae28cf400d13f811e297ff37742dba83b79e0a6f5dce14eec0248274e6ce9" url: "https://pub.dev" source: hosted - version: "3.3.1" + version: "7.1.0" sky_engine: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" - url: "https://pub.dev" - source: hosted - version: "1.10.0" - sprintf: - dependency: transitive - description: - name: sprintf - sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" + sha256: "56a02f1f4cd1a2d96303c0144c93bd6d909eea6bee6bf5a0e0b685edbd4c47ab" url: "https://pub.dev" source: hosted - version: "7.0.0" + version: "1.10.2" stack_trace: dependency: transitive description: name: stack_trace - sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.4" string_scanner: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.4.1" term_glyph: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" test_api: dependency: transitive description: name: test_api - sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" + sha256: "949a932224383300f01be9221c39180316445ecb8e7547f70a41a35bf421fb9e" url: "https://pub.dev" source: hosted - version: "0.6.0" + version: "0.7.11" typed_data: dependency: transitive description: name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.4.0" url_launcher_linux: dependency: transitive description: name: url_launcher_linux - sha256: "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd" + sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a url: "https://pub.dev" source: hosted - version: "3.1.0" + version: "3.2.2" url_launcher_platform_interface: dependency: transitive description: name: url_launcher_platform_interface - sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50" + sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.3.2" url_launcher_web: dependency: transitive description: name: url_launcher_web - sha256: "7fd2f55fe86cea2897b963e864dc01a7eb0719ecc65fcef4c1cc3d686d718bb2" + sha256: "85c81589622fbc87c1c683aaea164d3604a7777495a79d91e39ffcdec39ddb34" url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.4.3" url_launcher_windows: dependency: transitive description: name: url_launcher_windows - sha256: "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc" + sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f" url: "https://pub.dev" source: hosted - version: "3.1.0" + version: "3.1.5" uuid: dependency: transitive description: name: uuid - sha256: b715b8d3858b6fa9f68f87d20d98830283628014750c2b09b6f516c1da4af2a7 + sha256: "1fef9e8e11e2991bb773070d4656b7bd5d850967a2456cfc83cf47925ba79489" url: "https://pub.dev" source: hosted - version: "4.1.0" + version: "4.5.3" vector_math: dependency: transitive description: name: vector_math - sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.2.0" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "0016aef94fc66495ac78af5859181e3f3bf2026bd8eecc72b9565601e19ab360" + url: "https://pub.dev" + source: hosted + version: "15.2.0" web: dependency: transitive description: name: web - sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" url: "https://pub.dev" source: hosted - version: "0.1.4-beta" + version: "1.1.1" web_ffi: dependency: transitive description: @@ -451,18 +578,26 @@ packages: dependency: transitive description: name: win32 - sha256: "350a11abd2d1d97e0cc7a28a81b781c08002aa2864d9e3f192ca0ffa18b06ed3" + sha256: ba6f4bba816c8d7e3c1580e170f3786d216951cc6b94babc3b814c08d2cb2738 url: "https://pub.dev" source: hosted - version: "5.0.9" + version: "6.3.0" xdg_directories: dependency: transitive description: name: xdg_directories - sha256: "589ada45ba9e39405c198fe34eb0f607cddb2108527e658136120892beac46d2" + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" url: "https://pub.dev" source: hosted - version: "1.0.3" + version: "1.1.0" + yaml: + dependency: transitive + description: + name: yaml + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" + source: hosted + version: "3.1.3" sdks: - dart: ">=3.1.3 <4.0.0" - flutter: ">=3.13.0" + dart: ">=3.10.3 <4.0.0" + flutter: ">=3.38.4" diff --git a/opus_flutter/example/pubspec.yaml b/opus_flutter/example/pubspec.yaml index 903ed7c..cce14d1 100644 --- a/opus_flutter/example/pubspec.yaml +++ b/opus_flutter/example/pubspec.yaml @@ -10,7 +10,7 @@ dependencies: opus_dart: ^3.0.1 flutter: sdk: flutter - share_plus: ^7.2.1 + share_plus: ^13.1.0 opus_flutter: path: ../ cupertino_icons: ^1.0.6 @@ -20,6 +20,8 @@ dependency_overrides: path: ../../opus_flutter_android opus_flutter_ios: path: ../../opus_flutter_ios + opus_flutter_macos: + path: ../../opus_flutter_macos opus_flutter_platform_interface: path: ../../opus_flutter_platform_interface opus_flutter_web: diff --git a/opus_flutter/example/windows/flutter/generated_plugins.cmake b/opus_flutter/example/windows/flutter/generated_plugins.cmake index 01d3836..4b61cfd 100644 --- a/opus_flutter/example/windows/flutter/generated_plugins.cmake +++ b/opus_flutter/example/windows/flutter/generated_plugins.cmake @@ -8,6 +8,7 @@ list(APPEND FLUTTER_PLUGIN_LIST ) list(APPEND FLUTTER_FFI_PLUGIN_LIST + jni ) set(PLUGIN_BUNDLED_LIBRARIES) diff --git a/opus_flutter/lib/src/opus_flutter_ffi.dart b/opus_flutter/lib/src/opus_flutter_ffi.dart index f47624e..375aaa8 100644 --- a/opus_flutter/lib/src/opus_flutter_ffi.dart +++ b/opus_flutter/lib/src/opus_flutter_ffi.dart @@ -2,8 +2,9 @@ import 'dart:io' show Platform; import 'package:opus_flutter_android/opus_flutter_android.dart'; import 'package:opus_flutter_ios/opus_flutter_ios.dart'; -import 'package:opus_flutter_windows/opus_flutter_windows.dart'; +import 'package:opus_flutter_macos/opus_flutter_macos.dart'; import 'package:opus_flutter_platform_interface/opus_flutter_platform_interface.dart'; +import 'package:opus_flutter_windows/opus_flutter_windows.dart'; // A workaround for flutter/flutter#52267 // TODO: revise once the issue got resolved @@ -16,6 +17,10 @@ void _flutterIssue52267Workaround() { if (!(OpusFlutterPlatform.instance is OpusFlutterIOS)) { OpusFlutterPlatform.instance = new OpusFlutterIOS(); } + } else if (Platform.isMacOS) { + if (!(OpusFlutterPlatform.instance is OpusFlutterMacOS)) { + OpusFlutterPlatform.instance = new OpusFlutterMacOS(); + } } } diff --git a/opus_flutter/pubspec.yaml b/opus_flutter/pubspec.yaml index dc7e271..617a9de 100644 --- a/opus_flutter/pubspec.yaml +++ b/opus_flutter/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/EPNW/opus_flutter/tree/master/opus_flutter version: 3.0.3 environment: - sdk: ">=2.12.0 <3.0.0" + sdk: ">=2.12.0 <4.0.0" flutter: ">=2.0.0" dependencies: @@ -13,6 +13,7 @@ dependencies: opus_flutter_platform_interface: ^3.0.0 opus_flutter_android: ^3.0.1 opus_flutter_ios: ^3.0.1 + opus_flutter_macos: ^3.0.0 opus_flutter_windows: ^3.0.0 opus_flutter_web: ^3.0.3 @@ -23,7 +24,9 @@ flutter: default_package: opus_flutter_android ios: default_package: opus_flutter_ios + macos: + default_package: opus_flutter_macos windows: default_package: opus_flutter_windows web: - default_package: opus_flutter_web \ No newline at end of file + default_package: opus_flutter_web diff --git a/opus_flutter_ios/ios/opus_flutter_ios.podspec b/opus_flutter_ios/ios/opus_flutter_ios.podspec index b7eb030..ccd4a86 100644 --- a/opus_flutter_ios/ios/opus_flutter_ios.podspec +++ b/opus_flutter_ios/ios/opus_flutter_ios.podspec @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.dependency 'Flutter' s.platform = :ios, '13.0' - s.vendored_frameworks = 'opus.xcframework' + s.vendored_frameworks = 'opus_flutter_ios/opus.xcframework' # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/opus_flutter_ios/ios/opus_flutter_ios/Package.swift b/opus_flutter_ios/ios/opus_flutter_ios/Package.swift new file mode 100644 index 0000000..8722a0c --- /dev/null +++ b/opus_flutter_ios/ios/opus_flutter_ios/Package.swift @@ -0,0 +1,28 @@ +// swift-tools-version: 5.9 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "opus_flutter_ios", + platforms: [ + .iOS("13.0") + ], + products: [ + .library(name: "opus-flutter-ios", targets: ["opus_flutter_ios"]) + ], + dependencies: [ + .package(name: "FlutterFramework", path: "../FlutterFramework") + ], + targets: [ + .target( + name: "opus_flutter_ios", + dependencies: [ + .product(name: "FlutterFramework", package: "FlutterFramework"), + "opus" + ], + path: "Sources/opus_flutter_ios" + ), + .binaryTarget(name: "opus", path: "opus.xcframework") + ] +) diff --git a/opus_flutter_ios/ios/opus_flutter_ios/Sources/opus_flutter_ios/OpusFlutterIosPlugin.swift b/opus_flutter_ios/ios/opus_flutter_ios/Sources/opus_flutter_ios/OpusFlutterIosPlugin.swift new file mode 100644 index 0000000..21b88cc --- /dev/null +++ b/opus_flutter_ios/ios/opus_flutter_ios/Sources/opus_flutter_ios/OpusFlutterIosPlugin.swift @@ -0,0 +1,7 @@ +import Flutter +import UIKit + +public class OpusFlutterIosPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) { + } +} diff --git a/opus_flutter_ios/ios/opus.xcframework/Info.plist b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/Info.plist similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/Info.plist rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/Info.plist diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus.h b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus.h similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus.h rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus.h diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_multistream.h b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_multistream.h similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_multistream.h rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_multistream.h diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Info.plist b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Info.plist similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Info.plist rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Info.plist diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/opus b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/opus similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-arm64/opus.framework/opus rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-arm64/opus.framework/opus diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus.h b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus.h similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus.h rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus.h diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_multistream.h b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_multistream.h similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_multistream.h rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_multistream.h diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Info.plist b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Info.plist similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Info.plist rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Info.plist diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap diff --git a/opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/opus b/opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/opus similarity index 100% rename from opus_flutter_ios/ios/opus.xcframework/ios-x86_64-simulator/opus.framework/opus rename to opus_flutter_ios/ios/opus_flutter_ios/opus.xcframework/ios-x86_64-simulator/opus.framework/opus diff --git a/opus_flutter_ios/pubspec.yaml b/opus_flutter_ios/pubspec.yaml index 07addbc..12b41bb 100644 --- a/opus_flutter_ios/pubspec.yaml +++ b/opus_flutter_ios/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/EPNW/opus_flutter/tree/master/opus_flutter_ios version: 3.0.1 environment: - sdk: ">=2.12.0 <3.0.0" + sdk: ">=2.12.0 <4.0.0" flutter: ">=2.0.0" dependencies: diff --git a/opus_flutter_macos/CHANGELOG.md b/opus_flutter_macos/CHANGELOG.md new file mode 100644 index 0000000..33654bc --- /dev/null +++ b/opus_flutter_macos/CHANGELOG.md @@ -0,0 +1,3 @@ +## 3.0.0 + +* Initial macOS implementation. diff --git a/opus_flutter_macos/LICENSE b/opus_flutter_macos/LICENSE new file mode 100644 index 0000000..5521f69 --- /dev/null +++ b/opus_flutter_macos/LICENSE @@ -0,0 +1,10 @@ +Copyright 2024 EPNW GmbH +Copyright 2021 Eric Prokop und Nils Wieler Hard- und Softwareentwicklung GbR + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/opus_flutter_macos/README.md b/opus_flutter_macos/README.md new file mode 100644 index 0000000..2cc36a7 --- /dev/null +++ b/opus_flutter_macos/README.md @@ -0,0 +1,38 @@ +# opus_flutter_macos + +The macOS implementation of [`opus_flutter`][1]. + +## Usage + +### Import the package + +This package has been endorsed, meaning that you only need to add `opus_flutter` +as a dependency in your `pubspec.yaml`. It will be automatically included in your app +when you depend on `package:opus_flutter`. + +This is what the above means to your `pubspec.yaml`: + +```yaml +... +dependencies: + ... + opus_flutter: ^3.0.0 + ... +``` + +If you wish to use the macOS package only, you can add `opus_flutter_macos` as a +dependency: + +```yaml +... +dependencies: + ... + opus_flutter_macos: ^3.0.0 + ... +``` + +## How opus is contained in this package + +A prebuilt macOS `opus.xcframework` is included for arm64 and x86_64. + +[1]: ../opus_flutter diff --git a/opus_flutter_macos/lib/opus_flutter_macos.dart b/opus_flutter_macos/lib/opus_flutter_macos.dart new file mode 100644 index 0000000..5a6792c --- /dev/null +++ b/opus_flutter_macos/lib/opus_flutter_macos.dart @@ -0,0 +1,29 @@ +import 'dart:async'; +import 'dart:ffi'; +import 'dart:io'; + +import 'package:opus_flutter_platform_interface/opus_flutter_platform_interface.dart'; + +/// An implementation of [OpusFlutterPlatform] for macOS. +class OpusFlutterMacOS extends OpusFlutterPlatform { + /// Registers the macOS implementation. + static void registerWith() { + OpusFlutterPlatform.instance = new OpusFlutterMacOS(); + } + + /// Opens the opus framework bundled with this plugin. + Future load() async { + final String executablePath = File( + Platform.resolvedExecutable, + ).resolveSymbolicLinksSync(); + final Directory contentsDirectory = File(executablePath).parent.parent; + final String frameworkPath = + '${contentsDirectory.path}/Frameworks/opus.framework/opus'; + + if (File(frameworkPath).existsSync()) { + return DynamicLibrary.open(frameworkPath); + } + + return DynamicLibrary.process(); + } +} diff --git a/opus_flutter_macos/macos/opus_flutter_macos.podspec b/opus_flutter_macos/macos/opus_flutter_macos.podspec new file mode 100644 index 0000000..2fd1361 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos.podspec @@ -0,0 +1,22 @@ +# +# To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html. +# Run `pod lib lint opus_flutter_macos.podspec` to validate before publishing. +# +Pod::Spec.new do |s| + s.name = 'opus_flutter_macos' + s.version = '0.0.1' + s.summary = 'libopus wrappers for flutter in macOS.' + s.description = <<-DESC + libopus wrappers for flutter in macOS. + DESC + s.homepage = 'https://epnw.eu' + s.license = { :file => '../LICENSE' } + s.author = { 'EPNW GmbH' => 'contact@epnw.eu' } + s.source = { :path => '.' } + s.source_files = 'opus_flutter_macos/Sources/opus_flutter_macos/**/*' + s.dependency 'FlutterMacOS' + s.platform = :osx, '10.15' + s.vendored_frameworks = 'opus_flutter_macos/opus.xcframework' + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } + s.swift_version = '5.0' +end diff --git a/opus_flutter_macos/macos/opus_flutter_macos/Package.swift b/opus_flutter_macos/macos/opus_flutter_macos/Package.swift new file mode 100644 index 0000000..b34a373 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/Package.swift @@ -0,0 +1,28 @@ +// swift-tools-version: 5.9 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "opus_flutter_macos", + platforms: [ + .macOS("10.15") + ], + products: [ + .library(name: "opus-flutter-macos", targets: ["opus_flutter_macos"]) + ], + dependencies: [ + .package(name: "FlutterFramework", path: "../FlutterFramework") + ], + targets: [ + .target( + name: "opus_flutter_macos", + dependencies: [ + .product(name: "FlutterFramework", package: "FlutterFramework"), + "opus" + ], + path: "Sources/opus_flutter_macos" + ), + .binaryTarget(name: "opus", path: "opus.xcframework") + ] +) diff --git a/opus_flutter_macos/macos/opus_flutter_macos/Sources/opus_flutter_macos/OpusFlutterMacosPlugin.swift b/opus_flutter_macos/macos/opus_flutter_macos/Sources/opus_flutter_macos/OpusFlutterMacosPlugin.swift new file mode 100644 index 0000000..1bcc2b1 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/Sources/opus_flutter_macos/OpusFlutterMacosPlugin.swift @@ -0,0 +1,7 @@ +import Cocoa +import FlutterMacOS + +public class OpusFlutterMacosPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) { + } +} diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/Info.plist b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/Info.plist new file mode 100644 index 0000000..9e1cdf1 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/Info.plist @@ -0,0 +1,28 @@ + + + + + AvailableLibraries + + + BinaryPath + opus.framework/Versions/A/opus + LibraryIdentifier + macos-arm64_x86_64 + LibraryPath + opus.framework + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + macos + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Headers b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Modules b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Modules new file mode 120000 index 0000000..5736f31 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Modules @@ -0,0 +1 @@ +Versions/Current/Modules \ No newline at end of file diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Resources b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus.h b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus.h new file mode 100644 index 0000000..d282f21 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus.h @@ -0,0 +1,981 @@ +/* Copyright (c) 2010-2011 Xiph.Org Foundation, Skype Limited + Written by Jean-Marc Valin and Koen Vos */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + * @file opus.h + * @brief Opus reference implementation API + */ + +#ifndef OPUS_H +#define OPUS_H + +#include "opus_types.h" +#include "opus_defines.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @mainpage Opus + * + * The Opus codec is designed for interactive speech and audio transmission over the Internet. + * It is designed by the IETF Codec Working Group and incorporates technology from + * Skype's SILK codec and Xiph.Org's CELT codec. + * + * The Opus codec is designed to handle a wide range of interactive audio applications, + * including Voice over IP, videoconferencing, in-game chat, and even remote live music + * performances. It can scale from low bit-rate narrowband speech to very high quality + * stereo music. Its main features are: + + * @li Sampling rates from 8 to 48 kHz + * @li Bit-rates from 6 kb/s to 510 kb/s + * @li Support for both constant bit-rate (CBR) and variable bit-rate (VBR) + * @li Audio bandwidth from narrowband to full-band + * @li Support for speech and music + * @li Support for mono and stereo + * @li Support for multichannel (up to 255 channels) + * @li Frame sizes from 2.5 ms to 60 ms + * @li Good loss robustness and packet loss concealment (PLC) + * @li Floating point and fixed-point implementation + * + * Documentation sections: + * @li @ref opus_encoder + * @li @ref opus_decoder + * @li @ref opus_repacketizer + * @li @ref opus_multistream + * @li @ref opus_libinfo + * @li @ref opus_custom + */ + +/** @defgroup opus_encoder Opus Encoder + * @{ + * + * @brief This page describes the process and functions used to encode Opus. + * + * Since Opus is a stateful codec, the encoding process starts with creating an encoder + * state. This can be done with: + * + * @code + * int error; + * OpusEncoder *enc; + * enc = opus_encoder_create(Fs, channels, application, &error); + * @endcode + * + * From this point, @c enc can be used for encoding an audio stream. An encoder state + * @b must @b not be used for more than one stream at the same time. Similarly, the encoder + * state @b must @b not be re-initialized for each frame. + * + * While opus_encoder_create() allocates memory for the state, it's also possible + * to initialize pre-allocated memory: + * + * @code + * int size; + * int error; + * OpusEncoder *enc; + * size = opus_encoder_get_size(channels); + * enc = malloc(size); + * error = opus_encoder_init(enc, Fs, channels, application); + * @endcode + * + * where opus_encoder_get_size() returns the required size for the encoder state. Note that + * future versions of this code may change the size, so no assuptions should be made about it. + * + * The encoder state is always continuous in memory and only a shallow copy is sufficient + * to copy it (e.g. memcpy()) + * + * It is possible to change some of the encoder's settings using the opus_encoder_ctl() + * interface. All these settings already default to the recommended value, so they should + * only be changed when necessary. The most common settings one may want to change are: + * + * @code + * opus_encoder_ctl(enc, OPUS_SET_BITRATE(bitrate)); + * opus_encoder_ctl(enc, OPUS_SET_COMPLEXITY(complexity)); + * opus_encoder_ctl(enc, OPUS_SET_SIGNAL(signal_type)); + * @endcode + * + * where + * + * @arg bitrate is in bits per second (b/s) + * @arg complexity is a value from 1 to 10, where 1 is the lowest complexity and 10 is the highest + * @arg signal_type is either OPUS_AUTO (default), OPUS_SIGNAL_VOICE, or OPUS_SIGNAL_MUSIC + * + * See @ref opus_encoderctls and @ref opus_genericctls for a complete list of parameters that can be set or queried. Most parameters can be set or changed at any time during a stream. + * + * To encode a frame, opus_encode() or opus_encode_float() must be called with exactly one frame (2.5, 5, 10, 20, 40 or 60 ms) of audio data: + * @code + * len = opus_encode(enc, audio_frame, frame_size, packet, max_packet); + * @endcode + * + * where + *
    + *
  • audio_frame is the audio data in opus_int16 (or float for opus_encode_float())
  • + *
  • frame_size is the duration of the frame in samples (per channel)
  • + *
  • packet is the byte array to which the compressed data is written
  • + *
  • max_packet is the maximum number of bytes that can be written in the packet (4000 bytes is recommended). + * Do not use max_packet to control VBR target bitrate, instead use the #OPUS_SET_BITRATE CTL.
  • + *
+ * + * opus_encode() and opus_encode_float() return the number of bytes actually written to the packet. + * The return value can be negative, which indicates that an error has occurred. If the return value + * is 2 bytes or less, then the packet does not need to be transmitted (DTX). + * + * Once the encoder state if no longer needed, it can be destroyed with + * + * @code + * opus_encoder_destroy(enc); + * @endcode + * + * If the encoder was created with opus_encoder_init() rather than opus_encoder_create(), + * then no action is required aside from potentially freeing the memory that was manually + * allocated for it (calling free(enc) for the example above) + * + */ + +/** Opus encoder state. + * This contains the complete state of an Opus encoder. + * It is position independent and can be freely copied. + * @see opus_encoder_create,opus_encoder_init + */ +typedef struct OpusEncoder OpusEncoder; + +/** Gets the size of an OpusEncoder structure. + * @param[in] channels int: Number of channels. + * This must be 1 or 2. + * @returns The size in bytes. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_encoder_get_size(int channels); + +/** + */ + +/** Allocates and initializes an encoder state. + * There are three coding modes: + * + * @ref OPUS_APPLICATION_VOIP gives best quality at a given bitrate for voice + * signals. It enhances the input signal by high-pass filtering and + * emphasizing formants and harmonics. Optionally it includes in-band + * forward error correction to protect against packet loss. Use this + * mode for typical VoIP applications. Because of the enhancement, + * even at high bitrates the output may sound different from the input. + * + * @ref OPUS_APPLICATION_AUDIO gives best quality at a given bitrate for most + * non-voice signals like music. Use this mode for music and mixed + * (music/voice) content, broadcast, and applications requiring less + * than 15 ms of coding delay. + * + * @ref OPUS_APPLICATION_RESTRICTED_LOWDELAY configures low-delay mode that + * disables the speech-optimized mode in exchange for slightly reduced delay. + * This mode can only be set on an newly initialized or freshly reset encoder + * because it changes the codec delay. + * + * This is useful when the caller knows that the speech-optimized modes will not be needed (use with caution). + * @param [in] Fs opus_int32: Sampling rate of input signal (Hz) + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param [in] channels int: Number of channels (1 or 2) in input signal + * @param [in] application int: Coding mode (@ref OPUS_APPLICATION_VOIP/@ref OPUS_APPLICATION_AUDIO/@ref OPUS_APPLICATION_RESTRICTED_LOWDELAY) + * @param [out] error int*: @ref opus_errorcodes + * @note Regardless of the sampling rate and number channels selected, the Opus encoder + * can switch to a lower audio bandwidth or number of channels if the bitrate + * selected is too low. This also means that it is safe to always use 48 kHz stereo input + * and let the encoder optimize the encoding. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusEncoder *opus_encoder_create( + opus_int32 Fs, + int channels, + int application, + int *error +); + +/** Initializes a previously allocated encoder state + * The memory pointed to by st must be at least the size returned by opus_encoder_get_size(). + * This is intended for applications which use their own allocator instead of malloc. + * @see opus_encoder_create(),opus_encoder_get_size() + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @param [in] st OpusEncoder*: Encoder state + * @param [in] Fs opus_int32: Sampling rate of input signal (Hz) + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param [in] channels int: Number of channels (1 or 2) in input signal + * @param [in] application int: Coding mode (OPUS_APPLICATION_VOIP/OPUS_APPLICATION_AUDIO/OPUS_APPLICATION_RESTRICTED_LOWDELAY) + * @retval #OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_EXPORT int opus_encoder_init( + OpusEncoder *st, + opus_int32 Fs, + int channels, + int application +) OPUS_ARG_NONNULL(1); + +/** Encodes an Opus frame. + * @param [in] st OpusEncoder*: Encoder state + * @param [in] pcm opus_int16*: Input signal (interleaved if 2 channels). length is frame_size*channels*sizeof(opus_int16) + * @param [in] frame_size int: Number of samples per channel in the + * input signal. + * This must be an Opus frame size for + * the encoder's sampling rate. + * For example, at 48 kHz the permitted + * values are 120, 240, 480, 960, 1920, + * and 2880. + * Passing in a duration of less than + * 10 ms (480 samples at 48 kHz) will + * prevent the encoder from using the LPC + * or hybrid modes. + * @param [out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_encode( + OpusEncoder *st, + const opus_int16 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes an Opus frame from floating point input. + * @param [in] st OpusEncoder*: Encoder state + * @param [in] pcm float*: Input in float format (interleaved if 2 channels), with a normal range of +/-1.0. + * Samples with a range beyond +/-1.0 are supported but will + * be clipped by decoders using the integer API and should + * only be used if it is known that the far end supports + * extended dynamic range. + * length is frame_size*channels*sizeof(float) + * @param [in] frame_size int: Number of samples per channel in the + * input signal. + * This must be an Opus frame size for + * the encoder's sampling rate. + * For example, at 48 kHz the permitted + * values are 120, 240, 480, 960, 1920, + * and 2880. + * Passing in a duration of less than + * 10 ms (480 samples at 48 kHz) will + * prevent the encoder from using the LPC + * or hybrid modes. + * @param [out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_encode_float( + OpusEncoder *st, + const float *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Frees an OpusEncoder allocated by opus_encoder_create(). + * @param[in] st OpusEncoder*: State to be freed. + */ +OPUS_EXPORT void opus_encoder_destroy(OpusEncoder *st); + +/** Perform a CTL function on an Opus encoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @param st OpusEncoder*: Encoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls or + * @ref opus_encoderctls. + * @see opus_genericctls + * @see opus_encoderctls + */ +OPUS_EXPORT int opus_encoder_ctl(OpusEncoder *st, int request, ...) OPUS_ARG_NONNULL(1); +/**@}*/ + +/** @defgroup opus_decoder Opus Decoder + * @{ + * + * @brief This page describes the process and functions used to decode Opus. + * + * The decoding process also starts with creating a decoder + * state. This can be done with: + * @code + * int error; + * OpusDecoder *dec; + * dec = opus_decoder_create(Fs, channels, &error); + * @endcode + * where + * @li Fs is the sampling rate and must be 8000, 12000, 16000, 24000, or 48000 + * @li channels is the number of channels (1 or 2) + * @li error will hold the error code in case of failure (or #OPUS_OK on success) + * @li the return value is a newly created decoder state to be used for decoding + * + * While opus_decoder_create() allocates memory for the state, it's also possible + * to initialize pre-allocated memory: + * @code + * int size; + * int error; + * OpusDecoder *dec; + * size = opus_decoder_get_size(channels); + * dec = malloc(size); + * error = opus_decoder_init(dec, Fs, channels); + * @endcode + * where opus_decoder_get_size() returns the required size for the decoder state. Note that + * future versions of this code may change the size, so no assuptions should be made about it. + * + * The decoder state is always continuous in memory and only a shallow copy is sufficient + * to copy it (e.g. memcpy()) + * + * To decode a frame, opus_decode() or opus_decode_float() must be called with a packet of compressed audio data: + * @code + * frame_size = opus_decode(dec, packet, len, decoded, max_size, 0); + * @endcode + * where + * + * @li packet is the byte array containing the compressed data + * @li len is the exact number of bytes contained in the packet + * @li decoded is the decoded audio data in opus_int16 (or float for opus_decode_float()) + * @li max_size is the max duration of the frame in samples (per channel) that can fit into the decoded_frame array + * + * opus_decode() and opus_decode_float() return the number of samples (per channel) decoded from the packet. + * If that value is negative, then an error has occurred. This can occur if the packet is corrupted or if the audio + * buffer is too small to hold the decoded audio. + * + * Opus is a stateful codec with overlapping blocks and as a result Opus + * packets are not coded independently of each other. Packets must be + * passed into the decoder serially and in the correct order for a correct + * decode. Lost packets can be replaced with loss concealment by calling + * the decoder with a null pointer and zero length for the missing packet. + * + * A single codec state may only be accessed from a single thread at + * a time and any required locking must be performed by the caller. Separate + * streams must be decoded with separate decoder states and can be decoded + * in parallel unless the library was compiled with NONTHREADSAFE_PSEUDOSTACK + * defined. + * + */ + +/** Opus decoder state. + * This contains the complete state of an Opus decoder. + * It is position independent and can be freely copied. + * @see opus_decoder_create,opus_decoder_init + */ +typedef struct OpusDecoder OpusDecoder; + +/** Gets the size of an OpusDecoder structure. + * @param [in] channels int: Number of channels. + * This must be 1 or 2. + * @returns The size in bytes. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decoder_get_size(int channels); + +/** Allocates and initializes a decoder state. + * @param [in] Fs opus_int32: Sample rate to decode at (Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param [in] channels int: Number of channels (1 or 2) to decode + * @param [out] error int*: #OPUS_OK Success or @ref opus_errorcodes + * + * Internally Opus stores data at 48000 Hz, so that should be the default + * value for Fs. However, the decoder can efficiently decode to buffers + * at 8, 12, 16, and 24 kHz so if for some reason the caller cannot use + * data at the full sample rate, or knows the compressed data doesn't + * use the full frequency range, it can request decoding at a reduced + * rate. Likewise, the decoder is capable of filling in either mono or + * interleaved stereo pcm buffers, at the caller's request. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusDecoder *opus_decoder_create( + opus_int32 Fs, + int channels, + int *error +); + +/** Initializes a previously allocated decoder state. + * The state must be at least the size returned by opus_decoder_get_size(). + * This is intended for applications which use their own allocator instead of malloc. @see opus_decoder_create,opus_decoder_get_size + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @param [in] st OpusDecoder*: Decoder state. + * @param [in] Fs opus_int32: Sampling rate to decode to (Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param [in] channels int: Number of channels (1 or 2) to decode + * @retval #OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_EXPORT int opus_decoder_init( + OpusDecoder *st, + opus_int32 Fs, + int channels +) OPUS_ARG_NONNULL(1); + +/** Decode an Opus packet. + * @param [in] st OpusDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len opus_int32: Number of bytes in payload* + * @param [out] pcm opus_int16*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(opus_int16) + * @param [in] frame_size Number of samples per channel of available space in \a pcm. + * If this is less than the maximum packet duration (120ms; 5760 for 48kHz), this function will + * not be capable of decoding some packets. In the case of PLC (data==NULL) or FEC (decode_fec=1), + * then frame_size needs to be exactly the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the next incoming packet. For the PLC and + * FEC cases, frame_size must be a multiple of 2.5 ms. + * @param [in] decode_fec int: Flag (0 or 1) to request that any in-band forward error correction data be + * decoded. If no such data is available, the frame is decoded as if it were lost. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decode( + OpusDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int16 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode an Opus packet with floating point output. + * @param [in] st OpusDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len opus_int32: Number of bytes in payload + * @param [out] pcm float*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(float) + * @param [in] frame_size Number of samples per channel of available space in \a pcm. + * If this is less than the maximum packet duration (120ms; 5760 for 48kHz), this function will + * not be capable of decoding some packets. In the case of PLC (data==NULL) or FEC (decode_fec=1), + * then frame_size needs to be exactly the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the next incoming packet. For the PLC and + * FEC cases, frame_size must be a multiple of 2.5 ms. + * @param [in] decode_fec int: Flag (0 or 1) to request that any in-band forward error correction data be + * decoded. If no such data is available the frame is decoded as if it were lost. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decode_float( + OpusDecoder *st, + const unsigned char *data, + opus_int32 len, + float *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Perform a CTL function on an Opus decoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @param st OpusDecoder*: Decoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls or + * @ref opus_decoderctls. + * @see opus_genericctls + * @see opus_decoderctls + */ +OPUS_EXPORT int opus_decoder_ctl(OpusDecoder *st, int request, ...) OPUS_ARG_NONNULL(1); + +/** Frees an OpusDecoder allocated by opus_decoder_create(). + * @param[in] st OpusDecoder*: State to be freed. + */ +OPUS_EXPORT void opus_decoder_destroy(OpusDecoder *st); + +/** Parse an opus packet into one or more frames. + * Opus_decode will perform this operation internally so most applications do + * not need to use this function. + * This function does not copy the frames, the returned pointers are pointers into + * the input packet. + * @param [in] data char*: Opus packet to be parsed + * @param [in] len opus_int32: size of data + * @param [out] out_toc char*: TOC pointer + * @param [out] frames char*[48] encapsulated frames + * @param [out] size opus_int16[48] sizes of the encapsulated frames + * @param [out] payload_offset int*: returns the position of the payload within the packet (in bytes) + * @returns number of frames + */ +OPUS_EXPORT int opus_packet_parse( + const unsigned char *data, + opus_int32 len, + unsigned char *out_toc, + const unsigned char *frames[48], + opus_int16 size[48], + int *payload_offset +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(5); + +/** Gets the bandwidth of an Opus packet. + * @param [in] data char*: Opus packet + * @retval OPUS_BANDWIDTH_NARROWBAND Narrowband (4kHz bandpass) + * @retval OPUS_BANDWIDTH_MEDIUMBAND Mediumband (6kHz bandpass) + * @retval OPUS_BANDWIDTH_WIDEBAND Wideband (8kHz bandpass) + * @retval OPUS_BANDWIDTH_SUPERWIDEBAND Superwideband (12kHz bandpass) + * @retval OPUS_BANDWIDTH_FULLBAND Fullband (20kHz bandpass) + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_bandwidth(const unsigned char *data) OPUS_ARG_NONNULL(1); + +/** Gets the number of samples per frame from an Opus packet. + * @param [in] data char*: Opus packet. + * This must contain at least one byte of + * data. + * @param [in] Fs opus_int32: Sampling rate in Hz. + * This must be a multiple of 400, or + * inaccurate results will be returned. + * @returns Number of samples per frame. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_samples_per_frame(const unsigned char *data, opus_int32 Fs) OPUS_ARG_NONNULL(1); + +/** Gets the number of channels from an Opus packet. + * @param [in] data char*: Opus packet + * @returns Number of channels + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_nb_channels(const unsigned char *data) OPUS_ARG_NONNULL(1); + +/** Gets the number of frames in an Opus packet. + * @param [in] packet char*: Opus packet + * @param [in] len opus_int32: Length of packet + * @returns Number of frames + * @retval OPUS_BAD_ARG Insufficient data was passed to the function + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_nb_frames(const unsigned char packet[], opus_int32 len) OPUS_ARG_NONNULL(1); + +/** Gets the number of samples of an Opus packet. + * @param [in] packet char*: Opus packet + * @param [in] len opus_int32: Length of packet + * @param [in] Fs opus_int32: Sampling rate in Hz. + * This must be a multiple of 400, or + * inaccurate results will be returned. + * @returns Number of samples + * @retval OPUS_BAD_ARG Insufficient data was passed to the function + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_nb_samples(const unsigned char packet[], opus_int32 len, opus_int32 Fs) OPUS_ARG_NONNULL(1); + +/** Gets the number of samples of an Opus packet. + * @param [in] dec OpusDecoder*: Decoder state + * @param [in] packet char*: Opus packet + * @param [in] len opus_int32: Length of packet + * @returns Number of samples + * @retval OPUS_BAD_ARG Insufficient data was passed to the function + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decoder_get_nb_samples(const OpusDecoder *dec, const unsigned char packet[], opus_int32 len) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2); + +/** Applies soft-clipping to bring a float signal within the [-1,1] range. If + * the signal is already in that range, nothing is done. If there are values + * outside of [-1,1], then the signal is clipped as smoothly as possible to + * both fit in the range and avoid creating excessive distortion in the + * process. + * @param [in,out] pcm float*: Input PCM and modified PCM + * @param [in] frame_size int Number of samples per channel to process + * @param [in] channels int: Number of channels + * @param [in,out] softclip_mem float*: State memory for the soft clipping process (one float per channel, initialized to zero) + */ +OPUS_EXPORT void opus_pcm_soft_clip(float *pcm, int frame_size, int channels, float *softclip_mem); + + +/**@}*/ + +/** @defgroup opus_repacketizer Repacketizer + * @{ + * + * The repacketizer can be used to merge multiple Opus packets into a single + * packet or alternatively to split Opus packets that have previously been + * merged. Splitting valid Opus packets is always guaranteed to succeed, + * whereas merging valid packets only succeeds if all frames have the same + * mode, bandwidth, and frame size, and when the total duration of the merged + * packet is no more than 120 ms. The 120 ms limit comes from the + * specification and limits decoder memory requirements at a point where + * framing overhead becomes negligible. + * + * The repacketizer currently only operates on elementary Opus + * streams. It will not manipualte multistream packets successfully, except in + * the degenerate case where they consist of data from a single stream. + * + * The repacketizing process starts with creating a repacketizer state, either + * by calling opus_repacketizer_create() or by allocating the memory yourself, + * e.g., + * @code + * OpusRepacketizer *rp; + * rp = (OpusRepacketizer*)malloc(opus_repacketizer_get_size()); + * if (rp != NULL) + * opus_repacketizer_init(rp); + * @endcode + * + * Then the application should submit packets with opus_repacketizer_cat(), + * extract new packets with opus_repacketizer_out() or + * opus_repacketizer_out_range(), and then reset the state for the next set of + * input packets via opus_repacketizer_init(). + * + * For example, to split a sequence of packets into individual frames: + * @code + * unsigned char *data; + * int len; + * while (get_next_packet(&data, &len)) + * { + * unsigned char out[1276]; + * opus_int32 out_len; + * int nb_frames; + * int err; + * int i; + * err = opus_repacketizer_cat(rp, data, len); + * if (err != OPUS_OK) + * { + * release_packet(data); + * return err; + * } + * nb_frames = opus_repacketizer_get_nb_frames(rp); + * for (i = 0; i < nb_frames; i++) + * { + * out_len = opus_repacketizer_out_range(rp, i, i+1, out, sizeof(out)); + * if (out_len < 0) + * { + * release_packet(data); + * return (int)out_len; + * } + * output_next_packet(out, out_len); + * } + * opus_repacketizer_init(rp); + * release_packet(data); + * } + * @endcode + * + * Alternatively, to combine a sequence of frames into packets that each + * contain up to TARGET_DURATION_MS milliseconds of data: + * @code + * // The maximum number of packets with duration TARGET_DURATION_MS occurs + * // when the frame size is 2.5 ms, for a total of (TARGET_DURATION_MS*2/5) + * // packets. + * unsigned char *data[(TARGET_DURATION_MS*2/5)+1]; + * opus_int32 len[(TARGET_DURATION_MS*2/5)+1]; + * int nb_packets; + * unsigned char out[1277*(TARGET_DURATION_MS*2/2)]; + * opus_int32 out_len; + * int prev_toc; + * nb_packets = 0; + * while (get_next_packet(data+nb_packets, len+nb_packets)) + * { + * int nb_frames; + * int err; + * nb_frames = opus_packet_get_nb_frames(data[nb_packets], len[nb_packets]); + * if (nb_frames < 1) + * { + * release_packets(data, nb_packets+1); + * return nb_frames; + * } + * nb_frames += opus_repacketizer_get_nb_frames(rp); + * // If adding the next packet would exceed our target, or it has an + * // incompatible TOC sequence, output the packets we already have before + * // submitting it. + * // N.B., The nb_packets > 0 check ensures we've submitted at least one + * // packet since the last call to opus_repacketizer_init(). Otherwise a + * // single packet longer than TARGET_DURATION_MS would cause us to try to + * // output an (invalid) empty packet. It also ensures that prev_toc has + * // been set to a valid value. Additionally, len[nb_packets] > 0 is + * // guaranteed by the call to opus_packet_get_nb_frames() above, so the + * // reference to data[nb_packets][0] should be valid. + * if (nb_packets > 0 && ( + * ((prev_toc & 0xFC) != (data[nb_packets][0] & 0xFC)) || + * opus_packet_get_samples_per_frame(data[nb_packets], 48000)*nb_frames > + * TARGET_DURATION_MS*48)) + * { + * out_len = opus_repacketizer_out(rp, out, sizeof(out)); + * if (out_len < 0) + * { + * release_packets(data, nb_packets+1); + * return (int)out_len; + * } + * output_next_packet(out, out_len); + * opus_repacketizer_init(rp); + * release_packets(data, nb_packets); + * data[0] = data[nb_packets]; + * len[0] = len[nb_packets]; + * nb_packets = 0; + * } + * err = opus_repacketizer_cat(rp, data[nb_packets], len[nb_packets]); + * if (err != OPUS_OK) + * { + * release_packets(data, nb_packets+1); + * return err; + * } + * prev_toc = data[nb_packets][0]; + * nb_packets++; + * } + * // Output the final, partial packet. + * if (nb_packets > 0) + * { + * out_len = opus_repacketizer_out(rp, out, sizeof(out)); + * release_packets(data, nb_packets); + * if (out_len < 0) + * return (int)out_len; + * output_next_packet(out, out_len); + * } + * @endcode + * + * An alternate way of merging packets is to simply call opus_repacketizer_cat() + * unconditionally until it fails. At that point, the merged packet can be + * obtained with opus_repacketizer_out() and the input packet for which + * opus_repacketizer_cat() needs to be re-added to a newly reinitialized + * repacketizer state. + */ + +typedef struct OpusRepacketizer OpusRepacketizer; + +/** Gets the size of an OpusRepacketizer structure. + * @returns The size in bytes. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_repacketizer_get_size(void); + +/** (Re)initializes a previously allocated repacketizer state. + * The state must be at least the size returned by opus_repacketizer_get_size(). + * This can be used for applications which use their own allocator instead of + * malloc(). + * It must also be called to reset the queue of packets waiting to be + * repacketized, which is necessary if the maximum packet duration of 120 ms + * is reached or if you wish to submit packets with a different Opus + * configuration (coding mode, audio bandwidth, frame size, or channel count). + * Failure to do so will prevent a new packet from being added with + * opus_repacketizer_cat(). + * @see opus_repacketizer_create + * @see opus_repacketizer_get_size + * @see opus_repacketizer_cat + * @param rp OpusRepacketizer*: The repacketizer state to + * (re)initialize. + * @returns A pointer to the same repacketizer state that was passed in. + */ +OPUS_EXPORT OpusRepacketizer *opus_repacketizer_init(OpusRepacketizer *rp) OPUS_ARG_NONNULL(1); + +/** Allocates memory and initializes the new repacketizer with + * opus_repacketizer_init(). + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusRepacketizer *opus_repacketizer_create(void); + +/** Frees an OpusRepacketizer allocated by + * opus_repacketizer_create(). + * @param[in] rp OpusRepacketizer*: State to be freed. + */ +OPUS_EXPORT void opus_repacketizer_destroy(OpusRepacketizer *rp); + +/** Add a packet to the current repacketizer state. + * This packet must match the configuration of any packets already submitted + * for repacketization since the last call to opus_repacketizer_init(). + * This means that it must have the same coding mode, audio bandwidth, frame + * size, and channel count. + * This can be checked in advance by examining the top 6 bits of the first + * byte of the packet, and ensuring they match the top 6 bits of the first + * byte of any previously submitted packet. + * The total duration of audio in the repacketizer state also must not exceed + * 120 ms, the maximum duration of a single packet, after adding this packet. + * + * The contents of the current repacketizer state can be extracted into new + * packets using opus_repacketizer_out() or opus_repacketizer_out_range(). + * + * In order to add a packet with a different configuration or to add more + * audio beyond 120 ms, you must clear the repacketizer state by calling + * opus_repacketizer_init(). + * If a packet is too large to add to the current repacketizer state, no part + * of it is added, even if it contains multiple frames, some of which might + * fit. + * If you wish to be able to add parts of such packets, you should first use + * another repacketizer to split the packet into pieces and add them + * individually. + * @see opus_repacketizer_out_range + * @see opus_repacketizer_out + * @see opus_repacketizer_init + * @param rp OpusRepacketizer*: The repacketizer state to which to + * add the packet. + * @param[in] data const unsigned char*: The packet data. + * The application must ensure + * this pointer remains valid + * until the next call to + * opus_repacketizer_init() or + * opus_repacketizer_destroy(). + * @param len opus_int32: The number of bytes in the packet data. + * @returns An error code indicating whether or not the operation succeeded. + * @retval #OPUS_OK The packet's contents have been added to the repacketizer + * state. + * @retval #OPUS_INVALID_PACKET The packet did not have a valid TOC sequence, + * the packet's TOC sequence was not compatible + * with previously submitted packets (because + * the coding mode, audio bandwidth, frame size, + * or channel count did not match), or adding + * this packet would increase the total amount of + * audio stored in the repacketizer state to more + * than 120 ms. + */ +OPUS_EXPORT int opus_repacketizer_cat(OpusRepacketizer *rp, const unsigned char *data, opus_int32 len) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2); + + +/** Construct a new packet from data previously submitted to the repacketizer + * state via opus_repacketizer_cat(). + * @param rp OpusRepacketizer*: The repacketizer state from which to + * construct the new packet. + * @param begin int: The index of the first frame in the current + * repacketizer state to include in the output. + * @param end int: One past the index of the last frame in the + * current repacketizer state to include in the + * output. + * @param[out] data const unsigned char*: The buffer in which to + * store the output packet. + * @param maxlen opus_int32: The maximum number of bytes to store in + * the output buffer. In order to guarantee + * success, this should be at least + * 1276 for a single frame, + * or for multiple frames, + * 1277*(end-begin). + * However, 1*(end-begin) plus + * the size of all packet data submitted to + * the repacketizer since the last call to + * opus_repacketizer_init() or + * opus_repacketizer_create() is also + * sufficient, and possibly much smaller. + * @returns The total size of the output packet on success, or an error code + * on failure. + * @retval #OPUS_BAD_ARG [begin,end) was an invalid range of + * frames (begin < 0, begin >= end, or end > + * opus_repacketizer_get_nb_frames()). + * @retval #OPUS_BUFFER_TOO_SMALL \a maxlen was insufficient to contain the + * complete output packet. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_repacketizer_out_range(OpusRepacketizer *rp, int begin, int end, unsigned char *data, opus_int32 maxlen) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Return the total number of frames contained in packet data submitted to + * the repacketizer state so far via opus_repacketizer_cat() since the last + * call to opus_repacketizer_init() or opus_repacketizer_create(). + * This defines the valid range of packets that can be extracted with + * opus_repacketizer_out_range() or opus_repacketizer_out(). + * @param rp OpusRepacketizer*: The repacketizer state containing the + * frames. + * @returns The total number of frames contained in the packet data submitted + * to the repacketizer state. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_repacketizer_get_nb_frames(OpusRepacketizer *rp) OPUS_ARG_NONNULL(1); + +/** Construct a new packet from data previously submitted to the repacketizer + * state via opus_repacketizer_cat(). + * This is a convenience routine that returns all the data submitted so far + * in a single packet. + * It is equivalent to calling + * @code + * opus_repacketizer_out_range(rp, 0, opus_repacketizer_get_nb_frames(rp), + * data, maxlen) + * @endcode + * @param rp OpusRepacketizer*: The repacketizer state from which to + * construct the new packet. + * @param[out] data const unsigned char*: The buffer in which to + * store the output packet. + * @param maxlen opus_int32: The maximum number of bytes to store in + * the output buffer. In order to guarantee + * success, this should be at least + * 1277*opus_repacketizer_get_nb_frames(rp). + * However, + * 1*opus_repacketizer_get_nb_frames(rp) + * plus the size of all packet data + * submitted to the repacketizer since the + * last call to opus_repacketizer_init() or + * opus_repacketizer_create() is also + * sufficient, and possibly much smaller. + * @returns The total size of the output packet on success, or an error code + * on failure. + * @retval #OPUS_BUFFER_TOO_SMALL \a maxlen was insufficient to contain the + * complete output packet. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_repacketizer_out(OpusRepacketizer *rp, unsigned char *data, opus_int32 maxlen) OPUS_ARG_NONNULL(1); + +/** Pads a given Opus packet to a larger size (possibly changing the TOC sequence). + * @param[in,out] data const unsigned char*: The buffer containing the + * packet to pad. + * @param len opus_int32: The size of the packet. + * This must be at least 1. + * @param new_len opus_int32: The desired size of the packet after padding. + * This must be at least as large as len. + * @returns an error code + * @retval #OPUS_OK \a on success. + * @retval #OPUS_BAD_ARG \a len was less than 1 or new_len was less than len. + * @retval #OPUS_INVALID_PACKET \a data did not contain a valid Opus packet. + */ +OPUS_EXPORT int opus_packet_pad(unsigned char *data, opus_int32 len, opus_int32 new_len); + +/** Remove all padding from a given Opus packet and rewrite the TOC sequence to + * minimize space usage. + * @param[in,out] data const unsigned char*: The buffer containing the + * packet to strip. + * @param len opus_int32: The size of the packet. + * This must be at least 1. + * @returns The new size of the output packet on success, or an error code + * on failure. + * @retval #OPUS_BAD_ARG \a len was less than 1. + * @retval #OPUS_INVALID_PACKET \a data did not contain a valid Opus packet. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_packet_unpad(unsigned char *data, opus_int32 len); + +/** Pads a given Opus multi-stream packet to a larger size (possibly changing the TOC sequence). + * @param[in,out] data const unsigned char*: The buffer containing the + * packet to pad. + * @param len opus_int32: The size of the packet. + * This must be at least 1. + * @param new_len opus_int32: The desired size of the packet after padding. + * This must be at least 1. + * @param nb_streams opus_int32: The number of streams (not channels) in the packet. + * This must be at least as large as len. + * @returns an error code + * @retval #OPUS_OK \a on success. + * @retval #OPUS_BAD_ARG \a len was less than 1. + * @retval #OPUS_INVALID_PACKET \a data did not contain a valid Opus packet. + */ +OPUS_EXPORT int opus_multistream_packet_pad(unsigned char *data, opus_int32 len, opus_int32 new_len, int nb_streams); + +/** Remove all padding from a given Opus multi-stream packet and rewrite the TOC sequence to + * minimize space usage. + * @param[in,out] data const unsigned char*: The buffer containing the + * packet to strip. + * @param len opus_int32: The size of the packet. + * This must be at least 1. + * @param nb_streams opus_int32: The number of streams (not channels) in the packet. + * This must be at least 1. + * @returns The new size of the output packet on success, or an error code + * on failure. + * @retval #OPUS_BAD_ARG \a len was less than 1 or new_len was less than len. + * @retval #OPUS_INVALID_PACKET \a data did not contain a valid Opus packet. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_multistream_packet_unpad(unsigned char *data, opus_int32 len, int nb_streams); + +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_H */ diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_custom.h b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_custom.h new file mode 100644 index 0000000..41f36bf --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_custom.h @@ -0,0 +1,342 @@ +/* Copyright (c) 2007-2008 CSIRO + Copyright (c) 2007-2009 Xiph.Org Foundation + Copyright (c) 2008-2012 Gregory Maxwell + Written by Jean-Marc Valin and Gregory Maxwell */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + @file opus_custom.h + @brief Opus-Custom reference implementation API + */ + +#ifndef OPUS_CUSTOM_H +#define OPUS_CUSTOM_H + +#include "opus_defines.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef CUSTOM_MODES +# define OPUS_CUSTOM_EXPORT OPUS_EXPORT +# define OPUS_CUSTOM_EXPORT_STATIC OPUS_EXPORT +#else +# define OPUS_CUSTOM_EXPORT +# ifdef OPUS_BUILD +# define OPUS_CUSTOM_EXPORT_STATIC static OPUS_INLINE +# else +# define OPUS_CUSTOM_EXPORT_STATIC +# endif +#endif + +/** @defgroup opus_custom Opus Custom + * @{ + * Opus Custom is an optional part of the Opus specification and + * reference implementation which uses a distinct API from the regular + * API and supports frame sizes that are not normally supported.\ Use + * of Opus Custom is discouraged for all but very special applications + * for which a frame size different from 2.5, 5, 10, or 20 ms is needed + * (for either complexity or latency reasons) and where interoperability + * is less important. + * + * In addition to the interoperability limitations the use of Opus custom + * disables a substantial chunk of the codec and generally lowers the + * quality available at a given bitrate. Normally when an application needs + * a different frame size from the codec it should buffer to match the + * sizes but this adds a small amount of delay which may be important + * in some very low latency applications. Some transports (especially + * constant rate RF transports) may also work best with frames of + * particular durations. + * + * Libopus only supports custom modes if they are enabled at compile time. + * + * The Opus Custom API is similar to the regular API but the + * @ref opus_encoder_create and @ref opus_decoder_create calls take + * an additional mode parameter which is a structure produced by + * a call to @ref opus_custom_mode_create. Both the encoder and decoder + * must create a mode using the same sample rate (fs) and frame size + * (frame size) so these parameters must either be signaled out of band + * or fixed in a particular implementation. + * + * Similar to regular Opus the custom modes support on the fly frame size + * switching, but the sizes available depend on the particular frame size in + * use. For some initial frame sizes on a single on the fly size is available. + */ + +/** Contains the state of an encoder. One encoder state is needed + for each stream. It is initialized once at the beginning of the + stream. Do *not* re-initialize the state for every frame. + @brief Encoder state + */ +typedef struct OpusCustomEncoder OpusCustomEncoder; + +/** State of the decoder. One decoder state is needed for each stream. + It is initialized once at the beginning of the stream. Do *not* + re-initialize the state for every frame. + @brief Decoder state + */ +typedef struct OpusCustomDecoder OpusCustomDecoder; + +/** The mode contains all the information necessary to create an + encoder. Both the encoder and decoder need to be initialized + with exactly the same mode, otherwise the output will be + corrupted. + @brief Mode configuration + */ +typedef struct OpusCustomMode OpusCustomMode; + +/** Creates a new mode struct. This will be passed to an encoder or + * decoder. The mode MUST NOT BE DESTROYED until the encoders and + * decoders that use it are destroyed as well. + * @param [in] Fs int: Sampling rate (8000 to 96000 Hz) + * @param [in] frame_size int: Number of samples (per channel) to encode in each + * packet (64 - 1024, prime factorization must contain zero or more 2s, 3s, or 5s and no other primes) + * @param [out] error int*: Returned error code (if NULL, no error will be returned) + * @return A newly created mode + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT OpusCustomMode *opus_custom_mode_create(opus_int32 Fs, int frame_size, int *error); + +/** Destroys a mode struct. Only call this after all encoders and + * decoders using this mode are destroyed as well. + * @param [in] mode OpusCustomMode*: Mode to be freed. + */ +OPUS_CUSTOM_EXPORT void opus_custom_mode_destroy(OpusCustomMode *mode); + + +#if !defined(OPUS_BUILD) || defined(CELT_ENCODER_C) + +/* Encoder */ +/** Gets the size of an OpusCustomEncoder structure. + * @param [in] mode OpusCustomMode *: Mode configuration + * @param [in] channels int: Number of channels + * @returns size + */ +OPUS_CUSTOM_EXPORT_STATIC OPUS_WARN_UNUSED_RESULT int opus_custom_encoder_get_size( + const OpusCustomMode *mode, + int channels +) OPUS_ARG_NONNULL(1); + +# ifdef CUSTOM_MODES +/** Initializes a previously allocated encoder state + * The memory pointed to by st must be the size returned by opus_custom_encoder_get_size. + * This is intended for applications which use their own allocator instead of malloc. + * @see opus_custom_encoder_create(),opus_custom_encoder_get_size() + * To reset a previously initialized state use the OPUS_RESET_STATE CTL. + * @param [in] st OpusCustomEncoder*: Encoder state + * @param [in] mode OpusCustomMode *: Contains all the information about the characteristics of + * the stream (must be the same characteristics as used for the + * decoder) + * @param [in] channels int: Number of channels + * @return OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT int opus_custom_encoder_init( + OpusCustomEncoder *st, + const OpusCustomMode *mode, + int channels +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2); +# endif +#endif + + +/** Creates a new encoder state. Each stream needs its own encoder + * state (can't be shared across simultaneous streams). + * @param [in] mode OpusCustomMode*: Contains all the information about the characteristics of + * the stream (must be the same characteristics as used for the + * decoder) + * @param [in] channels int: Number of channels + * @param [out] error int*: Returns an error code + * @return Newly created encoder state. +*/ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT OpusCustomEncoder *opus_custom_encoder_create( + const OpusCustomMode *mode, + int channels, + int *error +) OPUS_ARG_NONNULL(1); + + +/** Destroys a an encoder state. + * @param[in] st OpusCustomEncoder*: State to be freed. + */ +OPUS_CUSTOM_EXPORT void opus_custom_encoder_destroy(OpusCustomEncoder *st); + +/** Encodes a frame of audio. + * @param [in] st OpusCustomEncoder*: Encoder state + * @param [in] pcm float*: PCM audio in float format, with a normal range of +/-1.0. + * Samples with a range beyond +/-1.0 are supported but will + * be clipped by decoders using the integer API and should + * only be used if it is known that the far end supports + * extended dynamic range. There must be exactly + * frame_size samples per channel. + * @param [in] frame_size int: Number of samples per frame of input signal + * @param [out] compressed char *: The compressed data is written here. This may not alias pcm and must be at least maxCompressedBytes long. + * @param [in] maxCompressedBytes int: Maximum number of bytes to use for compressing the frame + * (can change from one frame to another) + * @return Number of bytes written to "compressed". + * If negative, an error has occurred (see error codes). It is IMPORTANT that + * the length returned be somehow transmitted to the decoder. Otherwise, no + * decoding is possible. + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_encode_float( + OpusCustomEncoder *st, + const float *pcm, + int frame_size, + unsigned char *compressed, + int maxCompressedBytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes a frame of audio. + * @param [in] st OpusCustomEncoder*: Encoder state + * @param [in] pcm opus_int16*: PCM audio in signed 16-bit format (native endian). + * There must be exactly frame_size samples per channel. + * @param [in] frame_size int: Number of samples per frame of input signal + * @param [out] compressed char *: The compressed data is written here. This may not alias pcm and must be at least maxCompressedBytes long. + * @param [in] maxCompressedBytes int: Maximum number of bytes to use for compressing the frame + * (can change from one frame to another) + * @return Number of bytes written to "compressed". + * If negative, an error has occurred (see error codes). It is IMPORTANT that + * the length returned be somehow transmitted to the decoder. Otherwise, no + * decoding is possible. + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_encode( + OpusCustomEncoder *st, + const opus_int16 *pcm, + int frame_size, + unsigned char *compressed, + int maxCompressedBytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Perform a CTL function on an Opus custom encoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @see opus_encoderctls + */ +OPUS_CUSTOM_EXPORT int opus_custom_encoder_ctl(OpusCustomEncoder * OPUS_RESTRICT st, int request, ...) OPUS_ARG_NONNULL(1); + + +#if !defined(OPUS_BUILD) || defined(CELT_DECODER_C) +/* Decoder */ + +/** Gets the size of an OpusCustomDecoder structure. + * @param [in] mode OpusCustomMode *: Mode configuration + * @param [in] channels int: Number of channels + * @returns size + */ +OPUS_CUSTOM_EXPORT_STATIC OPUS_WARN_UNUSED_RESULT int opus_custom_decoder_get_size( + const OpusCustomMode *mode, + int channels +) OPUS_ARG_NONNULL(1); + +/** Initializes a previously allocated decoder state + * The memory pointed to by st must be the size returned by opus_custom_decoder_get_size. + * This is intended for applications which use their own allocator instead of malloc. + * @see opus_custom_decoder_create(),opus_custom_decoder_get_size() + * To reset a previously initialized state use the OPUS_RESET_STATE CTL. + * @param [in] st OpusCustomDecoder*: Decoder state + * @param [in] mode OpusCustomMode *: Contains all the information about the characteristics of + * the stream (must be the same characteristics as used for the + * encoder) + * @param [in] channels int: Number of channels + * @return OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT_STATIC int opus_custom_decoder_init( + OpusCustomDecoder *st, + const OpusCustomMode *mode, + int channels +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2); + +#endif + + +/** Creates a new decoder state. Each stream needs its own decoder state (can't + * be shared across simultaneous streams). + * @param [in] mode OpusCustomMode: Contains all the information about the characteristics of the + * stream (must be the same characteristics as used for the encoder) + * @param [in] channels int: Number of channels + * @param [out] error int*: Returns an error code + * @return Newly created decoder state. + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT OpusCustomDecoder *opus_custom_decoder_create( + const OpusCustomMode *mode, + int channels, + int *error +) OPUS_ARG_NONNULL(1); + +/** Destroys a an decoder state. + * @param[in] st OpusCustomDecoder*: State to be freed. + */ +OPUS_CUSTOM_EXPORT void opus_custom_decoder_destroy(OpusCustomDecoder *st); + +/** Decode an opus custom frame with floating point output + * @param [in] st OpusCustomDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len int: Number of bytes in payload + * @param [out] pcm float*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(float) + * @param [in] frame_size Number of samples per channel of available space in *pcm. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_decode_float( + OpusCustomDecoder *st, + const unsigned char *data, + int len, + float *pcm, + int frame_size +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode an opus custom frame + * @param [in] st OpusCustomDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len int: Number of bytes in payload + * @param [out] pcm opus_int16*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(opus_int16) + * @param [in] frame_size Number of samples per channel of available space in *pcm. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_decode( + OpusCustomDecoder *st, + const unsigned char *data, + int len, + opus_int16 *pcm, + int frame_size +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Perform a CTL function on an Opus custom decoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @see opus_genericctls + */ +OPUS_CUSTOM_EXPORT int opus_custom_decoder_ctl(OpusCustomDecoder * OPUS_RESTRICT st, int request, ...) OPUS_ARG_NONNULL(1); + +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_CUSTOM_H */ diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_defines.h b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_defines.h new file mode 100644 index 0000000..d141418 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_defines.h @@ -0,0 +1,799 @@ +/* Copyright (c) 2010-2011 Xiph.Org Foundation, Skype Limited + Written by Jean-Marc Valin and Koen Vos */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + * @file opus_defines.h + * @brief Opus reference implementation constants + */ + +#ifndef OPUS_DEFINES_H +#define OPUS_DEFINES_H + +#include "opus_types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** @defgroup opus_errorcodes Error codes + * @{ + */ +/** No error @hideinitializer*/ +#define OPUS_OK 0 +/** One or more invalid/out of range arguments @hideinitializer*/ +#define OPUS_BAD_ARG -1 +/** Not enough bytes allocated in the buffer @hideinitializer*/ +#define OPUS_BUFFER_TOO_SMALL -2 +/** An internal error was detected @hideinitializer*/ +#define OPUS_INTERNAL_ERROR -3 +/** The compressed data passed is corrupted @hideinitializer*/ +#define OPUS_INVALID_PACKET -4 +/** Invalid/unsupported request number @hideinitializer*/ +#define OPUS_UNIMPLEMENTED -5 +/** An encoder or decoder structure is invalid or already freed @hideinitializer*/ +#define OPUS_INVALID_STATE -6 +/** Memory allocation has failed @hideinitializer*/ +#define OPUS_ALLOC_FAIL -7 +/**@}*/ + +/** @cond OPUS_INTERNAL_DOC */ +/**Export control for opus functions */ + +#ifndef OPUS_EXPORT +# if defined(WIN32) +# if defined(OPUS_BUILD) && defined(DLL_EXPORT) +# define OPUS_EXPORT __declspec(dllexport) +# else +# define OPUS_EXPORT +# endif +# elif defined(__GNUC__) && defined(OPUS_BUILD) +# define OPUS_EXPORT __attribute__ ((visibility ("default"))) +# else +# define OPUS_EXPORT +# endif +#endif + +# if !defined(OPUS_GNUC_PREREQ) +# if defined(__GNUC__)&&defined(__GNUC_MINOR__) +# define OPUS_GNUC_PREREQ(_maj,_min) \ + ((__GNUC__<<16)+__GNUC_MINOR__>=((_maj)<<16)+(_min)) +# else +# define OPUS_GNUC_PREREQ(_maj,_min) 0 +# endif +# endif + +#if (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L) ) +# if OPUS_GNUC_PREREQ(3,0) +# define OPUS_RESTRICT __restrict__ +# elif (defined(_MSC_VER) && _MSC_VER >= 1400) +# define OPUS_RESTRICT __restrict +# else +# define OPUS_RESTRICT +# endif +#else +# define OPUS_RESTRICT restrict +#endif + +#if (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L) ) +# if OPUS_GNUC_PREREQ(2,7) +# define OPUS_INLINE __inline__ +# elif (defined(_MSC_VER)) +# define OPUS_INLINE __inline +# else +# define OPUS_INLINE +# endif +#else +# define OPUS_INLINE inline +#endif + +/**Warning attributes for opus functions + * NONNULL is not used in OPUS_BUILD to avoid the compiler optimizing out + * some paranoid null checks. */ +#if defined(__GNUC__) && OPUS_GNUC_PREREQ(3, 4) +# define OPUS_WARN_UNUSED_RESULT __attribute__ ((__warn_unused_result__)) +#else +# define OPUS_WARN_UNUSED_RESULT +#endif +#if !defined(OPUS_BUILD) && defined(__GNUC__) && OPUS_GNUC_PREREQ(3, 4) +# define OPUS_ARG_NONNULL(_x) __attribute__ ((__nonnull__(_x))) +#else +# define OPUS_ARG_NONNULL(_x) +#endif + +/** These are the actual Encoder CTL ID numbers. + * They should not be used directly by applications. + * In general, SETs should be even and GETs should be odd.*/ +#define OPUS_SET_APPLICATION_REQUEST 4000 +#define OPUS_GET_APPLICATION_REQUEST 4001 +#define OPUS_SET_BITRATE_REQUEST 4002 +#define OPUS_GET_BITRATE_REQUEST 4003 +#define OPUS_SET_MAX_BANDWIDTH_REQUEST 4004 +#define OPUS_GET_MAX_BANDWIDTH_REQUEST 4005 +#define OPUS_SET_VBR_REQUEST 4006 +#define OPUS_GET_VBR_REQUEST 4007 +#define OPUS_SET_BANDWIDTH_REQUEST 4008 +#define OPUS_GET_BANDWIDTH_REQUEST 4009 +#define OPUS_SET_COMPLEXITY_REQUEST 4010 +#define OPUS_GET_COMPLEXITY_REQUEST 4011 +#define OPUS_SET_INBAND_FEC_REQUEST 4012 +#define OPUS_GET_INBAND_FEC_REQUEST 4013 +#define OPUS_SET_PACKET_LOSS_PERC_REQUEST 4014 +#define OPUS_GET_PACKET_LOSS_PERC_REQUEST 4015 +#define OPUS_SET_DTX_REQUEST 4016 +#define OPUS_GET_DTX_REQUEST 4017 +#define OPUS_SET_VBR_CONSTRAINT_REQUEST 4020 +#define OPUS_GET_VBR_CONSTRAINT_REQUEST 4021 +#define OPUS_SET_FORCE_CHANNELS_REQUEST 4022 +#define OPUS_GET_FORCE_CHANNELS_REQUEST 4023 +#define OPUS_SET_SIGNAL_REQUEST 4024 +#define OPUS_GET_SIGNAL_REQUEST 4025 +#define OPUS_GET_LOOKAHEAD_REQUEST 4027 +/* #define OPUS_RESET_STATE 4028 */ +#define OPUS_GET_SAMPLE_RATE_REQUEST 4029 +#define OPUS_GET_FINAL_RANGE_REQUEST 4031 +#define OPUS_GET_PITCH_REQUEST 4033 +#define OPUS_SET_GAIN_REQUEST 4034 +#define OPUS_GET_GAIN_REQUEST 4045 /* Should have been 4035 */ +#define OPUS_SET_LSB_DEPTH_REQUEST 4036 +#define OPUS_GET_LSB_DEPTH_REQUEST 4037 +#define OPUS_GET_LAST_PACKET_DURATION_REQUEST 4039 +#define OPUS_SET_EXPERT_FRAME_DURATION_REQUEST 4040 +#define OPUS_GET_EXPERT_FRAME_DURATION_REQUEST 4041 +#define OPUS_SET_PREDICTION_DISABLED_REQUEST 4042 +#define OPUS_GET_PREDICTION_DISABLED_REQUEST 4043 +/* Don't use 4045, it's already taken by OPUS_GET_GAIN_REQUEST */ +#define OPUS_SET_PHASE_INVERSION_DISABLED_REQUEST 4046 +#define OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST 4047 +#define OPUS_GET_IN_DTX_REQUEST 4049 + +/** Defines for the presence of extended APIs. */ +#define OPUS_HAVE_OPUS_PROJECTION_H + +/* Macros to trigger compilation errors when the wrong types are provided to a CTL */ +#define __opus_check_int(x) (((void)((x) == (opus_int32)0)), (opus_int32)(x)) +#define __opus_check_int_ptr(ptr) ((ptr) + ((ptr) - (opus_int32*)(ptr))) +#define __opus_check_uint_ptr(ptr) ((ptr) + ((ptr) - (opus_uint32*)(ptr))) +#define __opus_check_val16_ptr(ptr) ((ptr) + ((ptr) - (opus_val16*)(ptr))) +/** @endcond */ + +/** @defgroup opus_ctlvalues Pre-defined values for CTL interface + * @see opus_genericctls, opus_encoderctls + * @{ + */ +/* Values for the various encoder CTLs */ +#define OPUS_AUTO -1000 /**opus_int32: Allowed values: 0-10, inclusive. + * + * @hideinitializer */ +#define OPUS_SET_COMPLEXITY(x) OPUS_SET_COMPLEXITY_REQUEST, __opus_check_int(x) +/** Gets the encoder's complexity configuration. + * @see OPUS_SET_COMPLEXITY + * @param[out] x opus_int32 *: Returns a value in the range 0-10, + * inclusive. + * @hideinitializer */ +#define OPUS_GET_COMPLEXITY(x) OPUS_GET_COMPLEXITY_REQUEST, __opus_check_int_ptr(x) + +/** Configures the bitrate in the encoder. + * Rates from 500 to 512000 bits per second are meaningful, as well as the + * special values #OPUS_AUTO and #OPUS_BITRATE_MAX. + * The value #OPUS_BITRATE_MAX can be used to cause the codec to use as much + * rate as it can, which is useful for controlling the rate by adjusting the + * output buffer size. + * @see OPUS_GET_BITRATE + * @param[in] x opus_int32: Bitrate in bits per second. The default + * is determined based on the number of + * channels and the input sampling rate. + * @hideinitializer */ +#define OPUS_SET_BITRATE(x) OPUS_SET_BITRATE_REQUEST, __opus_check_int(x) +/** Gets the encoder's bitrate configuration. + * @see OPUS_SET_BITRATE + * @param[out] x opus_int32 *: Returns the bitrate in bits per second. + * The default is determined based on the + * number of channels and the input + * sampling rate. + * @hideinitializer */ +#define OPUS_GET_BITRATE(x) OPUS_GET_BITRATE_REQUEST, __opus_check_int_ptr(x) + +/** Enables or disables variable bitrate (VBR) in the encoder. + * The configured bitrate may not be met exactly because frames must + * be an integer number of bytes in length. + * @see OPUS_GET_VBR + * @see OPUS_SET_VBR_CONSTRAINT + * @param[in] x opus_int32: Allowed values: + *
+ *
0
Hard CBR. For LPC/hybrid modes at very low bit-rate, this can + * cause noticeable quality degradation.
+ *
1
VBR (default). The exact type of VBR is controlled by + * #OPUS_SET_VBR_CONSTRAINT.
+ *
+ * @hideinitializer */ +#define OPUS_SET_VBR(x) OPUS_SET_VBR_REQUEST, __opus_check_int(x) +/** Determine if variable bitrate (VBR) is enabled in the encoder. + * @see OPUS_SET_VBR + * @see OPUS_GET_VBR_CONSTRAINT + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
0
Hard CBR.
+ *
1
VBR (default). The exact type of VBR may be retrieved via + * #OPUS_GET_VBR_CONSTRAINT.
+ *
+ * @hideinitializer */ +#define OPUS_GET_VBR(x) OPUS_GET_VBR_REQUEST, __opus_check_int_ptr(x) + +/** Enables or disables constrained VBR in the encoder. + * This setting is ignored when the encoder is in CBR mode. + * @warning Only the MDCT mode of Opus currently heeds the constraint. + * Speech mode ignores it completely, hybrid mode may fail to obey it + * if the LPC layer uses more bitrate than the constraint would have + * permitted. + * @see OPUS_GET_VBR_CONSTRAINT + * @see OPUS_SET_VBR + * @param[in] x opus_int32: Allowed values: + *
+ *
0
Unconstrained VBR.
+ *
1
Constrained VBR (default). This creates a maximum of one + * frame of buffering delay assuming a transport with a + * serialization speed of the nominal bitrate.
+ *
+ * @hideinitializer */ +#define OPUS_SET_VBR_CONSTRAINT(x) OPUS_SET_VBR_CONSTRAINT_REQUEST, __opus_check_int(x) +/** Determine if constrained VBR is enabled in the encoder. + * @see OPUS_SET_VBR_CONSTRAINT + * @see OPUS_GET_VBR + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
0
Unconstrained VBR.
+ *
1
Constrained VBR (default).
+ *
+ * @hideinitializer */ +#define OPUS_GET_VBR_CONSTRAINT(x) OPUS_GET_VBR_CONSTRAINT_REQUEST, __opus_check_int_ptr(x) + +/** Configures mono/stereo forcing in the encoder. + * This can force the encoder to produce packets encoded as either mono or + * stereo, regardless of the format of the input audio. This is useful when + * the caller knows that the input signal is currently a mono source embedded + * in a stereo stream. + * @see OPUS_GET_FORCE_CHANNELS + * @param[in] x opus_int32: Allowed values: + *
+ *
#OPUS_AUTO
Not forced (default)
+ *
1
Forced mono
+ *
2
Forced stereo
+ *
+ * @hideinitializer */ +#define OPUS_SET_FORCE_CHANNELS(x) OPUS_SET_FORCE_CHANNELS_REQUEST, __opus_check_int(x) +/** Gets the encoder's forced channel configuration. + * @see OPUS_SET_FORCE_CHANNELS + * @param[out] x opus_int32 *: + *
+ *
#OPUS_AUTO
Not forced (default)
+ *
1
Forced mono
+ *
2
Forced stereo
+ *
+ * @hideinitializer */ +#define OPUS_GET_FORCE_CHANNELS(x) OPUS_GET_FORCE_CHANNELS_REQUEST, __opus_check_int_ptr(x) + +/** Configures the maximum bandpass that the encoder will select automatically. + * Applications should normally use this instead of #OPUS_SET_BANDWIDTH + * (leaving that set to the default, #OPUS_AUTO). This allows the + * application to set an upper bound based on the type of input it is + * providing, but still gives the encoder the freedom to reduce the bandpass + * when the bitrate becomes too low, for better overall quality. + * @see OPUS_GET_MAX_BANDWIDTH + * @param[in] x opus_int32: Allowed values: + *
+ *
OPUS_BANDWIDTH_NARROWBAND
4 kHz passband
+ *
OPUS_BANDWIDTH_MEDIUMBAND
6 kHz passband
+ *
OPUS_BANDWIDTH_WIDEBAND
8 kHz passband
+ *
OPUS_BANDWIDTH_SUPERWIDEBAND
12 kHz passband
+ *
OPUS_BANDWIDTH_FULLBAND
20 kHz passband (default)
+ *
+ * @hideinitializer */ +#define OPUS_SET_MAX_BANDWIDTH(x) OPUS_SET_MAX_BANDWIDTH_REQUEST, __opus_check_int(x) + +/** Gets the encoder's configured maximum allowed bandpass. + * @see OPUS_SET_MAX_BANDWIDTH + * @param[out] x opus_int32 *: Allowed values: + *
+ *
#OPUS_BANDWIDTH_NARROWBAND
4 kHz passband
+ *
#OPUS_BANDWIDTH_MEDIUMBAND
6 kHz passband
+ *
#OPUS_BANDWIDTH_WIDEBAND
8 kHz passband
+ *
#OPUS_BANDWIDTH_SUPERWIDEBAND
12 kHz passband
+ *
#OPUS_BANDWIDTH_FULLBAND
20 kHz passband (default)
+ *
+ * @hideinitializer */ +#define OPUS_GET_MAX_BANDWIDTH(x) OPUS_GET_MAX_BANDWIDTH_REQUEST, __opus_check_int_ptr(x) + +/** Sets the encoder's bandpass to a specific value. + * This prevents the encoder from automatically selecting the bandpass based + * on the available bitrate. If an application knows the bandpass of the input + * audio it is providing, it should normally use #OPUS_SET_MAX_BANDWIDTH + * instead, which still gives the encoder the freedom to reduce the bandpass + * when the bitrate becomes too low, for better overall quality. + * @see OPUS_GET_BANDWIDTH + * @param[in] x opus_int32: Allowed values: + *
+ *
#OPUS_AUTO
(default)
+ *
#OPUS_BANDWIDTH_NARROWBAND
4 kHz passband
+ *
#OPUS_BANDWIDTH_MEDIUMBAND
6 kHz passband
+ *
#OPUS_BANDWIDTH_WIDEBAND
8 kHz passband
+ *
#OPUS_BANDWIDTH_SUPERWIDEBAND
12 kHz passband
+ *
#OPUS_BANDWIDTH_FULLBAND
20 kHz passband
+ *
+ * @hideinitializer */ +#define OPUS_SET_BANDWIDTH(x) OPUS_SET_BANDWIDTH_REQUEST, __opus_check_int(x) + +/** Configures the type of signal being encoded. + * This is a hint which helps the encoder's mode selection. + * @see OPUS_GET_SIGNAL + * @param[in] x opus_int32: Allowed values: + *
+ *
#OPUS_AUTO
(default)
+ *
#OPUS_SIGNAL_VOICE
Bias thresholds towards choosing LPC or Hybrid modes.
+ *
#OPUS_SIGNAL_MUSIC
Bias thresholds towards choosing MDCT modes.
+ *
+ * @hideinitializer */ +#define OPUS_SET_SIGNAL(x) OPUS_SET_SIGNAL_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured signal type. + * @see OPUS_SET_SIGNAL + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
#OPUS_AUTO
(default)
+ *
#OPUS_SIGNAL_VOICE
Bias thresholds towards choosing LPC or Hybrid modes.
+ *
#OPUS_SIGNAL_MUSIC
Bias thresholds towards choosing MDCT modes.
+ *
+ * @hideinitializer */ +#define OPUS_GET_SIGNAL(x) OPUS_GET_SIGNAL_REQUEST, __opus_check_int_ptr(x) + + +/** Configures the encoder's intended application. + * The initial value is a mandatory argument to the encoder_create function. + * @see OPUS_GET_APPLICATION + * @param[in] x opus_int32: Returns one of the following values: + *
+ *
#OPUS_APPLICATION_VOIP
+ *
Process signal for improved speech intelligibility.
+ *
#OPUS_APPLICATION_AUDIO
+ *
Favor faithfulness to the original input.
+ *
#OPUS_APPLICATION_RESTRICTED_LOWDELAY
+ *
Configure the minimum possible coding delay by disabling certain modes + * of operation.
+ *
+ * @hideinitializer */ +#define OPUS_SET_APPLICATION(x) OPUS_SET_APPLICATION_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured application. + * @see OPUS_SET_APPLICATION + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
#OPUS_APPLICATION_VOIP
+ *
Process signal for improved speech intelligibility.
+ *
#OPUS_APPLICATION_AUDIO
+ *
Favor faithfulness to the original input.
+ *
#OPUS_APPLICATION_RESTRICTED_LOWDELAY
+ *
Configure the minimum possible coding delay by disabling certain modes + * of operation.
+ *
+ * @hideinitializer */ +#define OPUS_GET_APPLICATION(x) OPUS_GET_APPLICATION_REQUEST, __opus_check_int_ptr(x) + +/** Gets the total samples of delay added by the entire codec. + * This can be queried by the encoder and then the provided number of samples can be + * skipped on from the start of the decoder's output to provide time aligned input + * and output. From the perspective of a decoding application the real data begins this many + * samples late. + * + * The decoder contribution to this delay is identical for all decoders, but the + * encoder portion of the delay may vary from implementation to implementation, + * version to version, or even depend on the encoder's initial configuration. + * Applications needing delay compensation should call this CTL rather than + * hard-coding a value. + * @param[out] x opus_int32 *: Number of lookahead samples + * @hideinitializer */ +#define OPUS_GET_LOOKAHEAD(x) OPUS_GET_LOOKAHEAD_REQUEST, __opus_check_int_ptr(x) + +/** Configures the encoder's use of inband forward error correction (FEC). + * @note This is only applicable to the LPC layer + * @see OPUS_GET_INBAND_FEC + * @param[in] x opus_int32: Allowed values: + *
+ *
0
Disable inband FEC (default).
+ *
1
Enable inband FEC.
+ *
+ * @hideinitializer */ +#define OPUS_SET_INBAND_FEC(x) OPUS_SET_INBAND_FEC_REQUEST, __opus_check_int(x) +/** Gets encoder's configured use of inband forward error correction. + * @see OPUS_SET_INBAND_FEC + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
0
Inband FEC disabled (default).
+ *
1
Inband FEC enabled.
+ *
+ * @hideinitializer */ +#define OPUS_GET_INBAND_FEC(x) OPUS_GET_INBAND_FEC_REQUEST, __opus_check_int_ptr(x) + +/** Configures the encoder's expected packet loss percentage. + * Higher values trigger progressively more loss resistant behavior in the encoder + * at the expense of quality at a given bitrate in the absence of packet loss, but + * greater quality under loss. + * @see OPUS_GET_PACKET_LOSS_PERC + * @param[in] x opus_int32: Loss percentage in the range 0-100, inclusive (default: 0). + * @hideinitializer */ +#define OPUS_SET_PACKET_LOSS_PERC(x) OPUS_SET_PACKET_LOSS_PERC_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured packet loss percentage. + * @see OPUS_SET_PACKET_LOSS_PERC + * @param[out] x opus_int32 *: Returns the configured loss percentage + * in the range 0-100, inclusive (default: 0). + * @hideinitializer */ +#define OPUS_GET_PACKET_LOSS_PERC(x) OPUS_GET_PACKET_LOSS_PERC_REQUEST, __opus_check_int_ptr(x) + +/** Configures the encoder's use of discontinuous transmission (DTX). + * @note This is only applicable to the LPC layer + * @see OPUS_GET_DTX + * @param[in] x opus_int32: Allowed values: + *
+ *
0
Disable DTX (default).
+ *
1
Enabled DTX.
+ *
+ * @hideinitializer */ +#define OPUS_SET_DTX(x) OPUS_SET_DTX_REQUEST, __opus_check_int(x) +/** Gets encoder's configured use of discontinuous transmission. + * @see OPUS_SET_DTX + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
0
DTX disabled (default).
+ *
1
DTX enabled.
+ *
+ * @hideinitializer */ +#define OPUS_GET_DTX(x) OPUS_GET_DTX_REQUEST, __opus_check_int_ptr(x) +/** Configures the depth of signal being encoded. + * + * This is a hint which helps the encoder identify silence and near-silence. + * It represents the number of significant bits of linear intensity below + * which the signal contains ignorable quantization or other noise. + * + * For example, OPUS_SET_LSB_DEPTH(14) would be an appropriate setting + * for G.711 u-law input. OPUS_SET_LSB_DEPTH(16) would be appropriate + * for 16-bit linear pcm input with opus_encode_float(). + * + * When using opus_encode() instead of opus_encode_float(), or when libopus + * is compiled for fixed-point, the encoder uses the minimum of the value + * set here and the value 16. + * + * @see OPUS_GET_LSB_DEPTH + * @param[in] x opus_int32: Input precision in bits, between 8 and 24 + * (default: 24). + * @hideinitializer */ +#define OPUS_SET_LSB_DEPTH(x) OPUS_SET_LSB_DEPTH_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured signal depth. + * @see OPUS_SET_LSB_DEPTH + * @param[out] x opus_int32 *: Input precision in bits, between 8 and + * 24 (default: 24). + * @hideinitializer */ +#define OPUS_GET_LSB_DEPTH(x) OPUS_GET_LSB_DEPTH_REQUEST, __opus_check_int_ptr(x) + +/** Configures the encoder's use of variable duration frames. + * When variable duration is enabled, the encoder is free to use a shorter frame + * size than the one requested in the opus_encode*() call. + * It is then the user's responsibility + * to verify how much audio was encoded by checking the ToC byte of the encoded + * packet. The part of the audio that was not encoded needs to be resent to the + * encoder for the next call. Do not use this option unless you really + * know what you are doing. + * @see OPUS_GET_EXPERT_FRAME_DURATION + * @param[in] x opus_int32: Allowed values: + *
+ *
OPUS_FRAMESIZE_ARG
Select frame size from the argument (default).
+ *
OPUS_FRAMESIZE_2_5_MS
Use 2.5 ms frames.
+ *
OPUS_FRAMESIZE_5_MS
Use 5 ms frames.
+ *
OPUS_FRAMESIZE_10_MS
Use 10 ms frames.
+ *
OPUS_FRAMESIZE_20_MS
Use 20 ms frames.
+ *
OPUS_FRAMESIZE_40_MS
Use 40 ms frames.
+ *
OPUS_FRAMESIZE_60_MS
Use 60 ms frames.
+ *
OPUS_FRAMESIZE_80_MS
Use 80 ms frames.
+ *
OPUS_FRAMESIZE_100_MS
Use 100 ms frames.
+ *
OPUS_FRAMESIZE_120_MS
Use 120 ms frames.
+ *
+ * @hideinitializer */ +#define OPUS_SET_EXPERT_FRAME_DURATION(x) OPUS_SET_EXPERT_FRAME_DURATION_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured use of variable duration frames. + * @see OPUS_SET_EXPERT_FRAME_DURATION + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
OPUS_FRAMESIZE_ARG
Select frame size from the argument (default).
+ *
OPUS_FRAMESIZE_2_5_MS
Use 2.5 ms frames.
+ *
OPUS_FRAMESIZE_5_MS
Use 5 ms frames.
+ *
OPUS_FRAMESIZE_10_MS
Use 10 ms frames.
+ *
OPUS_FRAMESIZE_20_MS
Use 20 ms frames.
+ *
OPUS_FRAMESIZE_40_MS
Use 40 ms frames.
+ *
OPUS_FRAMESIZE_60_MS
Use 60 ms frames.
+ *
OPUS_FRAMESIZE_80_MS
Use 80 ms frames.
+ *
OPUS_FRAMESIZE_100_MS
Use 100 ms frames.
+ *
OPUS_FRAMESIZE_120_MS
Use 120 ms frames.
+ *
+ * @hideinitializer */ +#define OPUS_GET_EXPERT_FRAME_DURATION(x) OPUS_GET_EXPERT_FRAME_DURATION_REQUEST, __opus_check_int_ptr(x) + +/** If set to 1, disables almost all use of prediction, making frames almost + * completely independent. This reduces quality. + * @see OPUS_GET_PREDICTION_DISABLED + * @param[in] x opus_int32: Allowed values: + *
+ *
0
Enable prediction (default).
+ *
1
Disable prediction.
+ *
+ * @hideinitializer */ +#define OPUS_SET_PREDICTION_DISABLED(x) OPUS_SET_PREDICTION_DISABLED_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured prediction status. + * @see OPUS_SET_PREDICTION_DISABLED + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
0
Prediction enabled (default).
+ *
1
Prediction disabled.
+ *
+ * @hideinitializer */ +#define OPUS_GET_PREDICTION_DISABLED(x) OPUS_GET_PREDICTION_DISABLED_REQUEST, __opus_check_int_ptr(x) + +/**@}*/ + +/** @defgroup opus_genericctls Generic CTLs + * + * These macros are used with the \c opus_decoder_ctl and + * \c opus_encoder_ctl calls to generate a particular + * request. + * + * When called on an \c OpusDecoder they apply to that + * particular decoder instance. When called on an + * \c OpusEncoder they apply to the corresponding setting + * on that encoder instance, if present. + * + * Some usage examples: + * + * @code + * int ret; + * opus_int32 pitch; + * ret = opus_decoder_ctl(dec_ctx, OPUS_GET_PITCH(&pitch)); + * if (ret == OPUS_OK) return ret; + * + * opus_encoder_ctl(enc_ctx, OPUS_RESET_STATE); + * opus_decoder_ctl(dec_ctx, OPUS_RESET_STATE); + * + * opus_int32 enc_bw, dec_bw; + * opus_encoder_ctl(enc_ctx, OPUS_GET_BANDWIDTH(&enc_bw)); + * opus_decoder_ctl(dec_ctx, OPUS_GET_BANDWIDTH(&dec_bw)); + * if (enc_bw != dec_bw) { + * printf("packet bandwidth mismatch!\n"); + * } + * @endcode + * + * @see opus_encoder, opus_decoder_ctl, opus_encoder_ctl, opus_decoderctls, opus_encoderctls + * @{ + */ + +/** Resets the codec state to be equivalent to a freshly initialized state. + * This should be called when switching streams in order to prevent + * the back to back decoding from giving different results from + * one at a time decoding. + * @hideinitializer */ +#define OPUS_RESET_STATE 4028 + +/** Gets the final state of the codec's entropy coder. + * This is used for testing purposes, + * The encoder and decoder state should be identical after coding a payload + * (assuming no data corruption or software bugs) + * + * @param[out] x opus_uint32 *: Entropy coder state + * + * @hideinitializer */ +#define OPUS_GET_FINAL_RANGE(x) OPUS_GET_FINAL_RANGE_REQUEST, __opus_check_uint_ptr(x) + +/** Gets the encoder's configured bandpass or the decoder's last bandpass. + * @see OPUS_SET_BANDWIDTH + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
#OPUS_AUTO
(default)
+ *
#OPUS_BANDWIDTH_NARROWBAND
4 kHz passband
+ *
#OPUS_BANDWIDTH_MEDIUMBAND
6 kHz passband
+ *
#OPUS_BANDWIDTH_WIDEBAND
8 kHz passband
+ *
#OPUS_BANDWIDTH_SUPERWIDEBAND
12 kHz passband
+ *
#OPUS_BANDWIDTH_FULLBAND
20 kHz passband
+ *
+ * @hideinitializer */ +#define OPUS_GET_BANDWIDTH(x) OPUS_GET_BANDWIDTH_REQUEST, __opus_check_int_ptr(x) + +/** Gets the sampling rate the encoder or decoder was initialized with. + * This simply returns the Fs value passed to opus_encoder_init() + * or opus_decoder_init(). + * @param[out] x opus_int32 *: Sampling rate of encoder or decoder. + * @hideinitializer + */ +#define OPUS_GET_SAMPLE_RATE(x) OPUS_GET_SAMPLE_RATE_REQUEST, __opus_check_int_ptr(x) + +/** If set to 1, disables the use of phase inversion for intensity stereo, + * improving the quality of mono downmixes, but slightly reducing normal + * stereo quality. Disabling phase inversion in the decoder does not comply + * with RFC 6716, although it does not cause any interoperability issue and + * is expected to become part of the Opus standard once RFC 6716 is updated + * by draft-ietf-codec-opus-update. + * @see OPUS_GET_PHASE_INVERSION_DISABLED + * @param[in] x opus_int32: Allowed values: + *
+ *
0
Enable phase inversion (default).
+ *
1
Disable phase inversion.
+ *
+ * @hideinitializer */ +#define OPUS_SET_PHASE_INVERSION_DISABLED(x) OPUS_SET_PHASE_INVERSION_DISABLED_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured phase inversion status. + * @see OPUS_SET_PHASE_INVERSION_DISABLED + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
0
Stereo phase inversion enabled (default).
+ *
1
Stereo phase inversion disabled.
+ *
+ * @hideinitializer */ +#define OPUS_GET_PHASE_INVERSION_DISABLED(x) OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST, __opus_check_int_ptr(x) +/** Gets the DTX state of the encoder. + * Returns whether the last encoded frame was either a comfort noise update + * during DTX or not encoded because of DTX. + * @param[out] x opus_int32 *: Returns one of the following values: + *
+ *
0
The encoder is not in DTX.
+ *
1
The encoder is in DTX.
+ *
+ * @hideinitializer */ +#define OPUS_GET_IN_DTX(x) OPUS_GET_IN_DTX_REQUEST, __opus_check_int_ptr(x) + +/**@}*/ + +/** @defgroup opus_decoderctls Decoder related CTLs + * @see opus_genericctls, opus_encoderctls, opus_decoder + * @{ + */ + +/** Configures decoder gain adjustment. + * Scales the decoded output by a factor specified in Q8 dB units. + * This has a maximum range of -32768 to 32767 inclusive, and returns + * OPUS_BAD_ARG otherwise. The default is zero indicating no adjustment. + * This setting survives decoder reset. + * + * gain = pow(10, x/(20.0*256)) + * + * @param[in] x opus_int32: Amount to scale PCM signal by in Q8 dB units. + * @hideinitializer */ +#define OPUS_SET_GAIN(x) OPUS_SET_GAIN_REQUEST, __opus_check_int(x) +/** Gets the decoder's configured gain adjustment. @see OPUS_SET_GAIN + * + * @param[out] x opus_int32 *: Amount to scale PCM signal by in Q8 dB units. + * @hideinitializer */ +#define OPUS_GET_GAIN(x) OPUS_GET_GAIN_REQUEST, __opus_check_int_ptr(x) + +/** Gets the duration (in samples) of the last packet successfully decoded or concealed. + * @param[out] x opus_int32 *: Number of samples (at current sampling rate). + * @hideinitializer */ +#define OPUS_GET_LAST_PACKET_DURATION(x) OPUS_GET_LAST_PACKET_DURATION_REQUEST, __opus_check_int_ptr(x) + +/** Gets the pitch of the last decoded frame, if available. + * This can be used for any post-processing algorithm requiring the use of pitch, + * e.g. time stretching/shortening. If the last frame was not voiced, or if the + * pitch was not coded in the frame, then zero is returned. + * + * This CTL is only implemented for decoder instances. + * + * @param[out] x opus_int32 *: pitch period at 48 kHz (or 0 if not available) + * + * @hideinitializer */ +#define OPUS_GET_PITCH(x) OPUS_GET_PITCH_REQUEST, __opus_check_int_ptr(x) + +/**@}*/ + +/** @defgroup opus_libinfo Opus library information functions + * @{ + */ + +/** Converts an opus error code into a human readable string. + * + * @param[in] error int: Error number + * @returns Error string + */ +OPUS_EXPORT const char *opus_strerror(int error); + +/** Gets the libopus version string. + * + * Applications may look for the substring "-fixed" in the version string to + * determine whether they have a fixed-point or floating-point build at + * runtime. + * + * @returns Version string + */ +OPUS_EXPORT const char *opus_get_version_string(void); +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_DEFINES_H */ diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_multistream.h b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_multistream.h new file mode 100644 index 0000000..babcee6 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_multistream.h @@ -0,0 +1,660 @@ +/* Copyright (c) 2011 Xiph.Org Foundation + Written by Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + * @file opus_multistream.h + * @brief Opus reference implementation multistream API + */ + +#ifndef OPUS_MULTISTREAM_H +#define OPUS_MULTISTREAM_H + +#include "opus.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** @cond OPUS_INTERNAL_DOC */ + +/** Macros to trigger compilation errors when the wrong types are provided to a + * CTL. */ +/**@{*/ +#define __opus_check_encstate_ptr(ptr) ((ptr) + ((ptr) - (OpusEncoder**)(ptr))) +#define __opus_check_decstate_ptr(ptr) ((ptr) + ((ptr) - (OpusDecoder**)(ptr))) +/**@}*/ + +/** These are the actual encoder and decoder CTL ID numbers. + * They should not be used directly by applications. + * In general, SETs should be even and GETs should be odd.*/ +/**@{*/ +#define OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST 5120 +#define OPUS_MULTISTREAM_GET_DECODER_STATE_REQUEST 5122 +/**@}*/ + +/** @endcond */ + +/** @defgroup opus_multistream_ctls Multistream specific encoder and decoder CTLs + * + * These are convenience macros that are specific to the + * opus_multistream_encoder_ctl() and opus_multistream_decoder_ctl() + * interface. + * The CTLs from @ref opus_genericctls, @ref opus_encoderctls, and + * @ref opus_decoderctls may be applied to a multistream encoder or decoder as + * well. + * In addition, you may retrieve the encoder or decoder state for an specific + * stream via #OPUS_MULTISTREAM_GET_ENCODER_STATE or + * #OPUS_MULTISTREAM_GET_DECODER_STATE and apply CTLs to it individually. + */ +/**@{*/ + +/** Gets the encoder state for an individual stream of a multistream encoder. + * @param[in] x opus_int32: The index of the stream whose encoder you + * wish to retrieve. + * This must be non-negative and less than + * the streams parameter used + * to initialize the encoder. + * @param[out] y OpusEncoder**: Returns a pointer to the given + * encoder state. + * @retval OPUS_BAD_ARG The index of the requested stream was out of range. + * @hideinitializer + */ +#define OPUS_MULTISTREAM_GET_ENCODER_STATE(x,y) OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST, __opus_check_int(x), __opus_check_encstate_ptr(y) + +/** Gets the decoder state for an individual stream of a multistream decoder. + * @param[in] x opus_int32: The index of the stream whose decoder you + * wish to retrieve. + * This must be non-negative and less than + * the streams parameter used + * to initialize the decoder. + * @param[out] y OpusDecoder**: Returns a pointer to the given + * decoder state. + * @retval OPUS_BAD_ARG The index of the requested stream was out of range. + * @hideinitializer + */ +#define OPUS_MULTISTREAM_GET_DECODER_STATE(x,y) OPUS_MULTISTREAM_GET_DECODER_STATE_REQUEST, __opus_check_int(x), __opus_check_decstate_ptr(y) + +/**@}*/ + +/** @defgroup opus_multistream Opus Multistream API + * @{ + * + * The multistream API allows individual Opus streams to be combined into a + * single packet, enabling support for up to 255 channels. Unlike an + * elementary Opus stream, the encoder and decoder must negotiate the channel + * configuration before the decoder can successfully interpret the data in the + * packets produced by the encoder. Some basic information, such as packet + * duration, can be computed without any special negotiation. + * + * The format for multistream Opus packets is defined in + *
RFC 7845 + * and is based on the self-delimited Opus framing described in Appendix B of + * RFC 6716. + * Normal Opus packets are just a degenerate case of multistream Opus packets, + * and can be encoded or decoded with the multistream API by setting + * streams to 1 when initializing the encoder or + * decoder. + * + * Multistream Opus streams can contain up to 255 elementary Opus streams. + * These may be either "uncoupled" or "coupled", indicating that the decoder + * is configured to decode them to either 1 or 2 channels, respectively. + * The streams are ordered so that all coupled streams appear at the + * beginning. + * + * A mapping table defines which decoded channel i + * should be used for each input/output (I/O) channel j. This table is + * typically provided as an unsigned char array. + * Let i = mapping[j] be the index for I/O channel j. + * If i < 2*coupled_streams, then I/O channel j is + * encoded as the left channel of stream (i/2) if i + * is even, or as the right channel of stream (i/2) if + * i is odd. Otherwise, I/O channel j is encoded as + * mono in stream (i - coupled_streams), unless it has the special + * value 255, in which case it is omitted from the encoding entirely (the + * decoder will reproduce it as silence). Each value i must either + * be the special value 255 or be less than streams + coupled_streams. + * + * The output channels specified by the encoder + * should use the + * Vorbis + * channel ordering. A decoder may wish to apply an additional permutation + * to the mapping the encoder used to achieve a different output channel + * order (e.g. for outputing in WAV order). + * + * Each multistream packet contains an Opus packet for each stream, and all of + * the Opus packets in a single multistream packet must have the same + * duration. Therefore the duration of a multistream packet can be extracted + * from the TOC sequence of the first stream, which is located at the + * beginning of the packet, just like an elementary Opus stream: + * + * @code + * int nb_samples; + * int nb_frames; + * nb_frames = opus_packet_get_nb_frames(data, len); + * if (nb_frames < 1) + * return nb_frames; + * nb_samples = opus_packet_get_samples_per_frame(data, 48000) * nb_frames; + * @endcode + * + * The general encoding and decoding process proceeds exactly the same as in + * the normal @ref opus_encoder and @ref opus_decoder APIs. + * See their documentation for an overview of how to use the corresponding + * multistream functions. + */ + +/** Opus multistream encoder state. + * This contains the complete state of a multistream Opus encoder. + * It is position independent and can be freely copied. + * @see opus_multistream_encoder_create + * @see opus_multistream_encoder_init + */ +typedef struct OpusMSEncoder OpusMSEncoder; + +/** Opus multistream decoder state. + * This contains the complete state of a multistream Opus decoder. + * It is position independent and can be freely copied. + * @see opus_multistream_decoder_create + * @see opus_multistream_decoder_init + */ +typedef struct OpusMSDecoder OpusMSDecoder; + +/**\name Multistream encoder functions */ +/**@{*/ + +/** Gets the size of an OpusMSEncoder structure. + * @param streams int: The total number of streams to encode from the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of coupled (2 channel) streams + * to encode. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * encoded channels (streams + + * coupled_streams) must be no + * more than 255. + * @returns The size in bytes on success, or a negative error code + * (see @ref opus_errorcodes) on error. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_multistream_encoder_get_size( + int streams, + int coupled_streams +); + +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_multistream_surround_encoder_get_size( + int channels, + int mapping_family +); + + +/** Allocates and initializes a multistream encoder state. + * Call opus_multistream_encoder_destroy() to release + * this object when finished. + * @param Fs opus_int32: Sampling rate of the input signal (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels in the input signal. + * This must be at most 255. + * It may be greater than the number of + * coded channels (streams + + * coupled_streams). + * @param streams int: The total number of streams to encode from the + * input. + * This must be no more than the number of channels. + * @param coupled_streams int: Number of coupled (2 channel) streams + * to encode. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * encoded channels (streams + + * coupled_streams) must be no + * more than the number of input channels. + * @param[in] mapping const unsigned char[channels]: Mapping from + * encoded channels to input channels, as described in + * @ref opus_multistream. As an extra constraint, the + * multistream encoder does not allow encoding coupled + * streams for which one channel is unused since this + * is never a good idea. + * @param application int: The target encoder application. + * This must be one of the following: + *
+ *
#OPUS_APPLICATION_VOIP
+ *
Process signal for improved speech intelligibility.
+ *
#OPUS_APPLICATION_AUDIO
+ *
Favor faithfulness to the original input.
+ *
#OPUS_APPLICATION_RESTRICTED_LOWDELAY
+ *
Configure the minimum possible coding delay by disabling certain modes + * of operation.
+ *
+ * @param[out] error int *: Returns #OPUS_OK on success, or an error + * code (see @ref opus_errorcodes) on + * failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusMSEncoder *opus_multistream_encoder_create( + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + const unsigned char *mapping, + int application, + int *error +) OPUS_ARG_NONNULL(5); + +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusMSEncoder *opus_multistream_surround_encoder_create( + opus_int32 Fs, + int channels, + int mapping_family, + int *streams, + int *coupled_streams, + unsigned char *mapping, + int application, + int *error +) OPUS_ARG_NONNULL(4) OPUS_ARG_NONNULL(5) OPUS_ARG_NONNULL(6); + +/** Initialize a previously allocated multistream encoder state. + * The memory pointed to by \a st must be at least the size returned by + * opus_multistream_encoder_get_size(). + * This is intended for applications which use their own allocator instead of + * malloc. + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @see opus_multistream_encoder_create + * @see opus_multistream_encoder_get_size + * @param st OpusMSEncoder*: Multistream encoder state to initialize. + * @param Fs opus_int32: Sampling rate of the input signal (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels in the input signal. + * This must be at most 255. + * It may be greater than the number of + * coded channels (streams + + * coupled_streams). + * @param streams int: The total number of streams to encode from the + * input. + * This must be no more than the number of channels. + * @param coupled_streams int: Number of coupled (2 channel) streams + * to encode. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * encoded channels (streams + + * coupled_streams) must be no + * more than the number of input channels. + * @param[in] mapping const unsigned char[channels]: Mapping from + * encoded channels to input channels, as described in + * @ref opus_multistream. As an extra constraint, the + * multistream encoder does not allow encoding coupled + * streams for which one channel is unused since this + * is never a good idea. + * @param application int: The target encoder application. + * This must be one of the following: + *
+ *
#OPUS_APPLICATION_VOIP
+ *
Process signal for improved speech intelligibility.
+ *
#OPUS_APPLICATION_AUDIO
+ *
Favor faithfulness to the original input.
+ *
#OPUS_APPLICATION_RESTRICTED_LOWDELAY
+ *
Configure the minimum possible coding delay by disabling certain modes + * of operation.
+ *
+ * @returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes) + * on failure. + */ +OPUS_EXPORT int opus_multistream_encoder_init( + OpusMSEncoder *st, + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + const unsigned char *mapping, + int application +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(6); + +OPUS_EXPORT int opus_multistream_surround_encoder_init( + OpusMSEncoder *st, + opus_int32 Fs, + int channels, + int mapping_family, + int *streams, + int *coupled_streams, + unsigned char *mapping, + int application +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(5) OPUS_ARG_NONNULL(6) OPUS_ARG_NONNULL(7); + +/** Encodes a multistream Opus frame. + * @param st OpusMSEncoder*: Multistream encoder state. + * @param[in] pcm const opus_int16*: The input signal as interleaved + * samples. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_encode( + OpusMSEncoder *st, + const opus_int16 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes a multistream Opus frame from floating point input. + * @param st OpusMSEncoder*: Multistream encoder state. + * @param[in] pcm const float*: The input signal as interleaved + * samples with a normal range of + * +/-1.0. + * Samples with a range beyond +/-1.0 + * are supported but will be clipped by + * decoders using the integer API and + * should only be used if it is known + * that the far end supports extended + * dynamic range. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_encode_float( + OpusMSEncoder *st, + const float *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Frees an OpusMSEncoder allocated by + * opus_multistream_encoder_create(). + * @param st OpusMSEncoder*: Multistream encoder state to be freed. + */ +OPUS_EXPORT void opus_multistream_encoder_destroy(OpusMSEncoder *st); + +/** Perform a CTL function on a multistream Opus encoder. + * + * Generally the request and subsequent arguments are generated by a + * convenience macro. + * @param st OpusMSEncoder*: Multistream encoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls, + * @ref opus_encoderctls, or @ref opus_multistream_ctls. + * @see opus_genericctls + * @see opus_encoderctls + * @see opus_multistream_ctls + */ +OPUS_EXPORT int opus_multistream_encoder_ctl(OpusMSEncoder *st, int request, ...) OPUS_ARG_NONNULL(1); + +/**@}*/ + +/**\name Multistream decoder functions */ +/**@{*/ + +/** Gets the size of an OpusMSDecoder structure. + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @returns The size in bytes on success, or a negative error code + * (see @ref opus_errorcodes) on error. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_multistream_decoder_get_size( + int streams, + int coupled_streams +); + +/** Allocates and initializes a multistream decoder state. + * Call opus_multistream_decoder_destroy() to release + * this object when finished. + * @param Fs opus_int32: Sampling rate to decode at (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels to output. + * This must be at most 255. + * It may be different from the number of coded + * channels (streams + + * coupled_streams). + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @param[in] mapping const unsigned char[channels]: Mapping from + * coded channels to output channels, as described in + * @ref opus_multistream. + * @param[out] error int *: Returns #OPUS_OK on success, or an error + * code (see @ref opus_errorcodes) on + * failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusMSDecoder *opus_multistream_decoder_create( + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + const unsigned char *mapping, + int *error +) OPUS_ARG_NONNULL(5); + +/** Intialize a previously allocated decoder state object. + * The memory pointed to by \a st must be at least the size returned by + * opus_multistream_encoder_get_size(). + * This is intended for applications which use their own allocator instead of + * malloc. + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @see opus_multistream_decoder_create + * @see opus_multistream_deocder_get_size + * @param st OpusMSEncoder*: Multistream encoder state to initialize. + * @param Fs opus_int32: Sampling rate to decode at (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels to output. + * This must be at most 255. + * It may be different from the number of coded + * channels (streams + + * coupled_streams). + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @param[in] mapping const unsigned char[channels]: Mapping from + * coded channels to output channels, as described in + * @ref opus_multistream. + * @returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes) + * on failure. + */ +OPUS_EXPORT int opus_multistream_decoder_init( + OpusMSDecoder *st, + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + const unsigned char *mapping +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(6); + +/** Decode a multistream Opus packet. + * @param st OpusMSDecoder*: Multistream decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int16*: Output signal, with interleaved + * samples. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_decode( + OpusMSDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int16 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode a multistream Opus packet with floating point output. + * @param st OpusMSDecoder*: Multistream decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int16*: Output signal, with interleaved + * samples. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_decode_float( + OpusMSDecoder *st, + const unsigned char *data, + opus_int32 len, + float *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Perform a CTL function on a multistream Opus decoder. + * + * Generally the request and subsequent arguments are generated by a + * convenience macro. + * @param st OpusMSDecoder*: Multistream decoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls, + * @ref opus_decoderctls, or @ref opus_multistream_ctls. + * @see opus_genericctls + * @see opus_decoderctls + * @see opus_multistream_ctls + */ +OPUS_EXPORT int opus_multistream_decoder_ctl(OpusMSDecoder *st, int request, ...) OPUS_ARG_NONNULL(1); + +/** Frees an OpusMSDecoder allocated by + * opus_multistream_decoder_create(). + * @param st OpusMSDecoder: Multistream decoder state to be freed. + */ +OPUS_EXPORT void opus_multistream_decoder_destroy(OpusMSDecoder *st); + +/**@}*/ + +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_MULTISTREAM_H */ diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_projection.h b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_projection.h new file mode 100644 index 0000000..9dabf4e --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_projection.h @@ -0,0 +1,568 @@ +/* Copyright (c) 2017 Google Inc. + Written by Andrew Allen */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + * @file opus_projection.h + * @brief Opus projection reference API + */ + +#ifndef OPUS_PROJECTION_H +#define OPUS_PROJECTION_H + +#include "opus_multistream.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** @cond OPUS_INTERNAL_DOC */ + +/** These are the actual encoder and decoder CTL ID numbers. + * They should not be used directly by applications.c + * In general, SETs should be even and GETs should be odd.*/ +/**@{*/ +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN_REQUEST 6001 +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE_REQUEST 6003 +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_REQUEST 6005 +/**@}*/ + + +/** @endcond */ + +/** @defgroup opus_projection_ctls Projection specific encoder and decoder CTLs + * + * These are convenience macros that are specific to the + * opus_projection_encoder_ctl() and opus_projection_decoder_ctl() + * interface. + * The CTLs from @ref opus_genericctls, @ref opus_encoderctls, + * @ref opus_decoderctls, and @ref opus_multistream_ctls may be applied to a + * projection encoder or decoder as well. + */ +/**@{*/ + +/** Gets the gain (in dB. S7.8-format) of the demixing matrix from the encoder. + * @param[out] x opus_int32 *: Returns the gain (in dB. S7.8-format) + * of the demixing matrix. + * @hideinitializer + */ +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN(x) OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN_REQUEST, __opus_check_int_ptr(x) + + +/** Gets the size in bytes of the demixing matrix from the encoder. + * @param[out] x opus_int32 *: Returns the size in bytes of the + * demixing matrix. + * @hideinitializer + */ +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE(x) OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE_REQUEST, __opus_check_int_ptr(x) + + +/** Copies the demixing matrix to the supplied pointer location. + * @param[out] x unsigned char *: Returns the demixing matrix to the + * supplied pointer location. + * @param y opus_int32: The size in bytes of the reserved memory at the + * pointer location. + * @hideinitializer + */ +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX(x,y) OPUS_PROJECTION_GET_DEMIXING_MATRIX_REQUEST, x, __opus_check_int(y) + + +/**@}*/ + +/** Opus projection encoder state. + * This contains the complete state of a projection Opus encoder. + * It is position independent and can be freely copied. + * @see opus_projection_ambisonics_encoder_create + */ +typedef struct OpusProjectionEncoder OpusProjectionEncoder; + + +/** Opus projection decoder state. + * This contains the complete state of a projection Opus decoder. + * It is position independent and can be freely copied. + * @see opus_projection_decoder_create + * @see opus_projection_decoder_init + */ +typedef struct OpusProjectionDecoder OpusProjectionDecoder; + + +/**\name Projection encoder functions */ +/**@{*/ + +/** Gets the size of an OpusProjectionEncoder structure. + * @param channels int: The total number of input channels to encode. + * This must be no more than 255. + * @param mapping_family int: The mapping family to use for selecting + * the appropriate projection. + * @returns The size in bytes on success, or a negative error code + * (see @ref opus_errorcodes) on error. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_projection_ambisonics_encoder_get_size( + int channels, + int mapping_family +); + + +/** Allocates and initializes a projection encoder state. + * Call opus_projection_encoder_destroy() to release + * this object when finished. + * @param Fs opus_int32: Sampling rate of the input signal (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels in the input signal. + * This must be at most 255. + * It may be greater than the number of + * coded channels (streams + + * coupled_streams). + * @param mapping_family int: The mapping family to use for selecting + * the appropriate projection. + * @param[out] streams int *: The total number of streams that will + * be encoded from the input. + * @param[out] coupled_streams int *: Number of coupled (2 channel) + * streams that will be encoded from the input. + * @param application int: The target encoder application. + * This must be one of the following: + *
+ *
#OPUS_APPLICATION_VOIP
+ *
Process signal for improved speech intelligibility.
+ *
#OPUS_APPLICATION_AUDIO
+ *
Favor faithfulness to the original input.
+ *
#OPUS_APPLICATION_RESTRICTED_LOWDELAY
+ *
Configure the minimum possible coding delay by disabling certain modes + * of operation.
+ *
+ * @param[out] error int *: Returns #OPUS_OK on success, or an error + * code (see @ref opus_errorcodes) on + * failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusProjectionEncoder *opus_projection_ambisonics_encoder_create( + opus_int32 Fs, + int channels, + int mapping_family, + int *streams, + int *coupled_streams, + int application, + int *error +) OPUS_ARG_NONNULL(4) OPUS_ARG_NONNULL(5); + + +/** Initialize a previously allocated projection encoder state. + * The memory pointed to by \a st must be at least the size returned by + * opus_projection_ambisonics_encoder_get_size(). + * This is intended for applications which use their own allocator instead of + * malloc. + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @see opus_projection_ambisonics_encoder_create + * @see opus_projection_ambisonics_encoder_get_size + * @param st OpusProjectionEncoder*: Projection encoder state to initialize. + * @param Fs opus_int32: Sampling rate of the input signal (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels in the input signal. + * This must be at most 255. + * It may be greater than the number of + * coded channels (streams + + * coupled_streams). + * @param streams int: The total number of streams to encode from the + * input. + * This must be no more than the number of channels. + * @param coupled_streams int: Number of coupled (2 channel) streams + * to encode. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * encoded channels (streams + + * coupled_streams) must be no + * more than the number of input channels. + * @param application int: The target encoder application. + * This must be one of the following: + *
+ *
#OPUS_APPLICATION_VOIP
+ *
Process signal for improved speech intelligibility.
+ *
#OPUS_APPLICATION_AUDIO
+ *
Favor faithfulness to the original input.
+ *
#OPUS_APPLICATION_RESTRICTED_LOWDELAY
+ *
Configure the minimum possible coding delay by disabling certain modes + * of operation.
+ *
+ * @returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes) + * on failure. + */ +OPUS_EXPORT int opus_projection_ambisonics_encoder_init( + OpusProjectionEncoder *st, + opus_int32 Fs, + int channels, + int mapping_family, + int *streams, + int *coupled_streams, + int application +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(5) OPUS_ARG_NONNULL(6); + + +/** Encodes a projection Opus frame. + * @param st OpusProjectionEncoder*: Projection encoder state. + * @param[in] pcm const opus_int16*: The input signal as interleaved + * samples. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_encode( + OpusProjectionEncoder *st, + const opus_int16 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + + +/** Encodes a projection Opus frame from floating point input. + * @param st OpusProjectionEncoder*: Projection encoder state. + * @param[in] pcm const float*: The input signal as interleaved + * samples with a normal range of + * +/-1.0. + * Samples with a range beyond +/-1.0 + * are supported but will be clipped by + * decoders using the integer API and + * should only be used if it is known + * that the far end supports extended + * dynamic range. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_encode_float( + OpusProjectionEncoder *st, + const float *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + + +/** Frees an OpusProjectionEncoder allocated by + * opus_projection_ambisonics_encoder_create(). + * @param st OpusProjectionEncoder*: Projection encoder state to be freed. + */ +OPUS_EXPORT void opus_projection_encoder_destroy(OpusProjectionEncoder *st); + + +/** Perform a CTL function on a projection Opus encoder. + * + * Generally the request and subsequent arguments are generated by a + * convenience macro. + * @param st OpusProjectionEncoder*: Projection encoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls, + * @ref opus_encoderctls, @ref opus_multistream_ctls, or + * @ref opus_projection_ctls + * @see opus_genericctls + * @see opus_encoderctls + * @see opus_multistream_ctls + * @see opus_projection_ctls + */ +OPUS_EXPORT int opus_projection_encoder_ctl(OpusProjectionEncoder *st, int request, ...) OPUS_ARG_NONNULL(1); + + +/**@}*/ + +/**\name Projection decoder functions */ +/**@{*/ + +/** Gets the size of an OpusProjectionDecoder structure. + * @param channels int: The total number of output channels. + * This must be no more than 255. + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @returns The size in bytes on success, or a negative error code + * (see @ref opus_errorcodes) on error. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_projection_decoder_get_size( + int channels, + int streams, + int coupled_streams +); + + +/** Allocates and initializes a projection decoder state. + * Call opus_projection_decoder_destroy() to release + * this object when finished. + * @param Fs opus_int32: Sampling rate to decode at (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels to output. + * This must be at most 255. + * It may be different from the number of coded + * channels (streams + + * coupled_streams). + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @param[in] demixing_matrix const unsigned char[demixing_matrix_size]: Demixing matrix + * that mapping from coded channels to output channels, + * as described in @ref opus_projection and + * @ref opus_projection_ctls. + * @param demixing_matrix_size opus_int32: The size in bytes of the + * demixing matrix, as + * described in @ref + * opus_projection_ctls. + * @param[out] error int *: Returns #OPUS_OK on success, or an error + * code (see @ref opus_errorcodes) on + * failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusProjectionDecoder *opus_projection_decoder_create( + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + unsigned char *demixing_matrix, + opus_int32 demixing_matrix_size, + int *error +) OPUS_ARG_NONNULL(5); + + +/** Intialize a previously allocated projection decoder state object. + * The memory pointed to by \a st must be at least the size returned by + * opus_projection_decoder_get_size(). + * This is intended for applications which use their own allocator instead of + * malloc. + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @see opus_projection_decoder_create + * @see opus_projection_deocder_get_size + * @param st OpusProjectionDecoder*: Projection encoder state to initialize. + * @param Fs opus_int32: Sampling rate to decode at (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels to output. + * This must be at most 255. + * It may be different from the number of coded + * channels (streams + + * coupled_streams). + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @param[in] demixing_matrix const unsigned char[demixing_matrix_size]: Demixing matrix + * that mapping from coded channels to output channels, + * as described in @ref opus_projection and + * @ref opus_projection_ctls. + * @param demixing_matrix_size opus_int32: The size in bytes of the + * demixing matrix, as + * described in @ref + * opus_projection_ctls. + * @returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes) + * on failure. + */ +OPUS_EXPORT int opus_projection_decoder_init( + OpusProjectionDecoder *st, + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + unsigned char *demixing_matrix, + opus_int32 demixing_matrix_size +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(6); + + +/** Decode a projection Opus packet. + * @param st OpusProjectionDecoder*: Projection decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int16*: Output signal, with interleaved + * samples. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_decode( + OpusProjectionDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int16 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + + +/** Decode a projection Opus packet with floating point output. + * @param st OpusProjectionDecoder*: Projection decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int16*: Output signal, with interleaved + * samples. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_decode_float( + OpusProjectionDecoder *st, + const unsigned char *data, + opus_int32 len, + float *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + + +/** Perform a CTL function on a projection Opus decoder. + * + * Generally the request and subsequent arguments are generated by a + * convenience macro. + * @param st OpusProjectionDecoder*: Projection decoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls, + * @ref opus_decoderctls, @ref opus_multistream_ctls, or + * @ref opus_projection_ctls. + * @see opus_genericctls + * @see opus_decoderctls + * @see opus_multistream_ctls + * @see opus_projection_ctls + */ +OPUS_EXPORT int opus_projection_decoder_ctl(OpusProjectionDecoder *st, int request, ...) OPUS_ARG_NONNULL(1); + + +/** Frees an OpusProjectionDecoder allocated by + * opus_projection_decoder_create(). + * @param st OpusProjectionDecoder: Projection decoder state to be freed. + */ +OPUS_EXPORT void opus_projection_decoder_destroy(OpusProjectionDecoder *st); + + +/**@}*/ + +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_PROJECTION_H */ diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_types.h b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_types.h new file mode 100644 index 0000000..7cf6755 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Headers/opus_types.h @@ -0,0 +1,166 @@ +/* (C) COPYRIGHT 1994-2002 Xiph.Org Foundation */ +/* Modified by Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +/* opus_types.h based on ogg_types.h from libogg */ + +/** + @file opus_types.h + @brief Opus reference implementation types +*/ +#ifndef OPUS_TYPES_H +#define OPUS_TYPES_H + +#define opus_int int /* used for counters etc; at least 16 bits */ +#define opus_int64 long long +#define opus_int8 signed char + +#define opus_uint unsigned int /* used for counters etc; at least 16 bits */ +#define opus_uint64 unsigned long long +#define opus_uint8 unsigned char + +/* Use the real stdint.h if it's there (taken from Paul Hsieh's pstdint.h) */ +#if (defined(__STDC__) && __STDC__ && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || (defined(__GNUC__) && (defined(_STDINT_H) || defined(_STDINT_H_)) || defined (HAVE_STDINT_H)) +#include +# undef opus_int64 +# undef opus_int8 +# undef opus_uint64 +# undef opus_uint8 + typedef int8_t opus_int8; + typedef uint8_t opus_uint8; + typedef int16_t opus_int16; + typedef uint16_t opus_uint16; + typedef int32_t opus_int32; + typedef uint32_t opus_uint32; + typedef int64_t opus_int64; + typedef uint64_t opus_uint64; +#elif defined(_WIN32) + +# if defined(__CYGWIN__) +# include <_G_config.h> + typedef _G_int32_t opus_int32; + typedef _G_uint32_t opus_uint32; + typedef _G_int16 opus_int16; + typedef _G_uint16 opus_uint16; +# elif defined(__MINGW32__) + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; +# elif defined(__MWERKS__) + typedef int opus_int32; + typedef unsigned int opus_uint32; + typedef short opus_int16; + typedef unsigned short opus_uint16; +# else + /* MSVC/Borland */ + typedef __int32 opus_int32; + typedef unsigned __int32 opus_uint32; + typedef __int16 opus_int16; + typedef unsigned __int16 opus_uint16; +# endif + +#elif defined(__MACOS__) + +# include + typedef SInt16 opus_int16; + typedef UInt16 opus_uint16; + typedef SInt32 opus_int32; + typedef UInt32 opus_uint32; + +#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */ + +# include + typedef int16_t opus_int16; + typedef u_int16_t opus_uint16; + typedef int32_t opus_int32; + typedef u_int32_t opus_uint32; + +#elif defined(__BEOS__) + + /* Be */ +# include + typedef int16 opus_int16; + typedef u_int16 opus_uint16; + typedef int32_t opus_int32; + typedef u_int32_t opus_uint32; + +#elif defined (__EMX__) + + /* OS/2 GCC */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined (DJGPP) + + /* DJGPP */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined(R5900) + + /* PS2 EE */ + typedef int opus_int32; + typedef unsigned opus_uint32; + typedef short opus_int16; + typedef unsigned short opus_uint16; + +#elif defined(__SYMBIAN32__) + + /* Symbian GCC */ + typedef signed short opus_int16; + typedef unsigned short opus_uint16; + typedef signed int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined(CONFIG_TI_C54X) || defined (CONFIG_TI_C55X) + + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef long opus_int32; + typedef unsigned long opus_uint32; + +#elif defined(CONFIG_TI_C6X) + + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#else + + /* Give up, take a reasonable guess */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#endif + +#endif /* OPUS_TYPES_H */ diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Modules/module.modulemap b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Modules/module.modulemap new file mode 100644 index 0000000..9d32559 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module opus { + umbrella header "opus.h" + export * + + module * { export * } +} diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Resources/Info.plist b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..e8c7647 --- /dev/null +++ b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,28 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + opus + CFBundleIdentifier + org.opus-codec.opus + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + opus + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.3.1 + CFBundleSupportedPlatforms + + MacOSX + + CFBundleVersion + 1 + LSMinimumSystemVersion + 10.15 + + diff --git a/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/opus b/opus_flutter_macos/macos/opus_flutter_macos/opus.xcframework/macos-arm64_x86_64/opus.framework/Versions/A/opus new file mode 100755 index 0000000000000000000000000000000000000000..c92362b950c1460c95f038c40e7d815b0efdee90 GIT binary patch literal 868312 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%0A(9K_k9mbDfN$-Gu-o?;xp+O4 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%0D_=juf=cMd3G_dN1vNNnz(g^UP?N@mUU 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 =ytw=AZ#S@=p;v}!I3 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�BLuo3;(7-o1XpJO|; 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

sY==NsSoasJKT?I#vde6Mx{&&%9b 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