From de785e9fb6b968a96a437cd2952c836be2a70ff0 Mon Sep 17 00:00:00 2001 From: fdp <1286779656@qq.com> Date: Thu, 21 Aug 2025 11:08:27 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=8A=A0=E5=85=A5ios=E9=80=9A=E8=AF=9D?= =?UTF-8?q?=E7=BF=BB=E8=AF=91=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SpeexKit.xcframework/Info.plist | 27 + .../SpeexKit.framework/Headers/OpusTools.h | 44 + .../SpeexKit.framework/Headers/OpusUnit.h | 100 ++ .../SpeexKit.framework/Headers/SpeexKit.h | 21 + .../SpeexKit.framework/Headers/SpeexUnit.h | 40 + .../ios-arm64/SpeexKit.framework/Info.plist | Bin 0 -> 752 bytes .../Modules/module.modulemap | 6 + .../ios-arm64/SpeexKit.framework/SpeexKit | Bin 0 -> 506400 bytes lib/modules/settings/views/settings_view.dart | 42 +- .../agent_service/AgentServiceImpl.swift | 2 +- .../ios/azure_speech/Package.swift | 5 +- .../Sources/azure_speech/AzureAsrHelper.swift | 153 ++- .../azure_speech/AzureSpeechPlugin.swift | 582 +++++++++-- .../IntegratedSpeechTranslationService.swift | 80 +- .../Sources/tools/SimpleAudioReceiver.swift | 12 +- .../JLAudioUnitKit.xcframework/Info.plist | 27 + .../Headers/JLAudioUnitKit.h | 24 + .../Headers/JLAudioUnitPlayer.h | 58 ++ .../Headers/JLOpusDecoder.h | 66 ++ .../Headers/JLOpusEncoder.h | 62 ++ .../Headers/JLOpusFormat.h | 53 + .../Headers/JLPcmToWav.h | 55 + .../Headers/JLPcmToWtg.h | 51 + .../Headers/JLSpeexDecoder.h | 54 + .../JLAudioUnitKit.framework/Info.plist | Bin 0 -> 768 bytes .../JLAudioUnitKit.framework/JLAudioUnitKit | Bin 0 -> 763208 bytes .../Modules/module.modulemap | 6 + .../JLAudioUnitKit.framework/readme.txt | 52 + .../ble_service/ios/ble_service/Package.swift | 20 +- .../Sources/ble_service/BleConst.swift | 7 +- .../Sources/ble_service/BleService.swift | 278 ++++- .../Sources/ble_service/RecordingFile.swift | 135 +++ .../ble_service/SwiftBleServicePlugin.swift | 4 + .../ble_service/SwiftOpusAudioProcessor.swift | 374 ++++++- .../Sources/ble_service/opuse.swift | 85 ++ .../ble_service/opus.xcframework/Info.plist | 43 + .../ios-arm64/opus.framework/Headers/opus.h | 981 ++++++++++++++++++ .../opus.framework/Headers/opus_defines.h | 753 ++++++++++++++ .../opus.framework/Headers/opus_multistream.h | 660 ++++++++++++ .../opus.framework/Headers/opus_types.h | 159 +++ .../ios-arm64/opus.framework/Info.plist | Bin 0 -> 708 bytes .../opus.framework/Modules/module.modulemap | 6 + .../ios-arm64/opus.framework/opus | Bin 0 -> 428352 bytes .../opus.framework/Headers/opus.h | 981 ++++++++++++++++++ .../opus.framework/Headers/opus_defines.h | 753 ++++++++++++++ .../opus.framework/Headers/opus_multistream.h | 660 ++++++++++++ .../opus.framework/Headers/opus_types.h | 159 +++ .../opus.framework/Info.plist | Bin 0 -> 708 bytes .../opus.framework/Modules/module.modulemap | 6 + .../ios-x86_64-simulator/opus.framework/opus | Bin 0 -> 497152 bytes .../chat_api/ios/chat_api/Package.swift | 2 +- 51 files changed, 7479 insertions(+), 209 deletions(-) create mode 100644 SpeexKit.xcframework/Info.plist create mode 100644 SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/OpusTools.h create mode 100644 SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/OpusUnit.h create mode 100644 SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/SpeexKit.h create mode 100644 SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/SpeexUnit.h create mode 100644 SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Info.plist create mode 100644 SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Modules/module.modulemap create mode 100644 SpeexKit.xcframework/ios-arm64/SpeexKit.framework/SpeexKit create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/Info.plist create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusFormat.h create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWav.h create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Info.plist create mode 100755 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/JLAudioUnitKit create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Modules/module.modulemap create mode 100644 local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/readme.txt create mode 100644 local_plugins/ble_service/ios/ble_service/Sources/ble_service/RecordingFile.swift create mode 100644 local_plugins/ble_service/ios/ble_service/Sources/ble_service/opuse.swift create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/Info.plist create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus.h create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_multistream.h create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Info.plist create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap create mode 100755 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/opus create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus.h create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_multistream.h create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Info.plist create mode 100644 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap create mode 100755 local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/opus diff --git a/SpeexKit.xcframework/Info.plist b/SpeexKit.xcframework/Info.plist new file mode 100644 index 000000000..c654fe5c9 --- /dev/null +++ b/SpeexKit.xcframework/Info.plist @@ -0,0 +1,27 @@ + + + + + AvailableLibraries + + + BinaryPath + SpeexKit.framework/SpeexKit + LibraryIdentifier + ios-arm64 + LibraryPath + SpeexKit.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/OpusTools.h b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/OpusTools.h new file mode 100644 index 000000000..55fa7f1e0 --- /dev/null +++ b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/OpusTools.h @@ -0,0 +1,44 @@ +// +// OpusTools.h +// SpeexKit +// +// Created by EzioChan on 2024/1/17. +// Copyright © 2024 www.zh-jieli.com. All rights reserved. +// + +#import + + +NS_ASSUME_NONNULL_BEGIN + +@protocol OpusToolsDelegate + +-(void)opusToolsPcmData:(NSData*)data; + +-(void)opusToolsPcmFile:(NSData *)data; + +-(void)opusToolsOpusData:(NSData *)data; + +-(void)opusToolsOpusFile:(NSData *)data; + +@end + +@interface OpusTools : NSObject + +@property(nonatomic,weak)id delegate; + +-(void)opusDecodeInfo:(int)sampleRate Channel:(int)channel frameSize:(int) fs isHasHead:(BOOL)head; + +-(void)opusEncodeInfo:(int)sampleRate Channel:(int)channel frameSize:(int)fs isHasHead:(BOOL)head; + +-(void)decodeData:(NSData*)data; + +-(void)decodeFile:(NSString*)path; + +-(void)encodeData:(NSData*)data; + +-(void)encodeFile:(NSString*)path; + +@end + +NS_ASSUME_NONNULL_END diff --git a/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/OpusUnit.h b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/OpusUnit.h new file mode 100644 index 000000000..37b12201a --- /dev/null +++ b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/OpusUnit.h @@ -0,0 +1,100 @@ +// +// OpusUnit.h +// QCY_Demo +// +// Created by 杰理科技 on 2021/7/5. +// Copyright © 2021 杰理科技. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + * 通知:流式编码回调Opus数据 + * 通知数据类型:NSData(Opus) + */ +extern NSString *kOPUS_ENCODE_DATA; +/** + * 通知:流式解码回调PCM数据 + * 通知数据类型:NSData(PCM) + */ +extern NSString *kOPUS_DECODE_DATA; + + +@interface OpusUnit : NSObject + ++ (void)opusIsLog:(BOOL)log; + +#pragma mark - Opus参数 +/** + * 设置参数 + * @param rate 采样率 例如:48000、24000、16000、12000、8000(默认 16000) + * @param frameRate 帧长度 + * 16k :40 + * 32K :80 + * 64k :160 + * 96k :320 + * 128k:640 + * @param channel 声道 例如:1、2 (默认 1) + * @param isHeader 是否带头 + */ ++(void)opusSetSampleRate:(int)rate frameRate:(int)frameRate Channels:(int)channel isHeader:(BOOL)isHeader; + +#pragma mark - Opus解码 + +/** + * 直接【opus文件】转换成【pcm文件】 + * @param path_opus opus文件路径 + * @param path_pcm pcm文件路径 + */ ++ (int)opusDecodeOPUS:(NSString *)path_opus PCM:(NSString *)path_pcm; + +/** + * 流式解码【开启】 + * 注意:需要异步调用,放在工程单利类中,切勿频繁开启。 + */ ++ (int)opusDecoderRun; + +/** + * 输入Opus的数据 + * 通知监听“kOPUS_DECODE_DATA”获得解码后数据 + * 通知数据类型:NSNotification.object => NSData(PCM格式) + * @param data opus数据流(长度:1024) + */ ++ (void)opusWriteData:(NSData*)data; + +/** + * 流式解码【关闭】 + */ ++ (int)opusDecoderStop; + +#pragma mark - Opus编码 + +/** + * 【pcm文件】转换成【opus文件】 + */ ++ (int)opusEncodePCM:(NSString *)path_pcm OPUS:(NSString *)path_opus; + +/** + * 流式编码【开启】 + * 注意:需要异步调用,放在工程单利类中,切勿频繁开启。 + */ ++ (int)opusEncoderRun; + +/** + * 输入pcm的数据 + * 通知监听“kOPUS_DECODE_DATA”获得解码后数据 + * 通知数据类型:NSNotification.object => NSData(opus格式) + * @param data opus数据流(长度:1024) + */ ++ (void)pcmWriteData:(NSData*)data; + +/** + * 流式编码【关闭】 + */ ++ (int)opusEncoderStop; + +@end + +NS_ASSUME_NONNULL_END diff --git a/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/SpeexKit.h b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/SpeexKit.h new file mode 100644 index 000000000..0fb1c92bd --- /dev/null +++ b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/SpeexKit.h @@ -0,0 +1,21 @@ +// +// SpeexKit.h +// SpeexKit +// +// Created by zhihui liang on 2018/8/20. +// Copyright © 2018年 www.zh-jieli.com. All rights reserved. +// + +#import + +//! Project version number for SpeexKit. +FOUNDATION_EXPORT double SpeexKitVersionNumber; + +//! Project version string for SpeexKit. +FOUNDATION_EXPORT const unsigned char SpeexKitVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + +#import +#import +#import diff --git a/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/SpeexUnit.h b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/SpeexUnit.h new file mode 100644 index 000000000..da7e93dae --- /dev/null +++ b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Headers/SpeexUnit.h @@ -0,0 +1,40 @@ +// +// SpeexUnit.h +// SpeexKit +// +// Created by zhihui liang on 2018/8/20. +// Copyright © 2018年 www.zh-jieli.com. All rights reserved. +// + +#import + +/** + * 流式解码回调PCM数据 + */ +extern NSString *kSPEEX_DECODE_DATA; //speex decode + +@interface SpeexUnit : NSObject + ++(void)speexIsLog:(BOOL)log; + +/** + * 直接【speex文件】转换成【pcm文件】 + */ ++(int)speexDecodeSPX:(NSString *)path_spx PCM:(NSString *)path_pcm; + +/** + * 流式解码【开启】 + */ ++(int)speexDecoderRun; + +/** + * 输入Speex的数据 + */ ++(void)speexWriteData:(NSData*)data; + +/** + * 流式解码【关闭】 + */ ++(int)speexDecoderStop; + +@end diff --git a/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Info.plist b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..f1478bd9917726bbdf3ba042f77bef6583838e63 GIT binary patch literal 752 zcmYjO$!^m?81@VW%F<@q5NJyaZP_Wc>@*2Th)d%}ib80Jodt+$CicXccD&#vY7o2t zHy(gPIdkC!cmYmGy&|500|zb$JF%6{<^R8J^#3zmhf&WLgkLBF;Hjz8XU=1HTp}vYTnr-rL z`dQRA9ka~J)W_F$!iQ-1}~~Y zGb`?7MWIcdC}w+#_>j+a5)=VN%x?)TF~5@)a#()E3!m@ZM*zX22Mz3+g&a4{<+%!H zaPPQ}+*j@!cg+0;vtSi$fG6N7cnuCf0N#TS;1l=)zJnj&82ki(z+dnWLO2CyU<&5o fV<^EgY{FMig9hA(3|i3PMhAj%CQ7dZG2%unWT literal 0 HcmV?d00001 diff --git a/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Modules/module.modulemap b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Modules/module.modulemap new file mode 100644 index 000000000..db8a36801 --- /dev/null +++ b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module SpeexKit { + umbrella header "SpeexKit.h" + export * + + module * { export * } +} diff --git a/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/SpeexKit b/SpeexKit.xcframework/ios-arm64/SpeexKit.framework/SpeexKit new file mode 100644 index 0000000000000000000000000000000000000000..194c091f6374c44cdb3f675f6100979e5e99e975 GIT binary patch literal 506400 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�{zG#m%c5Q94zaOR_NbVhK8-B)lY~QZI%}s5w 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%0AmcSk z!nysF{Rzyd7@tohoXagRl)n}bEK~T7063QK49xEyfQ(<3gmYg;-uR z&}$9K9TD(sGk2N+&vEk;{C9YcdIFxuJbUoJ6YAQ$)+X;}?-sAevnGCRe8BTb{0aQ; zN!XVV@SI3Eh5tRleZhd|RB%B&2jy;fVwGb#I1 zyw+o>ds6qM20U9*x8nb3%JCGBXG_}Fw18)Qm%F*fd5VDo7274C+R2BPo*QA zj8ho_&;G8@cZL7VJ(>G5z1FGBRo&Kf3wYWy4`+HjYqQp6A#PbG@V~SBZq!*}s8_07f=pSXL&$%y*pvx2;;*u}ScNCqg=p@qUTlKl(d%;6J z6Z$>mN=57Unhr$+2y+|$$*!p~OdM(<~HyR8Xzrvwq+=lh>JEi^n45J@yUdb*9(ifReXarT4(s$~(JWi{0?bo%8zAF~c-b4D&_#&#W04QQ{}yv*g6EY} z^%isEH3aW*c=SW`6BH1^`EiM^Kxptl0&b_e6ke=>NFS%DqLadz)R zE4agRL0gOO!22y1c#>NmF+9Ony?J}zG13eEEnw^&Z}wdpH_pGAkjKlMMV_UuYC(snJk(x?7M zzdf}sx)wCf?+*+1GG-20p0{x-(vk_d&CL73HZ#!LVHqb=e95gHpgTyX8z)~}p7(=y zq5Gf;;cvrvzN#zo_H+R1GojQ6(AvY83Ed2TJTuhT+Y{#vyW`;*#oxsnuk8O~<*S&` zzjFM{ZAGt~xee3wHAU|LX3V;;sH?H9$Pe8T9XQw6(bwGmft7c1rJ46pM|$4LSIxCQ z-ap1j?`5Vg3_wRjFEef74L5$)lKs?%Y@WGnxv`@q&@DUX%S+Y z4|(t6?E3pw_73RyNe?W~&Iv3}nnB$dN8Wn9r3dV8?-rkP)1|iuk620I3+!N89z@

7y*csAQ)bkj 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 N-0@I~NzZ`je*ul-B4z*p literal 0 HcmV?d00001 diff --git a/lib/modules/settings/views/settings_view.dart b/lib/modules/settings/views/settings_view.dart index 4220460bd..c626f2e54 100644 --- a/lib/modules/settings/views/settings_view.dart +++ b/lib/modules/settings/views/settings_view.dart @@ -515,27 +515,27 @@ class SettingsView extends GetView { // ? Colors.white.withOpacity(0.1) // : Colors.grey[200]), //BLE测试 - // _buildSimpleNavigationSetting( - // title: 'opus解码测试', - // subtitle: '测试opus解码', - // icon: Icons.bluetooth_searching, - // iconBgColor: isDarkMode - // ? Colors.green[900]!.withOpacity(0.3) - // : Colors.green[100]!, - // iconColor: - // isDarkMode ? Colors.green[300]! : Colors.green[600]!, - // titleColor: isDarkMode ? Colors.white : null, - // subtitleColor: isDarkMode ? Colors.white70 : null, - // onTap: () { - // Get.toNamed(Routes.opusTest); - // }, - // isDarkMode: isDarkMode, - // ), - // Divider( - // height: 1, - // color: isDarkMode - // ? Colors.white.withOpacity(0.1) - // : Colors.grey[200]), + _buildSimpleNavigationSetting( + title: 'opus解码测试', + subtitle: '测试opus解码', + icon: Icons.bluetooth_searching, + iconBgColor: isDarkMode + ? Colors.green[900]!.withOpacity(0.3) + : Colors.green[100]!, + iconColor: + isDarkMode ? Colors.green[300]! : Colors.green[600]!, + titleColor: isDarkMode ? Colors.white : null, + subtitleColor: isDarkMode ? Colors.white70 : null, + onTap: () { + Get.toNamed(Routes.opusTest); + }, + isDarkMode: isDarkMode, + ), + Divider( + height: 1, + color: isDarkMode + ? Colors.white.withOpacity(0.1) + : Colors.grey[200]), // BLE测试 // _buildSimpleNavigationSetting( diff --git a/local_plugins/agent_service/ios/agent_service/Sources/agent_service/AgentServiceImpl.swift b/local_plugins/agent_service/ios/agent_service/Sources/agent_service/AgentServiceImpl.swift index 32cbf7d71..af51264a9 100644 --- a/local_plugins/agent_service/ios/agent_service/Sources/agent_service/AgentServiceImpl.swift +++ b/local_plugins/agent_service/ios/agent_service/Sources/agent_service/AgentServiceImpl.swift @@ -1463,7 +1463,7 @@ extension AgentServiceImpl: BleService.Callback { } func onAudioDataReceived1(data: Data) { - + } func onWakeupSignalReceived() { diff --git a/local_plugins/azure_speech/ios/azure_speech/Package.swift b/local_plugins/azure_speech/ios/azure_speech/Package.swift index 17ed7498e..ef7bf57ea 100644 --- a/local_plugins/azure_speech/ios/azure_speech/Package.swift +++ b/local_plugins/azure_speech/ios/azure_speech/Package.swift @@ -9,13 +9,16 @@ let package = Package( ], dependencies: [ // 依赖speech接口模块 - .package(path: "../../../speech/ios/speech") + .package(path: "../../../speech/ios/speech"), + // 添加对ble_service的依赖 + .package(path: "../../../ble_service/ios/ble_service") ], targets: [ .target( name: "azure_speech", dependencies: [ .product(name: "speech", package: "speech"), + .product(name: "ble-service", package: "ble_service"), "MicrosoftCognitiveServicesSpeech" ], path: "Sources", // 修改为包含整个 Sources 目录 diff --git a/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/AzureAsrHelper.swift b/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/AzureAsrHelper.swift index fa5c166eb..fa4f5d684 100644 --- a/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/AzureAsrHelper.swift +++ b/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/AzureAsrHelper.swift @@ -3,6 +3,7 @@ import AVFoundation import MicrosoftCognitiveServicesSpeech import speech import os.log +import Network // MARK: - 基于微软Azure语音服务的ASR实现 /** @@ -21,6 +22,12 @@ public class AzureAsrHelper: NSObject { private var recognizer: SPXSpeechRecognizer? private var audioConfig: SPXAudioConfiguration? + // 网络监听相关 + private var networkMonitor: NWPathMonitor? + private var networkQueue: DispatchQueue? + private var isNetworkAvailable = true + private var continuousCallback: ContinuousRecognizeCallback? + // 状态管理 private var _isContinuousRecognitionActive = false @@ -110,20 +117,93 @@ public class AzureAsrHelper: NSObject { // 预初始化音频组件 preInitializeAudioComponents() + // 初始化网络监听 + initNetworkMonitoring() + return true } catch { os_log("初始化失败: %{public}@", log: log, type: .error, error.localizedDescription) return false } } - + /** + * 初始化网络监听 + */ + private func initNetworkMonitoring() { + networkQueue = DispatchQueue(label: "NetworkMonitor") + networkMonitor = NWPathMonitor() + + networkMonitor?.pathUpdateHandler = { [weak self] path in + guard let self = self else { return } + + let wasAvailable = self.isNetworkAvailable + self.isNetworkAvailable = (path.status == .satisfied) + + if wasAvailable && !self.isNetworkAvailable { + // 网络断开 + self.handleNetworkLost() + } else if !wasAvailable && self.isNetworkAvailable { + // 网络恢复 + self.handleNetworkAvailable() + } + } + + if let queue = networkQueue { + networkMonitor?.start(queue: queue) + } + + os_log("网络监听已初始化", log: log, type: .info) + } + + /** + * 处理网络可用事件 + */ + private func handleNetworkAvailable() { + os_log("网络已恢复", log: log, type: .info) + + DispatchQueue.main.async { [weak self] in + // self?.continuousCallback?.onNetworkRestored() + } + } + + /** + * 处理网络丢失事件 + */ + private func handleNetworkLost() { + os_log("网络连接丢失", log: log, type: .error) + + // 立即停止音频处理 + stopAudioProcessingImmediately() + + DispatchQueue.main.async { [weak self] in + // self?.continuousCallback?.onNetworkError("网络连接已断开") + } + } + + /** + * 立即停止音频处理 + */ + private func stopAudioProcessingImmediately() { + audioStream?.stopMicrophoneCapture() + + if _isContinuousRecognitionActive { + do { + try recognizer?.stopContinuousRecognition() + _isContinuousRecognitionActive = false + os_log("因网络问题强制停止识别", log: log, type: .info) + } catch { + _isContinuousRecognitionActive = false + os_log("强制停止识别失败: %@", log: log, type: .error, error.localizedDescription) + } + } + } /** * 预初始化音频组件 * 在初始化阶段就准备好音频流和相关组件,减少首次启动延迟 */ private func preInitializeAudioComponents() { if audioStream == nil { - audioStream = SimpleAudioReceiver(parentHelper: self) + audioStream = SimpleAudioReceiver() audioStream?.initAudioRecord() } @@ -149,7 +229,11 @@ public class AzureAsrHelper: NSObject { ) -> Bool { guard speechConfig != nil else { print("语音服务未初始化") - //callback.onError("语音服务未初始化") + return false + } + + // 检查网络状态 + if !checkNetworkStatus() { return false } @@ -170,6 +254,8 @@ public class AzureAsrHelper: NSObject { } return false } + + print("startContinuousRecognition:\(audioSourceType)") // 启动音频处理 audioStream?.startAudioRecord(audioSourceType: audioSourceType == .microphone ? .microphone : .external, audioDataCallback: audioDataCallback) @@ -381,7 +467,7 @@ public class AzureAsrHelper: NSObject { * 设置麦克风音频流 */ private func setupMicrophoneStream() { - audioStream = SimpleAudioReceiver(parentHelper: self) + audioStream = SimpleAudioReceiver() // 【优化】检查音频配置是否已存在 if audioConfig == nil, let pushStream = audioStream?.pushAudioStream { audioConfig = SPXAudioConfiguration(streamInput: pushStream) @@ -462,15 +548,19 @@ public class AzureAsrHelper: NSObject { /** * 设置事件监听器 */ - public func setupEventListeners(callback: ContinuousRecognizeCallback) -> Bool{ + public func setupEventListeners(callback: ContinuousRecognizeCallback) -> Bool { print("设置ssssss监听器:${speechConfig}") - // 重设识别器 + // 保存回调引用用于网络事件 + self.continuousCallback = callback + + // 重设识别器 if (!setupRecognizer()) { return false } - guard let recognizer = recognizer else { return false} - // 正在识别事件 + guard let recognizer = recognizer else { return false } + + // 正在识别事件 recognizer.addRecognizingEventHandler { [weak self] (_, event) in guard let self = self else { return } let result = event.result @@ -532,7 +622,12 @@ public class AzureAsrHelper: NSObject { os_log("识别取消: %{public}@", log: self.log, type: .error, errorDetails) - callback.onCanceled(reason, errorDetails) + // 检查是否为网络相关错误 + if self.isNetworkRelatedError(errorDetails) { + callback.onError("网络连接问题: \(errorDetails)") + } else { + callback.onCanceled(reason, errorDetails) + } } return true } @@ -575,7 +670,7 @@ public class AzureAsrHelper: NSObject { if audioStream == nil { // 创建外部音频拉流对象 - audioStream = SimpleAudioReceiver(parentHelper: self) + audioStream = SimpleAudioReceiver() audioStream?.initAudioRecord() } @@ -702,6 +797,43 @@ public class AzureAsrHelper: NSObject { */ func onError(_ error: String) } + /** + * 检查网络状态 + * @return 网络是否可用 + */ +private func checkNetworkStatus() -> Bool { + guard let monitor = networkMonitor else { + os_log("网络监听器未初始化,假设网络可用", log: log) + return true + } + + let currentPath = monitor.currentPath + let isAvailable = currentPath.status == .satisfied + + if !isAvailable { + os_log("网络不可用,无法启动语音识别", log: log, type: .error) + continuousCallback?.onError("网络连接不可用,请检查网络设置") + } + + return isAvailable +} + +/** + * 判断是否为网络相关错误 + * @param errorDetails 错误详情 + * @return 是否为网络错误 + */ +private func isNetworkRelatedError(_ errorDetails: String) -> Bool { + let networkErrorKeywords = [ + "network", "connection", "timeout", "unreachable", + "网络", "连接", "超时", "不可达", + "ConnectionFailure", "NetworkError", "TimeoutError" + ] + + let lowercaseError = errorDetails.lowercased() + return networkErrorKeywords.contains { lowercaseError.contains($0.lowercased()) } +} + } // //ios 语言检测 @@ -754,3 +886,4 @@ public class AzureAsrHelper: NSObject { // "originalCode": topResult.language // ] // } + diff --git a/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/AzureSpeechPlugin.swift b/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/AzureSpeechPlugin.swift index 4fbb39d9c..0f5c93eab 100644 --- a/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/AzureSpeechPlugin.swift +++ b/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/AzureSpeechPlugin.swift @@ -5,6 +5,8 @@ import MicrosoftCognitiveServicesSpeech // 自定义语音处理组件,提供音频流处理等功能 import speech import os.log +// 导入蓝牙服务模块,用于处理蓝牙设备回调 +import ble_service /** * Azure Speech Plugin @@ -32,6 +34,14 @@ import os.log // 是否已添加TTS事件监听器 private var isTtsListenerAdded = false + // AST相关 + private var astChannel: FlutterMethodChannel? + private var astEventChannel: FlutterEventChannel? + private let azureAstHelper = IntegratedSpeechTranslationService() + // 创建事件回调 + private var astEventCallback: AstEventCallback? + // 是否已添加AST事件监听器 + private var isAstListenerAdded = false // 当前的连续识别回调 private var currentAsrCallback: AsrCallbackWrapper? @@ -39,7 +49,9 @@ import os.log // 插件注册 public static func register(with registrar: FlutterPluginRegistrar) { let instance = AzureSpeechPlugin() - + // 2. 初始化BleService并注册回调 + BleService.shared.addCallback(instance) + // 初始化ASR通道 let asrChannel = FlutterMethodChannel(name: "azure_speech/asr", binaryMessenger: registrar.messenger()) registrar.addMethodCallDelegate(instance, channel: asrChannel) @@ -60,6 +72,17 @@ import os.log instance?.handleTtsMethodCall(call, result: result) } + + // 初始化AST通道 + let astChannel = FlutterMethodChannel(name: "azure_speech/ast", binaryMessenger: registrar.messenger()) + registrar.addMethodCallDelegate(instance, channel: astChannel) + instance.astChannel = astChannel + + // 设置AST通道处理器 - 使用实例方法 + astChannel.setMethodCallHandler { [weak instance] (call, result) in + instance?.handleAstMethodCall(call, result: result) + } + // 初始化ASR事件通道 let asrEventChannel = FlutterEventChannel(name: "azure_speech/asr_events", binaryMessenger: registrar.messenger()) asrEventChannel.setStreamHandler(instance) @@ -69,6 +92,14 @@ import os.log let ttsEventChannel = FlutterEventChannel(name: "azure_speech/tts_events", binaryMessenger: registrar.messenger()) ttsEventChannel.setStreamHandler(instance) instance.ttsEventChannel = ttsEventChannel + + // 初始化TTS事件通道 + let astEventChannel = FlutterEventChannel(name: "azure_speech/asr_events", binaryMessenger: registrar.messenger()) + astEventChannel.setStreamHandler(instance) + instance.astEventChannel = astEventChannel + + + } // 发送ASR事件方法 internal func sendAsrEvent(_ event: [String: Any]) { @@ -153,20 +184,21 @@ import os.log return } - // 解析音频源类型 - let audioSourceType: AzureAsrHelper.AudioSourceType - if let args = call.arguments as? [String: Any], - let audioSourceString = args["audioSourceType"] as? String { - switch audioSourceString.lowercased() { - case "external": - audioSourceType = .external - default: - audioSourceType = .microphone - } - } else { - audioSourceType = .microphone + // 解析音频源类型参数 + guard let args = call.arguments as? [String: Any], + let isExternalActive = args["audioSourceType"] as? Bool else { + result(FlutterError(code: "INVALID_ARGUMENTS", message: "必要的参数不能为空", details: nil)) + return } + // 根据参数确定音频源类型 + let audioSourceType = isExternalActive ? + AzureAsrHelper.AudioSourceType.external : + AzureAsrHelper.AudioSourceType.microphone + + print("startContinuousRecognition: \(audioSourceType)") + + // 启动连续识别 let success = azureAsrHelper.startContinuousRecognition( audioSourceType: audioSourceType ) @@ -184,17 +216,17 @@ import os.log callback: currentAsrCallback! ) result(success) - - case "disableBluetoothAudio": - azureAsrHelper.disableBluetoothAudio(); - return - - case "restoreOriginalAudioState": - azureAsrHelper.restoreOriginalAudioState(); - return - + + case "disableBluetoothAudio": + azureAsrHelper.disableBluetoothAudio(); + return + + case "restoreOriginalAudioState": + azureAsrHelper.restoreOriginalAudioState(); + return + case "stopContinuousRecognition": - + let success = azureAsrHelper.stopContinuousRecognition() currentAsrCallback = nil result(success) @@ -287,15 +319,15 @@ import os.log } catch { result(FlutterError(code: "ENABLERECORD_ERROR", message: error.localizedDescription, details: nil)) } - - + + case "pauseRecord": azureAsrHelper.pauseRecord() result(true) - // case "resumeRecord": - // azureAsrHelper.resumeRecord() - // result(true) + // case "resumeRecord": + // azureAsrHelper.resumeRecord() + // result(true) case "stopRecord": guard let args = call.arguments as? [String: Any], @@ -311,16 +343,16 @@ import os.log } case "disableBluetoothAudio": print("disableBluetoothAudio") - azureAsrHelper.disableBluetoothAudio(); - azureTtsHelper.stop() + azureAsrHelper.disableBluetoothAudio(); + azureTtsHelper.stop() result(true) case "restoreOriginalAudioState": print("restoreOriginalAudioState") - azureAsrHelper.restoreOriginalAudioState(); - azureTtsHelper.stop() + azureAsrHelper.restoreOriginalAudioState(); + azureTtsHelper.stop() result(true) case "setAudioConfig": @@ -415,13 +447,13 @@ import os.log if (type == 0) { // 默认(如果有耳机选耳机,否则使用系统扬声器) azureAsrHelper.restoreOriginalAudioState(); - // azureTtsHelper.setAudioOutputDevice() + // azureTtsHelper.setAudioOutputDevice() } else if (type == 1) { // 强制使用声器 azureAsrHelper.disableBluetoothAudio(); - // azureTtsHelper.setAudioOutputDevice() + // azureTtsHelper.setAudioOutputDevice() } else if (type == 2) { // 强制使用耳机 @@ -437,60 +469,388 @@ import os.log result(FlutterMethodNotImplemented) } } + + // MARK: - AST 方法处理 + private func handleAstMethodCall(_ call: FlutterMethodCall, result: @escaping FlutterResult) { + switch call.method { + case "enableRecord": + guard let args = call.arguments as? [String: Any], + let filePath = args["filePath"] as? String else { + result(FlutterError(code: "INVALID_ARGUMENTS", message: "Missing filePath", details: nil)) + return + } + + do { + os_log("音频文件名称为: %@", log: log, type: .info, filePath) + try azureAstHelper.enableRecord(filePath: filePath) + result(true) + } catch { + result(FlutterError(code: "ENABLERECORD_ERROR", message: error.localizedDescription, details: nil)) + } + + case "startContinuousTranslation": + do { + os_log("开启翻译", log: log, type: .info) + try azureAstHelper.startContinuousTranslation() + result(true) + } catch { + result(FlutterError(code: "START_CONTINUOUS_TRANSLATION_ERROR", message: error.localizedDescription, details: nil)) + } + + case "stopContinuousTranslation": + do { + os_log("停止翻译", log: log, type: .info) + try azureAstHelper.stopContinuousTranslation() + result(true) + } catch { + result(FlutterError(code: "STOP_CONTINUOUS_TRANSLATION_ERROR", message: error.localizedDescription, details: nil)) + } + + case "dispose": + do { + os_log("释放AST资源", log: log, type: .info) + azureAstHelper.dispose() + result(true) + } catch { + result(FlutterError(code: "DISPOSE_ERROR", message: error.localizedDescription, details: nil)) + } + + case "recognizeCallback": + os_log("recognizeCallback:", log: log, type: .info) + result(true) + + case "path": + guard let args = call.arguments as? [String: Any], + let filePath = args["filePath"] as? String else { + result(FlutterError(code: "INVALID_ARGUMENTS", message: "Missing filePath", details: nil)) + return + } + + let fileURL = URL(fileURLWithPath: filePath) + + // if FileManager.default.fileExists(atPath: filePath) { + // // 启动异步任务来按播放速度读取音频文件 + // Task { + // // await streamAudioFile(fileURL: fileURL) + // } + // result(true) + // } else { + // result(FlutterError(code: "FILE_NOT_FOUND", message: "音频文件不存在: \(filePath)", details: nil)) + // } + + case "initialize": + guard let args = call.arguments as? [String: Any] else { + result(FlutterError(code: "INVALID_ARGUMENTS", message: "Missing arguments", details: nil)) + return + } + + let subscriptionKey = args["subscriptionKey"] as? String ?? "" + let region = args["region"] as? String ?? "" + let supportedLanguages = args["supportedLanguages"] as? [String] ?? ["zh-CN"] + let useExternalAudio = args["useExternalAudio"] as? Bool ?? false + + // 获取翻译服务配置参数 + let translationAccessKey = args["translationAccessKey"] as? String ?? "" + let translationSecretKey = args["translationSecretKey"] as? String ?? "" + let translationRegion = args["translationRegion"] as? String ?? "cn-north-1" + + os_log("初始化AST服务", log: log, type: .info) + + // 创建Azure配置 + let azureConfig = AzureConfiguration( + subscriptionKey: subscriptionKey, + region: region + ) + + // 创建翻译配置 + let translationConfig = TranslationConfiguration( + accessKey: translationAccessKey, + secretKey: translationSecretKey, + region: translationRegion + ) + + // 创建服务配置 + let serviceConfig = IntegratedSpeechTranslationService.ServiceConfiguration( + sourceLanguage: supportedLanguages.first ?? "zh-CN", + targetLanguage: supportedLanguages.count > 1 ? supportedLanguages[1] : "en-US" + ) + + // 创建事件回调 + let callback = AstEventCallback(plugin: self) + astEventCallback = callback + + // 使用异步任务调用初始化方法 + Task { + await azureAstHelper.initialize( + azureConfig: azureConfig, + translationConfig: translationConfig, + serviceConfig: serviceConfig, + callback: callback + ) + } + result(true) + + default: + result(FlutterMethodNotImplemented) + } + } + } - -// MARK: - ASR回调包装器 -private class AsrCallbackWrapper: AzureAsrHelper.ContinuousRecognizeCallback { +// MARK: - AST Event Callback +/** + * AST事件回调类 + * 实现 IntegratedSpeechTranslationService.ServiceEventCallback 协议 + */ +private class AstEventCallback: IntegratedSpeechTranslationService.ServiceEventCallback { private weak var plugin: AzureSpeechPlugin? + /** + * 构造函数 + * @param plugin AzureSpeechPlugin 实例的弱引用 + */ init(plugin: AzureSpeechPlugin) { self.plugin = plugin } - func onResult(_ text: String, _ detectedLanguage: String) { - plugin?.sendAsrEvent([ - "type": "result", - "text": text, - "detectedLanguage": detectedLanguage - ]) + /** + * 服务初始化完成回调 + */ + public func onServiceInitialized() { +// plugin?.sendAsrEvent([ +// "type": "serviceInitialized" +// ]) } - func onRecognizing(_ recognizing: String, _ detectedLanguage: String) { - plugin?.sendAsrEvent([ - "type": "recognizing", - "text": recognizing, - "detectedLanguage": detectedLanguage - ]) + /** + * 识别中回调 + * @param text 正在识别的文本 + * @param language 语言 + * @param confidence 置信度 + */ + public func onRecognizing(text: String, language: String, confidence: Float) { +// plugin?.sendAsrEvent([ +// "type": "recognizing", +// "text": text, +// "language": language, +// "confidence": confidence +// ]) } - func onSessionStarted() { - plugin?.sendAsrEvent([ - "type": "sessionStarted" - ]) + /** + * 识别完成回调 + * @param text 识别的文本 + * @param language 语言 + * @param confidence 置信度 + */ + public func onRecognized(text: String, language: String, confidence: Float) { + print( "识别到文本: \(text), 语言: \(language), 置信度: \(confidence)") + plugin?.sendAsrEvent([ + "type": "result1", + "text": text, + "language": language, + ]) } - func onSessionStopped() { - plugin?.sendAsrEvent([ - "type": "sessionStopped" - ]) + /** + * 翻译完成回调 + * @param originalText 原始文本 + * @param translatedText 翻译文本 + * @param targetLanguage 目标语言 + */ + public func onTranslated(originalText: String, translatedText: String, targetLanguage: String) { +// plugin?.sendAsrEvent([ +// "type": "translated", +// "originalText": originalText, +// "translatedText": translatedText, +// "targetLanguage": targetLanguage +// ]) } - func onCanceled(_ reason: String, _ errorDetails: String) { - plugin?.sendAsrEvent([ - "type": "canceled", - "reason": reason, - "errorDetails": errorDetails - ]) + /** + * 翻译开始回调 + * @param text 要翻译的文本 + */ + public func onTranslationStarted(text: String) { +// plugin?.sendAsrEvent([ +// "type": "translationStarted", +// "text": text +// ]) } - func onError(_ error: String) { - plugin?.sendAsrEvent([ - "type": "error", - "error": error - ]) + /** + * 翻译失败回调 + * @param text 翻译失败的文本 + * @param error 错误信息 + */ + public func onTranslationFailed(text: String, error: String) { +// plugin?.sendAsrEvent([ +// "type": "translationFailed", +// "text": text, +// "error": error +// ]) + } + + /** + * 语音合成开始回调 + * @param text 要合成的文本 + */ + func onSynthesisStarted(text: String) { +// plugin?.sendAsrEvent([ +// "type": "synthesisStarted", +// "text": text +// ]) + } + + /** + * 语音合成完成回调 + * @param text 合成的文本 + */ + public func onSynthesisCompleted(text: String) { +// plugin?.sendAsrEvent([ +// "type": "synthesisCompleted", +// "text": text +// ]) + } + + /** + * 语音合成失败回调 + * @param text 合成失败的文本 + * @param error 错误信息 + */ + public func onSynthesisFailed(text: String, error: String) { +// plugin?.sendAsrEvent([ +// "type": "synthesisFailed", +// "text": text, +// "error": error +// ]) + } + + /** + * 语音合成进度回调 + * @param text 正在合成的文本 + * @param progress 进度(0.0-1.0) + */ + public func onSynthesisProgress(text: String, progress: Float) { +// plugin?.sendAsrEvent([ +// "type": "synthesisProgress", +// "text": text, +// "progress": progress +// ]) + } + + /** + * 识别开始回调 + */ + func onRecognitionStarted() { +// plugin?.sendAsrEvent([ +// "type": "recognitionStarted" +// ]) + } + + /** + * 识别停止回调 + */ + public func onRecognitionStopped() { +// plugin?.sendAsrEvent([ +// "type": "recognitionStopped" +// ]) + } + + /** + * 状态变化回调 + * @param component 组件名称 + * @param isActive 是否激活 + */ + public func onStateChanged(component: String, isActive: Bool) { +// plugin?.sendAsrEvent([ +// "type": "stateChanged", +// "component": component, +// "isActive": isActive +// ]) + } + + /** + * 错误回调 + * @param component 组件名称 + * @param error 错误信息 + */ + public func onError(component: String, error: String) { +// plugin?.sendAsrEvent([ +// "type": "error", +// "component": component, +// "error": error +// ]) + } + + /** + * 语音合成音频数据生成回调 + * @param text 合成的文本 + * @param audioData 音频数据 + */ + public func onSynthesisAudioGenerated(text: String, audioData: Data) { + print("语音合成音频数据生成回调", text, audioData.count) + // 调用BLE服务写入音频数据 + BleService.shared.writeExternalAudioData(data: audioData) + +// plugin?.sendAsrEvent([ +// "type": "synthesisAudioGenerated", +// "text": text, +// "audioDataSize": audioData.count +// ]) } } +extension AzureSpeechPlugin: BleService.Callback { + /// 扫描结果回调 + /// - Parameter devices: 扫描到的设备列表 + public func onScanResult(devices: [[String: Any]]) { + } + + /// 连接状态变化回调 + /// - Parameter state: 连接状态 + public func onConnectionStateChanged(state: Int) { + } + + /// 接收到音频数据回调 + /// - Parameter data: 音频数据 + public func onAudioDataReceived(data: Data) { + // 安全解包版本 + guard let audioStream = azureAsrHelper.audioStream else { + os_log("音频流未初始化", type: .error) + return + } + audioStream.saveAudioDataTo(data: data) + } + + /// 接收到音频数据回调1 + /// - Parameter data: 音频数据 + public func onAudioDataReceived1(data: Data) { + // 安全解包版本 + guard let audioStream = azureAstHelper.audioProcessor else { + os_log("音频流未初始化", type: .error) + return + } + audioStream.saveAudioDataTo(data: data) + } + + /// 接收到编码数据回调 + /// - Parameter data: 编码数据 + public func onEncodedDataReceived(data: Data) { + + } + + /// 唤醒信号接收回调 + public func onWakeupSignalReceived() { + + } + + /// 设备信息接收回调 + /// - Parameters: + /// - infoType: 信息类型 + /// - infoData: 信息数据 + public func onDeviceInfoReceived(infoType: Int, infoData: [String: Any]) { + } +} // MARK: - 事件处理 extension AzureSpeechPlugin: FlutterStreamHandler { public func onListen(withArguments arguments: Any?, eventSink events: @escaping FlutterEventSink) -> FlutterError? { @@ -596,6 +956,7 @@ extension AzureSpeechPlugin: AudioDataListener { } } + // MARK: - 音频数据回调实现 /** * 音频数据回调实现类 @@ -621,4 +982,89 @@ private class AudioDataCallbackImpl: SimpleAudioReceiver.AudioDataCallback { } } +// MARK: - ASR Callback Wrapper +/** + * ASR回调包装器类 + * 实现 AzureAsrHelper.ContinuousRecognizeCallback 协议 + */ +private class AsrCallbackWrapper: AzureAsrHelper.ContinuousRecognizeCallback { + private weak var plugin: AzureSpeechPlugin? + + /** + * 初始化ASR回调包装器 + * @param plugin AzureSpeechPlugin实例 + */ + init(plugin: AzureSpeechPlugin) { + self.plugin = plugin + } + + /** + * 识别结果回调 + * @param text 识别的文本 + * @param detectedLanguage 检测到的语言 + */ + func onResult(_ text: String, _ detectedLanguage: String) { + plugin?.sendAsrEvent([ + "type": "result", + "text": text, + "detectedLanguage": detectedLanguage + ]) + } + + /** + * 识别中回调 + * @param text 正在识别的文本 + * @param detectedLanguage 检测到的语言 + */ + func onRecognizing(_ text: String, _ detectedLanguage: String) { + plugin?.sendAsrEvent([ + "type": "recognizing", + "text": text, + "detectedLanguage": detectedLanguage + ]) + } + + /** + * 会话开始回调 + */ + func onSessionStarted() { + plugin?.sendAsrEvent([ + "type": "sessionStarted" + ]) + } + + /** + * 会话结束回调 + */ + func onSessionStopped() { + plugin?.sendAsrEvent([ + "type": "sessionStopped" + ]) + } + + /** + * 识别取消回调 + * @param reason 取消原因 + * @param errorDetails 错误详情 + */ + func onCanceled(_ reason: String, _ errorDetails: String) { + plugin?.sendAsrEvent([ + "type": "canceled", + "reason": reason, + "errorDetails": errorDetails + ]) + } + + /** + * 错误回调 + * @param error 错误信息 + */ + func onError(_ error: String) { + plugin?.sendAsrEvent([ + "type": "error", + "error": error + ]) + } +} + diff --git a/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/IntegratedSpeechTranslationService.swift b/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/IntegratedSpeechTranslationService.swift index 9c4e3791c..1cf58606a 100644 --- a/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/IntegratedSpeechTranslationService.swift +++ b/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/IntegratedSpeechTranslationService.swift @@ -44,7 +44,7 @@ import os.log private var translationService: TranslationServiceInterface? // 音频处理 - private var audioProcessor: SimpleAudioReceiver? + public var audioProcessor: SimpleAudioReceiver? private var audioConfig: SPXAudioConfiguration? // 录音文件处理 @@ -333,7 +333,7 @@ import os.log * 初始化音频处理器 */ private func initializeAudioProcessor() { - audioProcessor = SimpleAudioReceiver(parentHelper: self as! AzureAsrHelper) + audioProcessor = SimpleAudioReceiver() audioProcessor?.initAudioRecord() // 检查音频配置是否已存在 if audioConfig == nil, let pushStream = audioProcessor?.pushAudioStream { @@ -486,16 +486,24 @@ import os.log } } - // 合成进行中事件 + // 合成进行中事件 - 修改为返回音频数据 synthesizer?.addSynthesizingEventHandler { [weak self] (synthesizer, event) in guard let self = self else { return } - os_log("合成进行中事件", log: self.log, type: .debug) - // 计算进度(简化版) - let progress: Float = 0.5 + // 安全解包audioData + guard let audioData = event.result.audioData else { + os_log("合成进行中事件,音频数据为空", log: self.log, type: .debug) + return + } + + os_log("合成进行中事件,音频数据长度: %d bytes", log: self.log, type: .debug, audioData.count) + + DispatchQueue.main.async { - self.eventCallback?.onSynthesisProgress(text: "", progress: progress) + + // 立即返回当前生成的音频数据 + self.eventCallback?.onSynthesisAudioGenerated(text: "", audioData: audioData) } } @@ -506,6 +514,7 @@ import os.log os_log("合成完成事件", log: self.log, type: .info) DispatchQueue.main.async { + self.serviceState.isSynthesizing = false self.eventCallback?.onStateChanged(component: "Synthesis", isActive: false) } } @@ -654,10 +663,8 @@ import os.log } // 进行语音合成 - if let audioData = synthesizeText(translatedText) { - await MainActor.run { - eventCallback?.onSynthesisAudioGenerated(text: translatedText, audioData: audioData) - } + if synthesizeTextStreaming(translatedText) { + print("语音合成已启动") } } else { let errorMessage = translationResult?.error ?? "翻译失败" @@ -688,54 +695,34 @@ import os.log /** * 合成文本为音频数据 */ - private func synthesizeText(_ text: String) -> Data? { + /// 流式语音合成 + /// - Parameter text: 要合成的文本 + /// - Returns: 合成是否成功启动 + private func synthesizeTextStreaming(_ text: String) -> Bool { guard let synthesizer = synthesizer else { os_log("语音合成器未初始化", log: log, type: .error) - return nil + return false } do { let ssml = buildSSML(text: text) - os_log("开始合成语音: %@", log: log, type: .info, text) - + os_log("开始流式合成语音: %@", log: log, type: .info, text) + serviceState.isSynthesizing = true DispatchQueue.main.async { self.eventCallback?.onSynthesisStarted(text: text) self.eventCallback?.onStateChanged(component: "Synthesis", isActive: true) } + try synthesizer.speakSsml(ssml) + - let result = try synthesizer.speakSsml(ssml) - - serviceState.isSynthesizing = false - - DispatchQueue.main.async { - self.eventCallback?.onStateChanged(component: "Synthesis", isActive: false) - } - - if result.reason == .synthesizingAudioCompleted { - os_log("语音合成成功", log: log, type: .info) - - DispatchQueue.main.async { - self.eventCallback?.onSynthesisCompleted(text: text) - } - - return result.audioData - } else { - let errorMessage = "合成失败: \(result.reason)" - os_log("%@", log: log, type: .error, errorMessage) - - DispatchQueue.main.async { - self.eventCallback?.onSynthesisFailed(text: text, error: errorMessage) - } - - return nil - } + return true } catch { serviceState.isSynthesizing = false - let errorMessage = "合成异常: \(error.localizedDescription)" + let errorMessage = "合成启动异常: \(error.localizedDescription)" os_log("%@", log: log, type: .error, errorMessage) DispatchQueue.main.async { @@ -743,10 +730,17 @@ import os.log self.eventCallback?.onStateChanged(component: "Synthesis", isActive: false) } - return nil + return false } } + /// 保留原有的同步合成方法作为备用 + private func synthesizeText(_ text: String) -> Data? { + // 现在调用流式合成方法 + let success = synthesizeTextStreaming(text) + return success ? Data() : nil // 返回空数据表示已启动,实际数据通过回调返回 + } + /** * 构建SSML */ diff --git a/local_plugins/azure_speech/ios/azure_speech/Sources/tools/SimpleAudioReceiver.swift b/local_plugins/azure_speech/ios/azure_speech/Sources/tools/SimpleAudioReceiver.swift index 029ef7785..f9900b3b2 100644 --- a/local_plugins/azure_speech/ios/azure_speech/Sources/tools/SimpleAudioReceiver.swift +++ b/local_plugins/azure_speech/ios/azure_speech/Sources/tools/SimpleAudioReceiver.swift @@ -38,14 +38,8 @@ public class SimpleAudioReceiver: NSObject { private var currentRoute: AudioOutputRoute? //public var onAudioData: ((Data) -> Void)? public var recordfile: RecordFile? - // 添加对外部类的弱引用 - private weak var parentHelper: AzureAsrHelper? - - // 添加初始化方法,接收外部类引用 - init(parentHelper: AzureAsrHelper) { - self.parentHelper = parentHelper - super.init() - } + + /** * 初始化 */ @@ -170,7 +164,7 @@ public class SimpleAudioReceiver: NSObject { */ public func saveAudioDataTo(data: Data) { // 通过父类引用调用方法 - if audioSourceType != .external || !(parentHelper?.isContinuousRecognitionActive() ?? false) { + if audioSourceType != .external { return } // print("外部data=\(data)") diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/Info.plist b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/Info.plist new file mode 100644 index 000000000..21abfc01c --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/Info.plist @@ -0,0 +1,27 @@ + + + + + AvailableLibraries + + + BinaryPath + JLAudioUnitKit.framework/JLAudioUnitKit + LibraryIdentifier + ios-arm64 + LibraryPath + JLAudioUnitKit.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h new file mode 100644 index 000000000..b7141b1bd --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h @@ -0,0 +1,24 @@ +// +// JLAudioUnitKit.h +// JLAudioUnitKit +// +// Created by EzioChan on 2024/11/14. +// + +#import + +//! Project version number for JLAudioUnitKit. +FOUNDATION_EXPORT double JLAudioUnitKitVersionNumber; + +//! Project version string for JLAudioUnitKit. +FOUNDATION_EXPORT const unsigned char JLAudioUnitKitVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + +#import +#import +#import +#import +#import +#import +#import diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h new file mode 100644 index 000000000..7da831c67 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h @@ -0,0 +1,58 @@ +// +// JLAudioUnitPlayer.h +// JLAudioUnitKit +// +// Created by EzioChan on 2025/4/16. +// Copyright © 2025 ZhuHai JieLi Technology Co.,Ltd. All rights reserved. +// + +#import +#import + +NS_ASSUME_NONNULL_BEGIN + +typedef NS_ENUM(NSInteger, JLAudioUnitPlayerType) { + JLAudioUnitPlayerTypeFile, // 支持 MP3/WAV/AAC 等文件格式(AVAudioPlayer) + JLAudioUnitPlayerTypePCM // 支持 PCM 流式播放(Audio Queue) +}; + +@class JLAudioUnitPlayer; + +@protocol JLAudioPlayerDelegate +@optional +// 播放进度更新(秒) +- (void)audioPlayer:(JLAudioUnitPlayer *)player didUpdateProgress:(NSTimeInterval)currentTime duration:(NSTimeInterval)duration; +// 播放完成 +- (void)audioPlayerDidFinishPlaying:(JLAudioUnitPlayer *)player; +// 播放错误 +- (void)audioPlayer:(JLAudioUnitPlayer *)player didFailWithError:(NSError *)error; +@end + +@interface JLAudioUnitPlayer : NSObject + +@property (nonatomic, weak) id delegate; +@property (nonatomic, readonly) NSTimeInterval duration; // 总时长(文件模式下有效) +@property (nonatomic, readonly) NSTimeInterval currentTime; +@property (nonatomic, readonly) BOOL isPlaying; + +#pragma mark - 初始化方法 + +/// 文件播放初始化(MP3/WAV/AAC) +- (instancetype)initWithAudioFile:(NSString *)filePath; + +/// PCM 流播放初始化(需指定格式) +- (instancetype)initWithPCMFormat:(AudioStreamBasicDescription)format; + +#pragma mark - 播放控制 +- (void)play; +- (void)pause; +- (void)stop; +- (void)seekToTime:(NSTimeInterval)time; // 仅文件模式有效 + +#pragma mark - PCM 流式输入(仅 PCM 模式有效) +- (void)appendPCMData:(NSData *)pcmData; +- (void)endPCMStream; // 结束 PCM 流输入 + +@end + +NS_ASSUME_NONNULL_END diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h new file mode 100644 index 000000000..711e2e99a --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h @@ -0,0 +1,66 @@ +// +// JLOpusDecoder.h +// JLAudioUnitKit +// +// Created by EzioChan on 2024/11/14. +// Copyright © 2024 ZhuHai JieLi Technology Co.,Ltd. All rights reserved. +// + +#import +#import + +NS_ASSUME_NONNULL_BEGIN +@class JLOpusDecoder; + +/// Opus 解码代理 +@protocol JLOpusDecoderDelegate + +/// Opus 数据解码 +/// - Parameters: +/// - decoder: 解码器 +/// - data: pcm 数据 +/// - error: 错误信息 +-(void)opusDecoder:(JLOpusDecoder *)decoder Data:(NSData* _Nullable)data error:(NSError* _Nullable)error; + +@end + +typedef void(^JLOpusDecoderConvertBlock)(NSString *_Nullable pcmPath,NSError *_Nullable error); + +/// Opus 解码 +@interface JLOpusDecoder : NSObject + +/// 数据格式参数 +@property (nonatomic, strong) JLOpusFormat *opusFormat; + +/// 代理委托 +@property(nonatomic, weak) id delegate; + +- (instancetype)init NS_UNAVAILABLE; + +/// 初始化 +/// - Parameters: +/// - format: 解码格式 +/// - delegate: 代理 +- (instancetype)initDecoder:(JLOpusFormat *)format delegate:(id)delegate; + +/// 重置解码格式 +/// - Parameter format: 解码格式 +-(void)resetOpusFramet:(JLOpusFormat *)format; + +/// 输入 Opus 数据 +/// - Parameter data: Opus 数据 +-(void)opusDecoderInputData:(NSData *)data; + +/// 解码文件 +/// - Parameters: +/// - input: opus 文件 +/// - outPut: 输出路径 +/// - result: 结果回调 +-(void)opusDecodeFile:(NSString *)input outPut:(NSString *_Nullable)outPut Resoult:(JLOpusDecoderConvertBlock _Nullable)result; + +/// 释放 +-(void)opusOnRelease; + +@end + +NS_ASSUME_NONNULL_END diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h new file mode 100644 index 000000000..ef8230537 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h @@ -0,0 +1,62 @@ +// +// JLOpusEncoder.h +// JLAudioUnitKit +// +// Created by EzioChan on 2024/11/14. +// Copyright © 2024 ZhuHai JieLi Technology Co.,Ltd. All rights reserved. +// + +#import +#import + +NS_ASSUME_NONNULL_BEGIN +@class JLOpusEncoder; + +/// Opus 编码代理 +@protocol JLOpusEncoderDelegate + +/// PCM 数据编码 +/// - Parameters: +/// - encoder: 解码器 +/// - data: opus 数据 +/// - error: 错误信息 +-(void)opusEncoder:(JLOpusEncoder *)encoder Data:(NSData* _Nullable)data error:(NSError* _Nullable)error; + +@end + +typedef void(^JLOpusEncoderConvertBlock)(NSString *_Nullable pcmPath,NSError *_Nullable error); + +/// Opus 编码 +@interface JLOpusEncoder : NSObject + +/// 音频格式 +@property (nonatomic, strong) JLOpusFormat *opusFormat; + +/// 代理 +@property (nonatomic, weak) id delegate; + +-(instancetype)init NS_UNAVAILABLE; + +/// 初始化 +/// - Parameters: +/// - format: 音频格式 +/// - delegate: 代理 +-(instancetype)initFormat:(JLOpusFormat *)format delegate:(id)delegate; + +/// PCM 数据 +/// - Parameter data: PCM 数据 +-(void)opusEncodeData:(NSData *)data; + +/// PCM 文件转换成 Opus 文件 +/// - Parameters: +/// - pcmPath: PCM 文件存放路径 +/// - outPut: 文件输出路径 +/// - result: 结果回调 +-(void)opusEncodeFile:(NSString *)pcmPath outPut:(NSString *_Nullable)outPut Resoult:(JLOpusEncoderConvertBlock _Nullable)result; + +/// 释放 +-(void)opusOnRelease; + +@end + +NS_ASSUME_NONNULL_END diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusFormat.h b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusFormat.h new file mode 100644 index 000000000..4b9b44184 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusFormat.h @@ -0,0 +1,53 @@ +// +// JLOpusOptions.h +// JLAudioUnitKit +// +// Created by EzioChan on 2024/11/14. +// Copyright © 2024 ZhuHai JieLi Technology Co.,Ltd. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +#define OPUS_JL_MAX_FRAME_SIZE 48000 * 2 +#define OPUS_JL_MAX_PACKET_SIZE 1500 + + +@interface JLOpusFormat : NSObject + +/// 采样率 +@property (nonatomic, assign) int sampleRate; + +/// 单/双声道 +@property (nonatomic, assign) int channels; + +/// 帧长度 20ms 默认值 +@property (nonatomic, assign) int frameDuration; + +/// BitRate +@property (nonatomic, assign) int bitRate; + +/// 数据帧大小 +@property (nonatomic, assign, readonly) int frameSize; + +/// 数据大小 +@property (nonatomic, assign) int dataSize; + +/// 是否包含数据头部 +@property (nonatomic, assign) BOOL hasDataHeader; + +-(instancetype)init NS_UNAVAILABLE; + +/// 默认配置 +/// sampleRate: 16000 +/// channels: 1 +/// frameDuration: 20 +/// dataSize: 40 +/// frameSize: 320 +/// hasDataHeader: YES ++(JLOpusFormat*)defaultFormats; + +@end + +NS_ASSUME_NONNULL_END diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWav.h b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWav.h new file mode 100644 index 000000000..b32ecef2d --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWav.h @@ -0,0 +1,55 @@ +// +// JLPcmToWav.h +// JLAudioUnitKit +// +// Created by EzioChan on 2025/4/15. +// Copyright © 2025 ZhuHai JieLi Technology Co.,Ltd. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/// PCM 转 WAV +@interface JLPcmToWav : NSObject + +#pragma mark - 流式编码接口 + +/// 初始化流式编码器 +/// @param outputPath 输出文件路径 +/// @param sampleRate 采样率(如 16000) +/// @param numChannels 声道数(1 或 2) +/// @param bitsPerSample 位深(16) +- (instancetype)initWithOutputPath:(NSString *)outputPath + sampleRate:(uint32_t)sampleRate + numChannels:(uint16_t)numChannels + bitsPerSample:(uint16_t)bitsPerSample; + +/// 追加 PCM 数据(需确保数据格式与初始化参数一致) +/// @param pcmData PCM 数据块 +/// @param error 错误信息 +- (BOOL)appendPCMData:(NSData *)pcmData error:(NSError **)error; + +/// 完成编码并关闭文件(必须调用以更新 WAV 头) +/// @param error 错误信息 +- (BOOL)finishWithError:(NSError **)error; + +#pragma mark - 一次性编码接口(便捷方法) + +/// 将 PCM 数据一次性转为 WAV 文件 +/// @param pcmData PCM 数据块 +/// @param outputPath 输出文件路径 +/// @param sampleRate 采样率(如 16000) +/// @param numChannels 声道数(1 或 2) +/// @param bitsPerSample 位深(16) +/// @param error 错误信息 ++ (BOOL)convertPCMData:(NSData *)pcmData + toWAVFile:(NSString *)outputPath + sampleRate:(uint32_t)sampleRate + numChannels:(uint16_t)numChannels + bitsPerSample:(uint16_t)bitsPerSample + error:(NSError **)error; + +@end + +NS_ASSUME_NONNULL_END diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h new file mode 100644 index 000000000..231b3e837 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h @@ -0,0 +1,51 @@ +// +// JLPcmToWtg.h +// JLAudioUnitKit +// +// Created by EzioChan on 2025/1/21. +// Copyright © 2025 ZhuHai JieLi Technology Co.,Ltd. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface JLPcm2WtgModel : NSObject + +/// 音频文件 +@property (nonatomic, copy) NSString *pcmPath; + +/// 输出文件 +@property (nonatomic, copy) NSString *wtgPath; + +@end + + +/// JLPcmToWtgProtocol +@protocol JLPcmToWtgDelegate + +/// 音频转码完成 +/// - Parameter model: 音频转码模型 +- (void)convertPcmToWtgDone:(JLPcm2WtgModel *)model; + +@end + +/// 音频转码 +/// PCM 转 WTG +@interface JLPcmToWtg : NSObject + +- (instancetype)init NS_UNAVAILABLE; + +/// 音频转码初始化 +/// - Parameter delegate: 音频转码代理 +- (instancetype)initWithDelegate:(id)delegate; + +/// 音频转码 +/// 当前接口模型只限制 PCM 文件格式为:8k 16bit +/// 输入的pcm文件(16bit,小端,8k采样率),wtg_filename:输出的wtg文件 +/// - Parameter model: 音频转码模型 +-(void)convertPcmToWtg:(JLPcm2WtgModel *)model; + +@end + +NS_ASSUME_NONNULL_END diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h new file mode 100644 index 000000000..ad223d087 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h @@ -0,0 +1,54 @@ +// +// JLSpeexUnit.h +// JLAudioUnitKit +// +// Created by EzioChan on 2024/11/14. +// + +#import + +NS_ASSUME_NONNULL_BEGIN +@class JLSpeexDecoder; + +@protocol JLSpeexDelegate + +/// Speex 数据解码 +/// - Parameters: +/// - decoder: 解码器 +/// - data: PCM 数据 +/// - error: 错误信息 +- (void)speexDecoder:(JLSpeexDecoder *)decoder Data:(NSData* _Nullable)data error:(NSError* _Nullable)error; + +@end + +typedef void(^JLSpeexConvertBlock)(NSString *_Nullable pcmPath,NSError *_Nullable error); + +/// Speex 数据解码 +@interface JLSpeexDecoder : NSObject + +-(instancetype)init NS_UNAVAILABLE; + +/// 初始化 +/// - Parameter delegate: 委托 +-(instancetype)initWithDelegate:(id)delegate; + +/// 委托 +@property (nonatomic, weak) id delegate; + +/// 输入 Speex 数据 +/// - Parameter data: Speex 数据 +-(void)speexInputData:(NSData*)data; + +/// 将 Speex 转换为 PCM +/// - Parameters: +/// - filePath: Speex 路径 +/// - opPath: 输出路径 +/// - result: 结果回调 +-(void)speexConvertToPcm:(NSString *)filePath outPutFilePath:(NSString * _Nullable)opPath Result:(JLSpeexConvertBlock)result; + +/// 释放对象 +-(void)speexOnRelease; + +@end + +NS_ASSUME_NONNULL_END diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Info.plist b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..8d397ffb82fff6b3ce0d154b06742d5895f55a46 GIT binary patch literal 768 zcmY*W%Tg0T6rFBG5fz$5lvfn+EiyGTh7=nYCL>ibL@=3({=lH+vVT~lJuKQAbjfd(3!Kt=SI$7 zxHvjS#xvPV6PK?{PEAkF%;v7m%`aS^zj5={?K_J)$reN4W|bN}u-SUO&vY_XS}lgQ z$(hP_8FyTZ*+GqU!LfCcNwvpsnGpuG&Dn`&*^I2v0p{r>mpaRK$5FuuqCEBXHks!~ z)mExLrB-x9Hl-WX*r8pf?YU8RI_=hbju#}!dfB+8_CSv;56tsp5^OgEKMe% z7phirEEjk@*_f)O*8YpP2mE-N@j+vdud9{5`?;z`Wo&G!TFY=uwv}MAK2il6tk7Do zC*kczIoc!`Y?WHT_jEGbDA(BQ5Iklc3nl8(HgE`l`3)tnuE;fJZ$DXk6q?{PYzQh4 z=w!xlEOEcL^a>aU@qe{m5G8H3+N?BWQ4;0Dt1Z~*Iq|1HlXbEXC#malCPr0%4Zg_v zt|c0r+FeoBrARE-nFf1$!6`?B}2%m-T!Vlp{_=`r-99l#V(HeS*c2J1kp-<=w`i6d@U+4(^!3YoG p5lnCf&)^&`;xew`CN?o(55K|t_yE7hAB6tF=op2i1QWm?{{bPu>9YU; literal 0 HcmV?d00001 diff --git a/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/JLAudioUnitKit b/local_plugins/ble_service/ios/ble_service/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/JLAudioUnitKit new file mode 100755 index 0000000000000000000000000000000000000000..4dc509fc5cdf4917784b377990506c862820de27 GIT binary patch literal 763208 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

%v{gh#rztxaI5%t5FbE8qxP#5f6tt8wc-(8 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 Bool { os_log("🎙️ 准备打开编码(设备侧)...", log: logger, type: .info) - + // 确保Opus解码器处于活跃状态(如果不是则启动) + // if opusProcessor?.isDecoding() != true { + startOpusDecoding() + //} let paramData = Data([BleConst.CODEC_CONTROL_ENCODE_ON, BleConst.AUDIO_CHANNEL_RIGHT]) let result = sendCommand(BleConst.CMD_CONTROL_CODEC, data: paramData) @@ -549,25 +615,50 @@ private var cmdReplyType: UInt8 = 0 os_log("打开解码...", log: logger, type: .info) // 确保Opus解码器处于活跃状态(如果不是则启动) - if opusProcessor?.isDecoding() != true { + //if opusProcessor?.isDecoding() != true { startOpusDecoding() - } + //} // 发送命令通知设备开始解码 let paramData = Data([BleConst.CODEC_CONTROL_DECODE_ON, BleConst.AUDIO_CHANNEL_RIGHT]) return sendCommand(BleConst.CMD_CONTROL_CODEC, data: paramData) } + /// 获取与Flutter getExternalStorageDirectories()一致的存储目录 + /// 在iOS上,这相当于应用的Documents目录 + func getExternalStorageDirectory() -> URL? { + // 获取Documents目录,这部分与Flutter的getExternalStorageDirectories()在iOS上的行为一致 + return FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first + } - /// 打开A2DP解码器 + /// 打开A2DP解码器并开始录制 func openA2DPDecoder() -> Bool { - os_log("打开A2DP解码...", log: logger, type: .info) + // 确保Opus解码器处于活跃状态(如果不是则启动) + + startOpusDecoding(sampleRate: 16000, channels: 2, frameSize: 1280) + opusProcessor?.startEncoding(sampleRate: 16000, channels: 1, frameRate: 20) + + + os_log("打开A2DP解码并开始录制...", log: logger, type: .info) let paramData = Data([BleConst.CODEC_CONTROL_A2DP_PLAY, BleConst.AUDIO_CHANNEL_RIGHT]) return sendCommand(BleConst.CMD_CONTROL_CODEC, data: paramData) } - /// 关闭编解码器 + /// 关闭编解码器并停止录制 func closeCodec() -> Bool { - os_log("关闭编解码...", log: logger, type: .info) + os_log("关闭编解码并停止录制...", log: logger, type: .info) + + // 停止录制 + recordingFile?.closeFile() + recordingFile = nil + + // 停止音频发送定时器 + stopAudioSendTimer() + + // 清空音频缓冲区和队列 + audioQueueLock.lock() + audioBuffer.removeAll() + audioDataQueue.removeAll() + audioQueueLock.unlock() // 不停止Opus解码流,只发送命令通知设备关闭编解码 let paramData = Data([BleConst.CODEC_CONTROL_CLOSE, BleConst.AUDIO_CHANNEL_RIGHT]) @@ -1095,6 +1186,147 @@ extension BleService: SwiftOpusAudioProcessor.AudioDataCallback { func onAudioDataReceived(data: Data) { notifyAudioDataReceived(data: data) } + + /// 接收到解码后的PCM音频数据 + func onAudioDataReceived1(data: Data) { + notifyAudioDataReceived1(data: data) + } + + /// 接收到编码后的音频数据 + /// - Parameter data: 编码后的音频数据 + func onEncodedDataReceived(data: Data) { + // 保存编码数据到文件 + recordingFile?.saveAudioData(data) + + // 根据你的业务需求处理编码数据 + // 例如:发送到蓝牙设备、保存到文件等 + os_log("🎵 接收到编码音频数据: %d bytes", log: logger, type: .info, data.count) + + // 修复条件绑定语句 + guard let characteristic = callAudioCharacteristic, + let peripheral = peripheralDevice, + connectionState == BleConst.STATE_CONNECTED else { + os_log("通话音频特征未设置或设备未连接", log: logger, type: .error) + return + } + + // 将编码音频数据加入到队列,按每次发送120字节,每次间隔60毫秒 + addAudioDataToSendQueue(data: data) + + // 启动音频发送定时器(如果尚未启动) + if !isAudioSending { + startAudioSendTimer() + } + } + + /** + * 将音频数据添加到发送队列 + * 只有当缓冲区达到120字节时才发送数据 + * @param data 音频数据字节数组 + */ + private func addAudioDataToSendQueue(data: Data) { + audioQueueLock.lock() + defer { audioQueueLock.unlock() } + + do { + // 将新数据添加到缓冲区 + audioBuffer.append(contentsOf: data) + + // 当缓冲区达到120字节时,发送数据 + while audioBuffer.count >= AUDIO_CHUNK_SIZE { + // 取出120字节数据 + let chunk = Data(audioBuffer.prefix(AUDIO_CHUNK_SIZE)) + audioBuffer.removeFirst(AUDIO_CHUNK_SIZE) + + // 将数据加入发送队列 + + audioDataQueue.append(chunk) + + } + + // os_log("音频数据已加入缓冲区,当前缓冲区大小: %d 字节", log: logger, type: .debug, audioBuffer.count) + } catch { + os_log("处理音频数据异常: %{public}@", log: logger, type: .error, error.localizedDescription) + } + } + + /** + * 启动音频数据发送定时器 + */ + private func startAudioSendTimer() { + guard !isAudioSending else { + os_log("音频发送定时器已在运行", log: logger, type: .debug) + return + } + + isAudioSending = true + + // 在主队列中创建定时器 + DispatchQueue.main.async { [weak self] in + guard let self = self else { return } + + self.audioSendTimer = Timer.scheduledTimer(withTimeInterval: self.AUDIO_SEND_INTERVAL, repeats: true) { [weak self] _ in + self?.processAudioSendQueue() + } + + os_log("音频发送定时器已启动", log: self.logger, type: .info) + } + } + + /** + * 停止音频数据发送定时器 + */ + private func stopAudioSendTimer() { + isAudioSending = false + + DispatchQueue.main.async { [weak self] in + self?.audioSendTimer?.invalidate() + self?.audioSendTimer = nil + + guard let self = self else { return } + os_log("音频发送定时器已停止", log: self.logger, type: .info) + } + } + + /** + * 处理音频发送队列 + */ + private func processAudioSendQueue() { + audioQueueLock.lock() + defer { audioQueueLock.unlock() } + + guard !audioDataQueue.isEmpty else { return } + + // 从队列中取出音频数据块 + let audioChunk = audioDataQueue.removeFirst() + + // 在后台队列中发送音频数据块 + audioSendQueue.async { [weak self] in + self?.sendAudioChunk(audioChunk) + } + } + + /** + * 发送音频数据块到蓝牙设备 + * @param data 要发送的音频数据 + */ + private func sendAudioChunk(_ data: Data) { + guard let characteristic = callAudioCharacteristic, + let peripheral = peripheralDevice, + connectionState == BleConst.STATE_CONNECTED else { + os_log("通话音频特征未设置或设备未连接,无法发送音频数据", log: logger, type: .error) + return + } + + // 发送音频数据块 + peripheral.writeValue(data, for: characteristic, type: .withoutResponse) + //判断是否发送成功 + if peripheral.state == .connected { + os_log("🎵 发送音频数据块: %d bytes", log: logger, type: .debug, data.count) + } else { + os_log("🎵 发送音频数据块失败: %d bytes", log: logger, type: .debug, data.count) + } + } } // MARK: - CBCentralManagerDelegate @@ -1392,12 +1624,12 @@ extension BleService: CBCentralManagerDelegate { os_log("🔍 开始发现服务...", log: logger, type: .debug) // 查找服务 - peripheral.discoverServices([BleConst.PRIMARY_SERVICE_UUID, BleConst.AUDIO_SERVICE_UUID]) + peripheral.discoverServices([BleConst.PRIMARY_SERVICE_UUID, BleConst.AUDIO_SERVICE_UUID, BleConst.CALL_AUDIO_SERVICE_UUID]) // 确保Opus解码器处于活跃状态 - if opusProcessor?.isDecoding() != true { + // if opusProcessor?.isDecoding() != true { startOpusDecoding() - } + // } } public func centralManager(_ central: CBCentralManager, didFailToConnect peripheral: CBPeripheral, error: Error?) { @@ -1482,6 +1714,10 @@ extension BleService: CBPeripheralDelegate { os_log("🔍 发现音频服务,开始发现音频特征...", log: logger, type: .debug) // 音频服务,发现音频特征 peripheral.discoverCharacteristics([BleConst.RECEIVE_AUDIO_CHAR_UUID], for: service) + }else if service.uuid == BleConst.CALL_AUDIO_SERVICE_UUID { + os_log("🔍 发现通话音频服务,开始发现通话音频特征...", log: logger, type: .debug) + // 通话音频服务,发现通话音频特征 + peripheral.discoverCharacteristics([BleConst.CALL_WRITE_AUDIO_CHAR_UUID], for: service) } } } @@ -1513,6 +1749,10 @@ extension BleService: CBPeripheralDelegate { os_log("🎵 音频特征已设置,开始发现描述符...", log: logger, type: .info) // 先发现描述符,再配置通知 peripheral.discoverDescriptors(for: characteristic) + }else if characteristic.uuid == BleConst.CALL_WRITE_AUDIO_CHAR_UUID { + callAudioCharacteristic = characteristic + os_log("🎵 通话音频特征已设置,开始发现描述符...", log: logger, type: .info) + // 先发现描述符,再配置通知 } } diff --git a/local_plugins/ble_service/ios/ble_service/Sources/ble_service/RecordingFile.swift b/local_plugins/ble_service/ios/ble_service/Sources/ble_service/RecordingFile.swift new file mode 100644 index 000000000..6b5824dfc --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/Sources/ble_service/RecordingFile.swift @@ -0,0 +1,135 @@ +import Foundation +import os.log + +/// 音频录制文件管理类 +/// 负责创建音频文件并异步写入编码后的音频数据 +@available(iOS 13.0, *) +class RecordingFile { + private var currentAudioFile: URL? + private var fileHandle: FileHandle? + + // 用于异步写入的队列和线程 + private let writeQueue = DispatchQueue(label: "com.yunqiinnovation.ble_service.recording_write", qos: .utility) + private var isWriting = false + private let writeLock = NSLock() + + // 用于存储音频数据的缓冲区 + private var totalBytesWritten = 0 + + var fileName = "" + private let logger = OSLog(subsystem: "com.yunqiinnovation.ble_service", category: "RecordingFile") + + /// 获取与Flutter getExternalStorageDirectories()一致的存储目录 + /// 在iOS上,这相当于应用的Documents目录 + private func getExternalStorageDirectory() -> URL? { + // 获取Documents目录,这部分与Flutter的getExternalStorageDirectories()在iOS上的行为一致 + return FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first + } + + /// 创建新的音频文件 + /// 如果文件已存在则直接返回 + internal func createFile() { + writeLock.lock() + defer { writeLock.unlock() } + + if fileHandle != nil || currentAudioFile != nil { + return + } + + // 创建新的音频文件 + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = "yyyyMMdd_HHmmss" + let timestamp = dateFormatter.string(from: Date()) + + // 获取与Flutter一致的外部存储目录 + guard let externalStorageDirectory = getExternalStorageDirectory() else { + os_log("无法获取外部存储目录", log: logger, type: .error) + return + } + + // 使用与Android端相同的文件命名格式 + let filePath = externalStorageDirectory.appendingPathComponent("\(fileName)_\(timestamp).opus") + currentAudioFile = filePath + + do { + // 创建文件 + FileManager.default.createFile(atPath: filePath.path, contents: nil, attributes: nil) + fileHandle = try FileHandle(forWritingTo: filePath) + isWriting = true + os_log("创建文件: %@", log: logger, type: .info, filePath.path) + } catch { + os_log("创建文件失败: %@", log: logger, type: .error, error.localizedDescription) + currentAudioFile = nil + fileHandle = nil + } + } + + /// 异步保存音频数据到文件 + /// - Parameter buffer: 编码后的音频数据 + internal func saveAudioData(_ buffer: Data) { + guard isWriting, fileHandle != nil else { + return + } + + // 异步写入数据 + writeQueue.async { [weak self] in + guard let self = self else { return } + + do { + try self.fileHandle?.write(contentsOf: buffer) + self.totalBytesWritten += buffer.count + os_log("写入音频数据: %d bytes, 总计: %d bytes", log: self.logger, type: .debug, buffer.count, self.totalBytesWritten) + } catch { + os_log("写入音频数据失败: %@", log: self.logger, type: .error, error.localizedDescription) + } + } + } + + /// 关闭文件并完成录制 + internal func closeFile() { + writeLock.lock() + defer { writeLock.unlock() } + + guard let fileHandle = fileHandle, let currentFile = currentAudioFile else { + return + } + + isWriting = false + + // 等待写入队列完成 + writeQueue.sync { + do { + try fileHandle.close() + + // 检查文件大小 + let fileSize = try FileManager.default.attributesOfItem(atPath: currentFile.path)[.size] as? Int64 ?? 0 + + if fileSize <= 0 { + // 删除空文件 + try FileManager.default.removeItem(at: currentFile) + os_log("音频文件过小已删除: %@", log: logger, type: .info, currentFile.path) + } else { + os_log("音频文件保存完成: %@, 大小: %lld bytes", log: logger, type: .info, currentFile.path, fileSize) + } + } catch { + os_log("关闭文件失败: %@", log: logger, type: .error, error.localizedDescription) + } + } + + self.fileHandle = nil + self.currentAudioFile = nil + self.totalBytesWritten = 0 + } + + /// 获取当前录制文件路径 + /// - Returns: 当前录制文件的路径,如果没有正在录制则返回nil + internal func getCurrentFilePath() -> String? { + return currentAudioFile?.path + } + + /// 检查是否正在录制 + /// - Returns: 如果正在录制返回true,否则返回false + internal func isRecording() -> Bool { + return isWriting && fileHandle != nil + } +} \ No newline at end of file diff --git a/local_plugins/ble_service/ios/ble_service/Sources/ble_service/SwiftBleServicePlugin.swift b/local_plugins/ble_service/ios/ble_service/Sources/ble_service/SwiftBleServicePlugin.swift index e44bd6c61..4a664d583 100644 --- a/local_plugins/ble_service/ios/ble_service/Sources/ble_service/SwiftBleServicePlugin.swift +++ b/local_plugins/ble_service/ios/ble_service/Sources/ble_service/SwiftBleServicePlugin.swift @@ -236,6 +236,10 @@ extension SwiftBleServicePlugin: BleService.Callback { } } + public func onAudioDataReceived1(data: Data) { + + } + public func onWakeupSignalReceived() { if let eventSink = statusEventSink { DispatchQueue.main.async { diff --git a/local_plugins/ble_service/ios/ble_service/Sources/ble_service/SwiftOpusAudioProcessor.swift b/local_plugins/ble_service/ios/ble_service/Sources/ble_service/SwiftOpusAudioProcessor.swift index 1067a9211..5f4c4c69d 100644 --- a/local_plugins/ble_service/ios/ble_service/Sources/ble_service/SwiftOpusAudioProcessor.swift +++ b/local_plugins/ble_service/ios/ble_service/Sources/ble_service/SwiftOpusAudioProcessor.swift @@ -1,22 +1,46 @@ import Foundation import AVFoundation -import YbridOpus +import opus +import JLAudioUnitKit @available(iOS 13.0, *) class SwiftOpusAudioProcessor: NSObject { + /// 音频数据回调协议 protocol AudioDataCallback: AnyObject { func onAudioDataReceived(data: Data) + func onAudioDataReceived1(data: Data) + func onEncodedDataReceived(data: Data) // 编码数据回调 } + // MARK: - 私有属性 + + // 状态标志 private var isDecodingActive = false + private var isEncodingActive = false private weak var callback: AudioDataCallback? // Opus 解码器相关 - 使用 YbridOpus C API private var decoder: OpaquePointer? private var sampleRate: Int32 = 16000 private var channels: Int32 = 1 - private let maxFrameSize: Int32 = 640 // 为16kHz优化:40ms * 16000Hz = 640 samples,与Android参数统一 + private let maxFrameSize: Int32 = 640 // 为16kHz优化:40ms * 16000Hz = 640 samples + + // MARK: - JLOpusEncoder 编码器相关属性 + private var jlOpusEncoder: JLOpusEncoder? + private var encoderFormat: JLOpusFormat? + + // MARK: - PCM数据队列相关属性 + /// PCM数据缓存队列 + private var pcmDataQueue = Data() + /// 队列访问锁,确保线程安全 + private let queueLock = NSLock() + /// 每次处理的数据块大小(字节) + private let chunkSize = 640 + /// 异步处理队列 + private var processingQueue: DispatchQueue? + + // MARK: - 初始化和清理 override init() { super.init() @@ -26,6 +50,10 @@ class SwiftOpusAudioProcessor: NSObject { cleanup() } + + + // MARK: - 解码器管理 + /// 线程安全的解码器初始化 private func initializeOpusDecoder() -> Bool { objc_sync_enter(self) @@ -58,12 +86,21 @@ class SwiftOpusAudioProcessor: NSObject { } } + // MARK: - 公共接口 + + /// 设置音频数据回调 + /// - Parameter callback: 回调对象 func setCallback(_ callback: AudioDataCallback?) { self.callback = callback } + /// 启动Opus解码 + /// - Parameters: + /// - sampleRate: 采样率 + /// - channels: 声道数 + /// - frameSize: 帧大小 + /// - Returns: 是否启动成功 func startDecoding(sampleRate: Int32 = 16000, channels: Int32 = 1, frameSize: Int32 = 40) -> Bool { - // frameSize参数必须与Android版本的packetSize保持一致,确保双平台解码行为一致 if isDecodingActive { return true } @@ -76,10 +113,13 @@ class SwiftOpusAudioProcessor: NSObject { } isDecodingActive = true + print("Opus解码器启动成功 - 采样率: \(sampleRate)Hz, 声道: \(channels)") return true } + /// 停止Opus解码 + /// - Returns: 是否停止成功 func stopDecoding() -> Bool { if !isDecodingActive { return false @@ -87,10 +127,13 @@ class SwiftOpusAudioProcessor: NSObject { isDecodingActive = false destroyOpusDecoder() + print("Opus解码器已停止") return true } + /// 处理音频数据进行解码 + /// - Parameter data: Opus编码的音频数据 func processAudioData(_ data: Data) { guard isDecodingActive, let decoder = decoder, data.count > 0 else { return @@ -102,16 +145,13 @@ class SwiftOpusAudioProcessor: NSObject { return } - // 检查最小数据包大小(Opus最小包通常至少几个字节) guard data.count >= 3 else { print("音频数据包太小: \(data.count) bytes,跳过处理") return } - // 简单的 Opus 头部验证(检查是否是有效的 Opus 数据包格式) + // 简单的 Opus 头部验证 let firstByte = data[0] - // Opus packets start with a TOC (Table of Contents) byte - // 检查TOC字节是否在合理范围内 if firstByte == 0x00 || firstByte == 0xFF { print("可疑的Opus数据包头部: 0x\(String(format: "%02X", firstByte)),跳过处理") return @@ -123,12 +163,11 @@ class SwiftOpusAudioProcessor: NSObject { } /// 改进的 Opus 解码方法,增强容错和线程安全 + /// - Parameter packet: Opus数据包 private func decodeOpusPacket(_ packet: Data) { - // 添加线程安全锁 objc_sync_enter(self) defer { objc_sync_exit(self) } - // 验证解码器状态 guard let decoder = decoder, isDecodingActive else { print("解码器未初始化或已停止") return @@ -138,16 +177,13 @@ class SwiftOpusAudioProcessor: NSObject { var pcmBuffer = [opus_int16](repeating: 0, count: maxSamples * Int(channels)) let decodedSamples = packet.withUnsafeBytes { packetPtr in - // 确保指针有效 guard let uint8Ptr = packetPtr.bindMemory(to: UInt8.self).baseAddress else { print("无法获取数据包指针") return opus_int32(-1) } - // 添加异常捕获机制 var result: opus_int32 = -1 - // 使用 autoreleasepool 确保内存管理 autoreleasepool { result = opus_decode( decoder, @@ -162,12 +198,11 @@ class SwiftOpusAudioProcessor: NSObject { return result } - // 增强的错误处理:检查各种错误情况 + // 增强的错误处理 if decodedSamples <= 0 { let errorCode = decodedSamples - print("Opus解码失败,错误代码: \(errorCode),重新初始化解码器") + print("Opus解码失败,错误代码: \(errorCode)") - // 根据错误类型进行不同的处理 if errorCode == -1 { // OPUS_BAD_ARG print("Opus解码参数错误,执行完全重置") performCompleteReset() @@ -184,18 +219,15 @@ class SwiftOpusAudioProcessor: NSObject { return } - // 验证解码结果的合理性 guard decodedSamples <= maxFrameSize else { print("Opus解码样本数超出预期: \(decodedSamples) > \(maxFrameSize)") resetDecoder() return } - // 提取解码的音频数据 let samplesPerChannel = Int(decodedSamples) let totalSamples = samplesPerChannel * Int(channels) - // 验证总样本数的合理性 guard totalSamples <= pcmBuffer.count else { print("计算的总样本数超出缓冲区: \(totalSamples) > \(pcmBuffer.count)") resetDecoder() @@ -209,31 +241,28 @@ class SwiftOpusAudioProcessor: NSObject { } } - // 重置解码器的简单方法 + /// 重置解码器的简单方法 private func resetDecoder() { print("执行简单解码器重置") destroyOpusDecoder() _ = initializeOpusDecoder() } - // 执行完全重置(包括停止和重启解码) + /// 执行完全重置(包括停止和重启解码) private func performCompleteReset() { print("执行完全解码器重置") let wasActive = isDecodingActive let currentSampleRate = self.sampleRate let currentChannels = self.channels - // 完全停止解码 if wasActive { isDecodingActive = false destroyOpusDecoder() } - // 重新初始化所有状态 self.sampleRate = currentSampleRate self.channels = currentChannels - // 如果之前是活跃状态,重新启动 if wasActive { guard initializeOpusDecoder() else { print("完全重置后重新初始化失败") @@ -243,29 +272,312 @@ class SwiftOpusAudioProcessor: NSObject { print("完全重置成功,解码器已重新启动") } } - + + /// 处理解码后的PCM音频数据 + /// - Parameter pcmData: 解码后的PCM数据数组 private func processPCMData(_ pcmData: [opus_int16]) { - // 转换为 Data let data = Data(bytes: pcmData, count: pcmData.count * MemoryLayout.size) - // 回调通知 + guard !data.isEmpty else { + print("PCM数据为空") + return + } + + print("Opus解码数据: \(data.count) bytes, 声道数: \(channels)") + + if channels == 2 { + processStereoAudioData(data) + } else if channels == 1 { + DispatchQueue.main.async { [weak self] in + self?.callback?.onAudioDataReceived(data: data) + } + } else { + print("不支持的声道数: \(channels)") + } + } + + /// 处理双声道音频数据,分离左右声道 + /// - Parameter stereoData: 交错的双声道PCM数据 + private func processStereoAudioData(_ stereoData: Data) { + let sampleCount = stereoData.count / 4 // 每个样本4字节(左右声道各2字节) + + guard sampleCount > 0 else { + print("双声道数据样本数为0") + return + } + + var leftBuffer = Data() + var rightBuffer = Data() + + leftBuffer.reserveCapacity(sampleCount * 2) + rightBuffer.reserveCapacity(sampleCount * 2) + + stereoData.withUnsafeBytes { bytes in + let uint8Ptr = bytes.bindMemory(to: UInt8.self) + + for i in 0.. Bool { return isDecodingActive } - func cleanup() { - stopDecoding() + /// 获取编码器状态 + /// - Returns: 是否正在编码 + func isEncoding() -> Bool { + return isEncodingActive } - // MARK: - 公共接口 - /// 获取当前配置信息 + /// - Returns: 采样率和声道数 func getCurrentConfig() -> (sampleRate: Int32, channels: Int32) { return (sampleRate, channels) } + + /// 获取编码器配置信息 + /// - Returns: 编码器配置元组 + func getEncoderConfig() -> (sampleRate: Int32, channels: Int32) { + return (sampleRate, channels) + } + + + /// 启动JLOpusEncoder编码(完善版本) + /// - Parameters: + /// - sampleRate: 采样率(默认16000Hz) + /// - channels: 声道数(默认1) + /// - frameRate: 帧长度(默认20ms) + /// - isHeader: 是否包含头部信息 + /// - Returns: 是否启动成功 + func startEncoding(sampleRate: Int32 = 16000, + channels: Int32 = 1, + frameRate: Int32 = 20, + isHeader: Bool = false) -> Bool { + if isEncodingActive { + return true + } + + print("启动JLOpusEncoder编码 - 采样率: \(sampleRate)Hz, 声道: \(channels), 帧长度: \(frameRate)ms, 头部: \(isHeader)") + + // 创建JLOpusFormat配置 + encoderFormat = JLOpusFormat.defaultFormats() + encoderFormat?.sampleRate = Int32(sampleRate) + encoderFormat?.channels = Int32(channels) + encoderFormat?.frameDuration = Int32(frameRate) + encoderFormat?.hasDataHeader = isHeader + + // 根据配置计算数据大小 + if channels == 1 { + encoderFormat?.dataSize = frameRate == 20 ? 40 : 80 // 20ms=40bytes, 40ms=80bytes + } else { + encoderFormat?.dataSize = frameRate == 20 ? 80 : 160 // 双声道翻倍 + } + + guard let format = encoderFormat else { + print("编码器格式配置失败") + return false + } + + // 初始化JLOpusEncoder + jlOpusEncoder = JLOpusEncoder(format: format, delegate: self) + + guard jlOpusEncoder != nil else { + print("JLOpusEncoder初始化失败") + return false + } + + isEncodingActive = true + print("JLOpusEncoder启动成功") + + return true + } + + /// 停止JLOpusEncoder编码(完善版本) + /// - Returns: 是否停止成功 + func stopEncoding() -> Bool { + if !isEncodingActive { + return false + } + + isEncodingActive = false + + // 清空PCM数据队列 + clearPCMQueue() + + // 释放JLOpusEncoder资源 + jlOpusEncoder?.opusOnRelease() + jlOpusEncoder = nil + encoderFormat = nil + processingQueue = nil + + print("JLOpusEncoder已停止") + + return true + } + + /// 编码PCM音频数据 + /// - Parameter pcmData: PCM音频数据 + func encodePCMData(_ pcmData: Data) { + guard isEncodingActive, let encoder = jlOpusEncoder else { + print("编码器未启动或不可用") + return + } + + guard !pcmData.isEmpty else { + print("PCM数据为空") + return + } + + print("接收PCM数据 - 数据大小: \(pcmData.count) bytes") + + // 将新数据加入队列 + queueLock.lock() + pcmDataQueue.append(pcmData) + let currentQueueSize = pcmDataQueue.count + queueLock.unlock() + + print("PCM数据已加入队列 - 当前队列大小: \(currentQueueSize) bytes") + + // 异步处理队列中的数据 + processQueuedData() + } + + /// 处理队列中的PCM数据 + private func processQueuedData() { + guard isEncodingActive, let encoder = jlOpusEncoder else { + return + } + + // 使用专用队列进行异步处理 + if processingQueue == nil { + processingQueue = DispatchQueue(label: "com.opus.processing", qos: .userInitiated) + } + + processingQueue?.async { [weak self, weak encoder] in + guard let self = self, let encoder = encoder else { + print("编码器或处理器已释放") + return + } + + while self.isEncodingActive { + var chunkData: Data? + + // 从队列中取出数据 + self.queueLock.lock() + if self.pcmDataQueue.count >= self.chunkSize { + // 取出640字节数据 + chunkData = self.pcmDataQueue.subdata(in: 0.. 0 { + // 不足640字节,补齐静音数据 + let availableBytes = self.pcmDataQueue.count + let silentBytesNeeded = self.chunkSize - availableBytes + + // 创建静音数据(16位PCM静音为0) + let silentData = Data(repeating: 0, count: silentBytesNeeded) + + // 组合实际数据和静音数据 + chunkData = Data() + chunkData?.append(self.pcmDataQueue) + chunkData?.append(silentData) + + // 清空队列 + self.pcmDataQueue.removeAll() + + print("数据不足640字节,已补齐静音数据 - 实际数据: \(availableBytes) bytes, 静音数据: \(silentBytesNeeded) bytes") + } + self.queueLock.unlock() + + // 如果有数据需要编码 + if let dataToEncode = chunkData { + guard self.isEncodingActive else { + print("编码已停止,退出处理循环") + break + } + + // 编码数据块 + encoder.opusEncode(dataToEncode) + print("已编码音频块 - 数据大小: \(dataToEncode.count) bytes") + } else { + // 队列为空,退出循环 + break + } + } + + print("队列处理完成") + } + } + + /// 清空PCM数据队列 + private func clearPCMQueue() { + queueLock.lock() + pcmDataQueue.removeAll() + queueLock.unlock() + print("PCM数据队列已清空") + } + + + /// 清理所有资源 + func cleanup() { + stopDecoding() + stopEncoding() + } +} + +// MARK: - JLOpusEncoderDelegate +@available(iOS 13.0, *) +extension SwiftOpusAudioProcessor: JLOpusEncoderDelegate { + + /// JLOpusEncoder编码回调 + /// - Parameters: + /// - encoder: 编码器实例 + /// - data: 编码后的Opus数据 + /// - error: 错误信息 + func opusEncoder(_ encoder: JLOpusEncoder, data: Data?, error: (any Error)?) { + if let error = error { + print("Opus编码错误: \(error.localizedDescription)") + return + } + + guard let opusData = data, !opusData.isEmpty else { + print("编码后的Opus数据为空") + return + } + + print("Opus编码成功 - 数据大小: \(opusData.count) bytes") + + // 回调编码后的数据到主线程 + DispatchQueue.main.async { [weak self] in + self?.callback?.onEncodedDataReceived(data: opusData) + } + } } + + + diff --git a/local_plugins/ble_service/ios/ble_service/Sources/ble_service/opuse.swift b/local_plugins/ble_service/ios/ble_service/Sources/ble_service/opuse.swift new file mode 100644 index 000000000..04e2fe871 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/Sources/ble_service/opuse.swift @@ -0,0 +1,85 @@ +import Foundation +import opus + +class OpusAudioProcessor { + private var encoder: OpaquePointer? + private var decoder: OpaquePointer? + + /** + * 初始化Opus编码器 + * @param sampleRate 采样率 (8000, 12000, 16000, 24000, 48000) + * @param channels 声道数 (1 = 单声道, 2 = 立体声) + * @param application 应用类型 (OPUS_APPLICATION_VOIP, OPUS_APPLICATION_AUDIO, OPUS_APPLICATION_RESTRICTED_LOWDELAY) + */ + func initializeEncoder(sampleRate: Int32, channels: Int32, application: Int32) -> Bool { + var error: Int32 = 0 + encoder = opus_encoder_create(sampleRate, channels, application, &error) + return error == OPUS_OK + } + + /** + * 初始化Opus解码器 + * @param sampleRate 采样率 + * @param channels 声道数 + */ + func initializeDecoder(sampleRate: Int32, channels: Int32) -> Bool { + var error: Int32 = 0 + decoder = opus_decoder_create(sampleRate, channels, &error) + return error == OPUS_OK + } + + /** + * 编码音频数据 + * @param pcmData PCM音频数据 + * @param frameSize 帧大小 + * @param maxDataBytes 最大输出字节数 + * @return 编码后的数据 + */ + func encode(pcmData: [Int16], frameSize: Int32, maxDataBytes: Int32) -> Data? { + guard let encoder = encoder else { return nil } + + let outputBuffer = UnsafeMutablePointer.allocate(capacity: Int(maxDataBytes)) + defer { outputBuffer.deallocate() } + + let encodedBytes = opus_encode(encoder, pcmData, frameSize, outputBuffer, maxDataBytes) + + if encodedBytes > 0 { + return Data(bytes: outputBuffer, count: Int(encodedBytes)) + } + return nil + } + + /** + * 解码音频数据 + * @param encodedData 编码后的数据 + * @param frameSize 帧大小 + * @return 解码后的PCM数据 + */ + func decode(encodedData: Data, frameSize: Int32) -> [Int16]? { + guard let decoder = decoder else { return nil } + + let outputBuffer = UnsafeMutablePointer.allocate(capacity: Int(frameSize * 2)) // 假设最多2声道 + defer { outputBuffer.deallocate() } + + let decodedSamples = encodedData.withUnsafeBytes { bytes in + opus_decode(decoder, bytes.bindMemory(to: UInt8.self).baseAddress, Int32(encodedData.count), outputBuffer, frameSize, 0) + } + + if decodedSamples > 0 { + return Array(UnsafeBufferPointer(start: outputBuffer, count: Int(decodedSamples * 2))) + } + return nil + } + + /** + * 清理资源 + */ + deinit { + if let encoder = encoder { + opus_encoder_destroy(encoder) + } + if let decoder = decoder { + opus_decoder_destroy(decoder) + } + } +} \ No newline at end of file diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/Info.plist b/local_plugins/ble_service/ios/ble_service/opus.xcframework/Info.plist new file mode 100644 index 000000000..67bf2e3b8 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/Info.plist @@ -0,0 +1,43 @@ + + + + + AvailableLibraries + + + BinaryPath + opus.framework/opus + LibraryIdentifier + ios-x86_64-simulator + LibraryPath + opus.framework + SupportedArchitectures + + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + BinaryPath + opus.framework/opus + LibraryIdentifier + ios-arm64 + LibraryPath + opus.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus.h b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus.h new file mode 100644 index 000000000..5be73ddf4 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/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 + *

+ * + * 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(4); + +/** 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/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h new file mode 100644 index 000000000..315412dd1 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_defines.h @@ -0,0 +1,753 @@ +/* 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 */ + +/* 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_VARIABLE
Optimize the frame size dynamically.
+ *
+ * @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_VARIABLE
Optimize the frame size dynamically.
+ *
+ * @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) + +/**@}*/ + +/** @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/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_multistream.h b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_multistream.h new file mode 100644 index 000000000..3622e009f --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/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(5); + +/** 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(6); + +/** 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/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h new file mode 100644 index 000000000..b28e03aea --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Headers/opus_types.h @@ -0,0 +1,159 @@ +/* (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 + +/* Use the real stdint.h if it's there (taken from Paul Hsieh's pstdint.h) */ +#if (defined(__STDC__) && __STDC__ && __STDC_VERSION__ >= 199901L) || (defined(__GNUC__) && (defined(_STDINT_H) || defined(_STDINT_H_)) || defined (HAVE_STDINT_H)) +#include + + typedef int16_t opus_int16; + typedef uint16_t opus_uint16; + typedef int32_t opus_int32; + typedef uint32_t opus_uint32; +#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 + +#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 + +#endif /* OPUS_TYPES_H */ diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Info.plist b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..99c5c68af70f71db7c3ff7be2f44e4eeea5eabdb GIT binary patch literal 708 zcmZWmOK;Oa5Z*Db^2|0V&=v|MKzWIkO%fD@gwoWcL{*v)yG=l$mg{Vi6}H#%qmbXw zKftvdxxj%xzy%>8j$Gl;6XME&3lg@mDH3~`nQ!L%^v&$1V=~Vd#jkh@gnj!D96U5} z_{h;?$4_MNWHvW-^3>_+nb|XE=gytKkiU58^1`+2)4ioyHL&|8UDYkxk=3rj`}C2l zD)LH%JdU$!z|6jeXVO`jZc&pv7Pb909WrifIFt6)sq4i^E@m}!W5jIQRN`twR$Hd- z54dYZ>Ke|aw3co>)rV9aJ0UuoqRNQ7exj)OF0+UKHUq~A+q9obdK#WfnRR=>WoG!H z72O^GHI+^K_n%WE@byhIT5*Y64l}8%VccLgvjVHB{7M?+M2yumoHw{dbjL9%3A1=3kC^6`MGRB7heXmu(JmmEhZ0mk zfe}1|ZFm8%;5EF3cklr|!YB9)Utkx$!FTupKjD{<7Z!xO!aboPRE1>}KLP$kbR&sL H5LSN!iNo3q literal 0 HcmV?d00001 diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap new file mode 100644 index 000000000..bb7631ab4 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module opus { + umbrella header "opus.h" + + export * + module * { export * } +} diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/opus b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-arm64/opus.framework/opus new file mode 100755 index 0000000000000000000000000000000000000000..e645bd72647fb3715f9f5804a3925ef872bd22a8 GIT binary patch literal 428352 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

c);Sh9<^kRH|i_z$kN}m}|FBOjm+y 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 V1BDNTsp>EkSNrsU|Gs_t{{Ti=)?NSr literal 0 HcmV?d00001 diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus.h b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus.h new file mode 100644 index 000000000..5be73ddf4 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/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(4); + +/** 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/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h new file mode 100644 index 000000000..315412dd1 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_defines.h @@ -0,0 +1,753 @@ +/* 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 */ + +/* 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_VARIABLE
Optimize the frame size dynamically.
+ *
+ * @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_VARIABLE
Optimize the frame size dynamically.
+ *
+ * @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) + +/**@}*/ + +/** @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/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_multistream.h b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_multistream.h new file mode 100644 index 000000000..3622e009f --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/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(5); + +/** 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(6); + +/** 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/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h new file mode 100644 index 000000000..b28e03aea --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Headers/opus_types.h @@ -0,0 +1,159 @@ +/* (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 + +/* Use the real stdint.h if it's there (taken from Paul Hsieh's pstdint.h) */ +#if (defined(__STDC__) && __STDC__ && __STDC_VERSION__ >= 199901L) || (defined(__GNUC__) && (defined(_STDINT_H) || defined(_STDINT_H_)) || defined (HAVE_STDINT_H)) +#include + + typedef int16_t opus_int16; + typedef uint16_t opus_uint16; + typedef int32_t opus_int32; + typedef uint32_t opus_uint32; +#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 + +#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 + +#endif /* OPUS_TYPES_H */ diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Info.plist b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..99c5c68af70f71db7c3ff7be2f44e4eeea5eabdb GIT binary patch literal 708 zcmZWmOK;Oa5Z*Db^2|0V&=v|MKzWIkO%fD@gwoWcL{*v)yG=l$mg{Vi6}H#%qmbXw zKftvdxxj%xzy%>8j$Gl;6XME&3lg@mDH3~`nQ!L%^v&$1V=~Vd#jkh@gnj!D96U5} z_{h;?$4_MNWHvW-^3>_+nb|XE=gytKkiU58^1`+2)4ioyHL&|8UDYkxk=3rj`}C2l zD)LH%JdU$!z|6jeXVO`jZc&pv7Pb909WrifIFt6)sq4i^E@m}!W5jIQRN`twR$Hd- z54dYZ>Ke|aw3co>)rV9aJ0UuoqRNQ7exj)OF0+UKHUq~A+q9obdK#WfnRR=>WoG!H z72O^GHI+^K_n%WE@byhIT5*Y64l}8%VccLgvjVHB{7M?+M2yumoHw{dbjL9%3A1=3kC^6`MGRB7heXmu(JmmEhZ0mk zfe}1|ZFm8%;5EF3cklr|!YB9)Utkx$!FTupKjD{<7Z!xO!aboPRE1>}KLP$kbR&sL H5LSN!iNo3q literal 0 HcmV?d00001 diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap new file mode 100644 index 000000000..bb7631ab4 --- /dev/null +++ b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module opus { + umbrella header "opus.h" + + export * + module * { export * } +} diff --git a/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/opus b/local_plugins/ble_service/ios/ble_service/opus.xcframework/ios-x86_64-simulator/opus.framework/opus new file mode 100755 index 0000000000000000000000000000000000000000..a4123a5512e484d65ec0b04b7644b3dafd302bcb GIT binary patch literal 497152 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

!& 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 E1`z#6S^xk5 literal 0 HcmV?d00001 diff --git a/local_plugins/chat_api/ios/chat_api/Package.swift b/local_plugins/chat_api/ios/chat_api/Package.swift index 8f7b3378a..6772cc3c9 100644 --- a/local_plugins/chat_api/ios/chat_api/Package.swift +++ b/local_plugins/chat_api/ios/chat_api/Package.swift @@ -13,7 +13,7 @@ let package = Package( .library(name: "chat-api", targets: ["chat_api"]) ], dependencies: [ - .package(url: "https://github.com/MacPaw/OpenAI.git", from: "0.4.3"), + .package(url: "https://github.com/MacPaw/OpenAI.git", exact: "0.4.3"), .package(url: "https://github.com/modelcontextprotocol/swift-sdk.git", from: "0.9.0"), .package(path: "../../../location_service/ios/location_service"), .package(path: "../../../qq_music/ios/qq_music"), From d159e67629c3e566fc0b09e42e74e6a3895d271c Mon Sep 17 00:00:00 2001 From: fdp <1286779656@qq.com> Date: Thu, 21 Aug 2025 11:12:23 +0800 Subject: [PATCH 2/5] add --- .../xcshareddata/IDEWorkspaceChecks.plist | 8 -------- .../xcshareddata/WorkspaceSettings.xcsettings | 8 -------- 2 files changed, 16 deletions(-) delete mode 100644 ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d981003..000000000 --- a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index f9b0d7c5e..000000000 --- a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PreviewsEnabled - - - From c1ebdd554f29f4d678dcc9ba8911806e716e256b Mon Sep 17 00:00:00 2001 From: fdp <1286779656@qq.com> Date: Thu, 21 Aug 2025 11:12:31 +0800 Subject: [PATCH 3/5] add --- .metadata | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/.metadata b/.metadata index 0d012fee6..369b5ecec 100644 --- a/.metadata +++ b/.metadata @@ -4,7 +4,7 @@ # This file should be version controlled and should not be manually edited. version: - revision: "5c1433509f997e9059d230942bdf83f1b88a179e" + revision: "8defaa71a77c16e8547abdbfad2053ce3a6e2d5b" channel: "stable" project_type: app @@ -13,11 +13,26 @@ project_type: app migration: platforms: - platform: root - create_revision: 5c1433509f997e9059d230942bdf83f1b88a179e - base_revision: 5c1433509f997e9059d230942bdf83f1b88a179e + create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b - platform: android - create_revision: 5c1433509f997e9059d230942bdf83f1b88a179e - base_revision: 5c1433509f997e9059d230942bdf83f1b88a179e + create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + - platform: ios + create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + - platform: linux + create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + - platform: macos + create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + - platform: web + create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + - platform: windows + create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b + base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b # User provided section From 0b78d0bdfc06b555e4c24489c1138cae171ae892 Mon Sep 17 00:00:00 2001 From: fdp <1286779656@qq.com> Date: Thu, 21 Aug 2025 11:15:45 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E5=BF=BD=E7=95=A5=20Xcode=20=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + ios/Runner.xcodeproj/project.pbxproj | 849 --------------------------- 2 files changed, 1 insertion(+), 849 deletions(-) delete mode 100644 ios/Runner.xcodeproj/project.pbxproj diff --git a/.gitignore b/.gitignore index ac4aa4092..61024af15 100644 --- a/.gitignore +++ b/.gitignore @@ -222,3 +222,4 @@ fastlane/readme.md .trae/rules/project_rules.md .augment/rules/imported/project_rules.md .kiro/ +ios/Runner.xcodeproj/project.pbxproj diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj deleted file mode 100644 index 6d64fb0f1..000000000 --- a/ios/Runner.xcodeproj/project.pbxproj +++ /dev/null @@ -1,849 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 54; - objects = { - -/* Begin PBXBuildFile section */ - 0AD944122DD9DB5C00557D21 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 0AD944112DD9DB5C00557D21 /* GoogleService-Info.plist */; }; - 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; - 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; - 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; - 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */; }; - 93D73EC48D95512F5F541AD7 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 162D67C21ED243BA396CEF5C /* Pods_RunnerTests.framework */; }; - 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; - 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; - CBE786ED7A0DB415954B1BA4 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EFDA2C0DD7A7D82CA03799B2 /* Pods_Runner.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 97C146E61CF9000F007C117D /* Project object */; - proxyType = 1; - remoteGlobalIDString = 97C146ED1CF9000F007C117D; - remoteInfo = Runner; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 9705A1C41CF9048500538489 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 0AD944112DD9DB5C00557D21 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; - 162D67C21ED243BA396CEF5C /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 280769B5B4FB941FA7D35C06 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; - 2C91016A31D6647548E59DC8 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; 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; }; - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 46859C536D3D0051CC82E6C5 /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; }; - 4852C04805E85DB32D31EEC2 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 76274BCD123CDD5AF172875F /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; }; - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; - 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; - 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; - 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - CD9846946CA680DD2E0721FA /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; - D2958658C06A5ADF62D6ABA2 /* Runner.entitlements */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; }; - EFDA2C0DD7A7D82CA03799B2 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 97C146EB1CF9000F007C117D /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */, - CBE786ED7A0DB415954B1BA4 /* Pods_Runner.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - B3515CD9628E3332AFC88CD4 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 93D73EC48D95512F5F541AD7 /* Pods_RunnerTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 1ACB686EC7DC36C6E33D372F /* Pods */ = { - isa = PBXGroup; - children = ( - CD9846946CA680DD2E0721FA /* Pods-Runner.debug.xcconfig */, - 4852C04805E85DB32D31EEC2 /* Pods-Runner.release.xcconfig */, - 280769B5B4FB941FA7D35C06 /* Pods-Runner.profile.xcconfig */, - 46859C536D3D0051CC82E6C5 /* Pods-RunnerTests.debug.xcconfig */, - 76274BCD123CDD5AF172875F /* Pods-RunnerTests.release.xcconfig */, - 2C91016A31D6647548E59DC8 /* Pods-RunnerTests.profile.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; - 1E5DDD8701F6FB27AA502080 /* Frameworks */ = { - isa = PBXGroup; - children = ( - EFDA2C0DD7A7D82CA03799B2 /* Pods_Runner.framework */, - 162D67C21ED243BA396CEF5C /* Pods_RunnerTests.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - 331C8082294A63A400263BE5 /* RunnerTests */ = { - isa = PBXGroup; - children = ( - 331C807B294A618700263BE5 /* RunnerTests.swift */, - ); - path = RunnerTests; - sourceTree = ""; - }; - 9740EEB11CF90186004384FC /* Flutter */ = { - isa = PBXGroup; - children = ( - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, - 9740EEB21CF90195004384FC /* Debug.xcconfig */, - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, - 9740EEB31CF90195004384FC /* Generated.xcconfig */, - ); - name = Flutter; - sourceTree = ""; - }; - 97C146E51CF9000F007C117D = { - isa = PBXGroup; - children = ( - 9740EEB11CF90186004384FC /* Flutter */, - 97C146F01CF9000F007C117D /* Runner */, - 97C146EF1CF9000F007C117D /* Products */, - 331C8082294A63A400263BE5 /* RunnerTests */, - 1ACB686EC7DC36C6E33D372F /* Pods */, - 1E5DDD8701F6FB27AA502080 /* Frameworks */, - ); - sourceTree = ""; - }; - 97C146EF1CF9000F007C117D /* Products */ = { - isa = PBXGroup; - children = ( - 97C146EE1CF9000F007C117D /* Runner.app */, - 331C8081294A63A400263BE5 /* RunnerTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 97C146F01CF9000F007C117D /* Runner */ = { - isa = PBXGroup; - children = ( - 0AD944112DD9DB5C00557D21 /* GoogleService-Info.plist */, - 97C146FA1CF9000F007C117D /* Main.storyboard */, - 97C146FD1CF9000F007C117D /* Assets.xcassets */, - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, - 97C147021CF9000F007C117D /* Info.plist */, - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, - D2958658C06A5ADF62D6ABA2 /* Runner.entitlements */, - ); - path = Runner; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 331C8080294A63A400263BE5 /* RunnerTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; - buildPhases = ( - C9BCBB2ED2D63153791BA331 /* [CP] Check Pods Manifest.lock */, - 331C807D294A63A400263BE5 /* Sources */, - 331C807F294A63A400263BE5 /* Resources */, - B3515CD9628E3332AFC88CD4 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 331C8086294A63A400263BE5 /* PBXTargetDependency */, - ); - name = RunnerTests; - productName = RunnerTests; - productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - 97C146ED1CF9000F007C117D /* Runner */ = { - isa = PBXNativeTarget; - buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; - buildPhases = ( - C8A928FCC4E7B91E60992CB3 /* [CP] Check Pods Manifest.lock */, - 9740EEB61CF901F6004384FC /* Run Script */, - 97C146EA1CF9000F007C117D /* Sources */, - 97C146EB1CF9000F007C117D /* Frameworks */, - 97C146EC1CF9000F007C117D /* Resources */, - 9705A1C41CF9048500538489 /* Embed Frameworks */, - 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 0AD9449B2DE6F89600557D21 /* Remove Bitcode from YbridOpus */, - 7983395BAD15A5F148B66817 /* [CP] Embed Pods Frameworks */, - 2F4CC5CCDA87D20DF15BA3FF /* [CP] Copy Pods Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Runner; - packageProductDependencies = ( - 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */, - ); - productName = Runner; - productReference = 97C146EE1CF9000F007C117D /* Runner.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 97C146E61CF9000F007C117D /* Project object */ = { - isa = PBXProject; - attributes = { - BuildIndependentTargetsInParallel = YES; - LastUpgradeCheck = 1510; - ORGANIZATIONNAME = ""; - TargetAttributes = { - 331C8080294A63A400263BE5 = { - CreatedOnToolsVersion = 14.0; - TestTargetID = 97C146ED1CF9000F007C117D; - }; - 97C146ED1CF9000F007C117D = { - CreatedOnToolsVersion = 7.3.1; - LastSwiftMigration = 1100; - }; - }; - }; - buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 97C146E51CF9000F007C117D; - packageReferences = ( - 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage" */, - D013B7972DFA83E400B2B69B /* XCRemoteSwiftPackageReference "flutterfire" */, - ); - productRefGroup = 97C146EF1CF9000F007C117D /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 97C146ED1CF9000F007C117D /* Runner */, - 331C8080294A63A400263BE5 /* RunnerTests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 331C807F294A63A400263BE5 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 97C146EC1CF9000F007C117D /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, - 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, - 0AD944122DD9DB5C00557D21 /* GoogleService-Info.plist in Resources */, - 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, - 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 0AD9449B2DE6F89600557D21 /* Remove Bitcode from YbridOpus */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "Remove Bitcode from YbridOpus"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# 移除YbridOpus框架中的bitcode\necho \"检查并移除YbridOpus框架中的bitcode...\"\n\nFRAMEWORK_PATHS=(\n \"${PODS_ROOT}/YbridOpus/YbridOpus.xcframework/ios-arm64_armv7/YbridOpus.framework/YbridOpus\"\n \"${PODS_ROOT}/YbridOpus/YbridOpus.xcframework/ios-i386_x86_64-simulator/YbridOpus.framework/YbridOpus\"\n \"${PODS_ROOT}/YbridOpus/YbridOpus.xcframework/ios-arm64_x86_64-maccatalyst/YbridOpus.framework/YbridOpus\"\n \"${PODS_ROOT}/YbridOpus/YbridOpus.xcframework/macos-arm64_x86_64/YbridOpus.framework/YbridOpus\"\n)\n\nfor framework_path in \"${FRAMEWORK_PATHS[@]}\"; do\n if [ -f \"$framework_path\" ]; then\n if otool -l \"$framework_path\" | grep -q __LLVM; then\n echo \"移除bitcode: $framework_path\"\n # 直接覆盖,不创建备份\n xcrun bitcode_strip -r \"$framework_path\" -o \"$framework_path.tmp\"\n mv \"$framework_path.tmp\" \"$framework_path\"\n fi\n fi\ndone\n\n# 清理任何可能的备份文件\nfind \"${PODS_ROOT}\" -name \"*.backup\" -type f -delete 2>/dev/null || true\nfind \"${BUILT_PRODUCTS_DIR}\" -name \"*.backup\" -type f -delete 2>/dev/null || true\n\necho \"bitcode移除和清理完成!\""; - }; - 2F4CC5CCDA87D20DF15BA3FF /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Copy Pods Resources"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; - 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", - ); - name = "Thin Binary"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; - }; - 7983395BAD15A5F148B66817 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 9740EEB61CF901F6004384FC /* Run Script */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Run Script"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; - }; - C8A928FCC4E7B91E60992CB3 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - C9BCBB2ED2D63153791BA331 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 331C807D294A63A400263BE5 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 97C146EA1CF9000F007C117D /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, - 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 97C146ED1CF9000F007C117D /* Runner */; - targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 97C146FA1CF9000F007C117D /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 97C146FB1CF9000F007C117D /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 97C147001CF9000F007C117D /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 249021D3217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - 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_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - 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_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_USER_SCRIPT_SANDBOXING = NO; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 18.0; - MTL_ENABLE_DEBUG_INFO = NO; - NEW_SETTING = ""; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - TARGETED_DEVICE_FAMILY = 1; - VALIDATE_PRODUCT = YES; - }; - name = Profile; - }; - 249021D4217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CURRENT_PROJECT_VERSION = 9; - DEVELOPMENT_TEAM = K39FB49XKY; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "Deep Voice"; - IPHONEOS_DEPLOYMENT_TARGET = 16.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0.1; - PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans; - PRODUCT_NAME = "$(TARGET_NAME)"; - REGISTER_APP_GROUPS = NO; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = YES; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES; - SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = YES; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Profile; - }; - 331C8088294A63A400263BE5 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 46859C536D3D0051CC82E6C5 /* Pods-RunnerTests.debug.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 537SFY28XS; - GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 18.0; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans.RunnerTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; - }; - name = Debug; - }; - 331C8089294A63A400263BE5 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 76274BCD123CDD5AF172875F /* Pods-RunnerTests.release.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = K39FB49XKY; - GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 18.0; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans.RunnerTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; - }; - name = Release; - }; - 331C808A294A63A400263BE5 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 2C91016A31D6647548E59DC8 /* Pods-RunnerTests.profile.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = K39FB49XKY; - GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 18.0; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans.RunnerTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; - }; - name = Profile; - }; - 97C147031CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - 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_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - 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_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - ENABLE_USER_SCRIPT_SANDBOXING = NO; - GCC_C_LANGUAGE_STANDARD = gnu99; - 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_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 18.0; - MTL_ENABLE_DEBUG_INFO = YES; - NEW_SETTING = ""; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = 1; - }; - name = Debug; - }; - 97C147041CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - 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_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - 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_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_USER_SCRIPT_SANDBOXING = NO; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 18.0; - MTL_ENABLE_DEBUG_INFO = NO; - NEW_SETTING = ""; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - TARGETED_DEVICE_FAMILY = 1; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 97C147061CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CURRENT_PROJECT_VERSION = 9; - DEVELOPMENT_TEAM = K39FB49XKY; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "Deep Voice"; - IPHONEOS_DEPLOYMENT_TARGET = 16.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0.1; - PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans; - PRODUCT_NAME = "$(TARGET_NAME)"; - REGISTER_APP_GROUPS = NO; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = YES; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES; - SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = YES; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Debug; - }; - 97C147071CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CURRENT_PROJECT_VERSION = 9; - DEVELOPMENT_TEAM = K39FB49XKY; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "Deep Voice"; - IPHONEOS_DEPLOYMENT_TARGET = 16.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0.1; - PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans; - PRODUCT_NAME = "$(TARGET_NAME)"; - REGISTER_APP_GROUPS = NO; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = YES; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES; - SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = YES; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 331C8088294A63A400263BE5 /* Debug */, - 331C8089294A63A400263BE5 /* Release */, - 331C808A294A63A400263BE5 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 97C147031CF9000F007C117D /* Debug */, - 97C147041CF9000F007C117D /* Release */, - 249021D3217E4FDB00AE95B9 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 97C147061CF9000F007C117D /* Debug */, - 97C147071CF9000F007C117D /* Release */, - 249021D4217E4FDB00AE95B9 /* 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 XCRemoteSwiftPackageReference section */ - D013B7972DFA83E400B2B69B /* XCRemoteSwiftPackageReference "flutterfire" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/firebase/flutterfire"; - requirement = { - branch = main; - kind = branch; - }; - }; -/* End XCRemoteSwiftPackageReference section */ - -/* Begin XCSwiftPackageProductDependency section */ - 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */ = { - isa = XCSwiftPackageProductDependency; - productName = FlutterGeneratedPluginSwiftPackage; - }; -/* End XCSwiftPackageProductDependency section */ - }; - rootObject = 97C146E61CF9000F007C117D /* Project object */; -} From a02a3c86dc5bac90ee3cadec318f19ef6043a7f4 Mon Sep 17 00:00:00 2001 From: fdp <1286779656@qq.com> Date: Thu, 21 Aug 2025 11:19:55 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=8E=BB=E5=A4=84=E6=B2=A1=E7=94=A8?= =?UTF-8?q?=E7=9A=84=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- local_plugins/ble_service/ios/ble_service/Package.swift | 5 ----- 1 file changed, 5 deletions(-) diff --git a/local_plugins/ble_service/ios/ble_service/Package.swift b/local_plugins/ble_service/ios/ble_service/Package.swift index 5f2e43c99..e5d2b6c9b 100644 --- a/local_plugins/ble_service/ios/ble_service/Package.swift +++ b/local_plugins/ble_service/ios/ble_service/Package.swift @@ -14,7 +14,6 @@ let package = Package( name: "ble_service", dependencies: [ "opus", - "SpeexKit", "JLAudioUnitKit" ], path: "Sources/ble_service", @@ -29,10 +28,6 @@ let package = Package( name: "opus", // 改为与 xcframework 内部模块名称一致 path: "opus.xcframework" ), - .binaryTarget( - name: "SpeexKit", - path: "SpeexKit.xcframework" - ), // 添加了缺失的逗号 .binaryTarget( name: "JLAudioUnitKit", path: "JLAudioUnitKit.xcframework"

DDS9wyHW=5#U((FqGI~r9 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�vrIUZeo^@XYS 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 z zM(KqpeK<--&vE=r`KP1wN;r=oeJo0^2mU8LAKt@?cu4K0?_>#ozkfi{=Iqkb`5`CY z$M_$wo!N=at1Ewa_&(0G!yIjl!L88#R>t6VzHgsA20uZUH@?OmGe*9~;D3=eX|5l_ zzH|ut%fImbFYvhJ&bK33sWi#_uQYIf2{$@u+4 z!0%n)N51g;?+rM$V&LI#g4Z{}@7sKT+v5_;a;3G%%C7=Py2u!LF+HDvp6`L4f6{2D zf$s+J+yK5G;QIrU@vV56${XWzkPmkJL-9R~urBYXonNM%KctSvKy)h39E6VfZS}Rz z7L~l(HpDr_1n-e@UV+~dWw75KN>14P4CM~RZ=C+!HTVzEANjGr5xCE<))<=}#-s-tU&8k#jDyZ?;;~Vhd<370)(Kb6_Pb#&Tn22_x3;!sI4hij zPtT`~^J(iszAyA;zwGA?|KoAaV$b-;`*dGoQT4nAtj1XDj0hVyXH0w??eY1*XMWAN z{*UoF$VcPLxuv^j!@JO7e7k}Fbq~L5D)_uzi+|(y9 z6A5kY$CmS`Z%cl1Tf7ZJd$~#(-yUqRN>7x|Z>7r?i!BsilkVZ4eDLee-vl3@U?+Wk zHhedG#l-vHFI#H&aPWm~_|;|iF&|sry6+-BKR$KXS9f7w)%&MrLxpDfIlQGH{SG@q zelcfKuk+rzY%6-Ngg4&Cv+FZMZJd?rj>sJNU1>=tzT?=5tgqN=c|&NtNL#k=M;aL#as^@U;K)!^-BY#AHnO}MvJg5Kvo4NOoud}N1{hyQ5&~p+>O$(H^ zlu{~iPO4O31S%qFqmqUheu@b4tF6LG;^-iEu#rIm@kdG#i6DGsMr1(M@O@5K~>KBs>kBskL&R+d8aw|^sdt@hKbC;u=il0EoT#KLc&TZ@6 zpgfTVSB3rw~%DfTMn^_B83-u#0ma-TX^Gz^X-SF5|ov(Ucp zQra%1AM_yK_;~O0)ZNRy4L!3C-Ppr#-9t$K%{BG1b@li?ZM|7__4qw)y%yEu{s6}G zKJFLz<9~YH#yhO;p;P-l!qtuIS>Mytkp4`* z^v!I1Rp>Eeu58*i>N#D;2I!ra+oHeM2s=pJ;d6F(HfIG&mg^>;g?VQn_=~c~oDH#e zEzz9JeCN}Qc^eYSl|LhUItGq$E=@B!FdKT1!f(P3fVRMs?>dx}_Yt^x_fa zHrjW((VwE%ADa^vWo^GTbHr-yW{&2nEWc=VyoW6P(SB@Z)@sYSGu@e)SmWwl3-8i= zcUyXetakXdj@m^lPZ(6cg01gpq_FM!jy3c2ML&LfbPw|bb|SL8C;PrDZE`JHvo8ni z7d3p1+90gKB9U77fz zyIT(m;|sHk+79fXhX zJK!VOM#qy~J-ZV%;0=yb>dkWX!X0AjUw?)-vXNWu#xTJ7tz4sfwy`aF?F#WBMID{f zTYTkfOn#%5BL*ARJO5ALr2q7#(LKAcxqGm^svor+KG=}y+i?fwVXW5IEa>ZHDL3EA zopQ#K-$1YVE@QgUzRQTtCj8rDCa$?Cs;)UNs;=#fs_Wh!Rp0Y*);zaGrE5RJKF4`& z)k0@mHMPY3Z(z>PJjR(&%Cf1x-T~GKg~OsMJm3EvP244R4fltw@vs^i9jtWL{hxs? z5xhoVzwI@^KCG?UbsKZYfnaiPkik68;{}X$x3!hN`AXY!¥i&Hm}p7YCm`caZZM z+-Fg}j9N2HJ=DICr?y$pZLv-3aczT_d{tQsc@n-Y)LH?B==Cd?s=cnNJG~ zz(Mb!!<6^f7~70MP2!mq0gd^`xF+?{=@XC^RH{>U);^}&^p#Jy{+pD zbGTzy@5rYstOXx<5Ps{w<=J6_WaGNl;_LEX`YZp*;E+dRaNh3vAj1kcj5|@^>>|23 zBg4G}z%1@bZI62M>m{oN@YWoyJ8=IQd%u=3tb-QUJlHU(yEZm2ZP>nsv)hL=&#dF@ z_IsM(CwD(}LEk*Qi9{#bG%j*{J_O%Xzh~mhc7L4wf1aUlZ@34dHO0B$Y}C6MydMOQ zzVqBYG=&ocllvNb^CQ+~7Qa72ANZZd7v#r$Q}uTwd;v#nyV)r8#q4e2NZNd`uS6c| z8JS~UOka0t>RxpB4tUIynJ2o==%Q{nb;*^*58|$9>WLoLbhnj$s5!My?W3N;weZB_ zCYkBF78uZ0W9#Ib+MPTHpSg>A-HZW#m`^AfG}aO`Odh)~vRKoK0{dc;U#jS=Gb)ajeZ7jmXf4|PPR<`AFKehTzPeH8bJlh~hu(!2q9lmntSLge6`RF0rfA@j;r?;EYI>Ga}X9=d*@87vJ`L#*2;D_YEsibXWdca|W@^cV#{{XRwpAFZ}5{hxfC# zsOsD1qIa42NJZ^5&whnDHN;An;fJ0rx@gUonOkO!SWc8_9gtZ<8`c1oWqqYF&9i@V z=3tik71nop53gMwoz@$IznF5K%ZtgA)fz%M$4ivonw~2@X^q4C>Nx#MF2;!!3?ZX| zpTbr36zACiKW)6UDW9&K^S06^?%v!?{awrvf5G~^%>0mQi3asam9gXzm>F45VN%ZXoI zHneZ_kU={$MGR{v@dxpKH{)YXR@E5LnUdrni%w<&U-YgKJIHV4#~TjKj30W0afS7x z+Uh*)YU-Mu;mk*w^|E4k70S(?QKs`dm2@9xblR$WoBPOb-m3F-_MJTH4CY^2dAG>~ z?*$KjD`(lx`6Soe(82BVhjobhVJ)5~N8Zkxggz+ip>F3hQ~S|Y%zBL<086Putj`iPh^7Z30cG*CHBe{TO0_5qU*MbL^Gkg}|$Fk3~swL*17W z_z_}?zuM>Si;9SIoU?`)b(%J5*-5wWJmCFx?f|GNPRAMUYK1m}Ej$D_8H)suDe=lT z0k@{ksOmIeH{Dt($c5I}yWr_=c&&8`>v?2p6>{Y9PAAq_>BSTHq1AAgg5`dSKiJ8l z$GKp!)x{&1gQsE|%(c+k>EM8$7sU(agcYo#CUV?UvXkE_@^zM;q*x~YYsG!*)!I`p zbHp)oB)@r{^E{hOV${p_BL-JlKYmO%%nuQY@2T)VPE;<858!F$fOv!gqnOV1oWmGQz; zVoX!X9%)y6Rxu-Q7d^k+nqe}Q1kcRIai)|wb4<6I_!_o_82jRpr?tPS zdInc9U~(CaR?ubi0mZpCYHuN?pUR*exyGzzu5`G->sWS(v0B_0xwCU>FQ!fYz?m4I zvzd0j(a!~nMO$2r*fQ^(e->;Burl~@S!*XbWlp1==7#vZ+;=AB4EtzfdQfB17=mmP zXKKZ!ai2jI+N`(;zF4f>pW`Wp^8@M+e_VSedHOXuW^Nit;FG1iLv|V2d$oA|MIBzy z<7H^(6oZCMXuc9K!N}N39_W~l*j;g z9{3n*S}|7SO7jc-hWLxdHvhNWDK0S6q}~~pqPgPejQ=^wvGC}_<~b%+;wGjplM|>I?0+4 ztMjx$z6QJw2v6EtT)RxW95$z(XD>RQmBwi=*nUme1MRP`A1Aamn-}b#U};Sf+ktF+YZ#wAX&N^fT4lWqa6q&h`$i7cA&i-O6viAv!VLoqYf8BF5wO zDzu@Gxc}tX{skWBTzpJNua`z&`jRXRkD`OACiY6$qda{wb|_r1|AQ6A#aW*f_>A$| zK=Z0#xVitFp?&EF=VR9Sc#4PbhE99%8=u9`u(L(PDdn&1!H0YnA4A_}_-Xo(;fa^z zFDCrHI#@}6Q87khau#oV7FidJUBD2W=j!0poH^>xY%lh6cRu)VKV4O4j~?vzd&0)l|(|_!&$p&^-^QG6rZTK)9_3sn&b%1d;bwsb7>!LyV+DC%pUdCTY!GnHy z5C6mm>hCx<)wFkw%K6>R|HpXGecl@%E7f$jmsqyz>}Yz@h~M5g2BCy zdvy=TvGlnU-8P@u+x4O!hsw0~V0Qrt4tVZH|I)yEh;i%A4&Bpn0{`! zfahd{{D%I_pw}eW}KRj>c*+N%B)>- zoU~2K(K{03tjX1=8_T{?`L#`~YZ?>}x+~M-c%VBgz@xhBL}DRJ(E;Y#@`>2AX~v~^ z$@#*G_mvQvNyyng-s^tCn)h{bCKzv_j_EcqD(XwNk@ZKoYeTla0$=msVDF$!F2t9t zK05I9B)tmgfZ*nUyA!*#i#obnde8aMAhg=?taNTqH2ANlMuW%7CeBO9R~_92=Sbk_ z-VE74$)|j5t?`X6!WCK>{+hSs6ElbX0J{_Vw(+wTAr8{qr1dB;t^Vo2z`ocXLxKnN zQImJkLyU&CEBg(dtS_C-s*y#`Bo>!8Y=>s}$HeR4C2Kx(^cdY|S>4<|kNrK)i?nk# zWEwsexo@XOd}2K-J=FM=$FXhnNVAv4QJs;Xt)H`sVK2&;$9#eJ*z7s-&#W)$YaL(I zmu%C{QT9Eh2lN@y=Vow|?ryo%zI$UldYBm8qc=2c|4J+4M;6N_W3~29WrC?YfdtF+ zsr{WJdw``rj*(s+r0wfGK8o+{fyWPli|#TBdUeYyfT3@(N(a15GzXa=wqs}No$NH3 z>bs}6y$qZjKucqQ2o%_U1kc(6%62{Np4+B@zzlKZfr-Gd@S$hv^G_KC3YXxb&+yX8xHv*uGrxt`I}o*DpJk z})Z3XVFHsEWBqeyCOx*+>N7e#h7wrZfzNCAda9skv+)A8)$=0a32PC0hrb%8_hAe z9qi9~JaW)L>np?QOxBgqEC16Ap|xA%mFsY;oY_}Ok-L(_?}#ua+M8SePkwIbJGJC- z@_nwD$eg^onqgnb=neg~w=_(7C*_^2kL9yBu+O3~aAO5$0k4>7;GOVK17p*ci1>cA z{lXt`-&j4))XOLK{>Hqmv#}GWs(>3h(UN(Byc^{Sh>yWXhDI@d^U(#yI7DCh-r@Dw zen(See^)v^{G++h6@3U}%hbVUzro2u;i$oXrmk{K_k+X9W@BF=4z?%G+-m$q??!-) z-7M`v--V0O6kNs`r((OMY~2TR~q3x%JyE$yk;AuV*`gpQ;PDYD1qeX7T>w5$5Q`bA4YxJ3DlHYP z^rUR3Zhd^kZua$7%{YGWXx_;$G&^znR67x3K>|y|r%zwE0D5^O=JU ztV7l3%zz{C%x(amxc@xkwdgpV{Cv#h=liSfaPsr(Ig|2e^hAcl_uOZXG@7U^wZXSJ z^eCfSg*Nit3?J`5BO^7w+wa&Hf9a;xY%^ z3pP>jj;I|&4NSdDjG+dm-i0v$b0Ea(1asB_VCvoeVCr20W;sdEmIJ`lyZyn`y9CT& z>&wEEcNPBU8H>^8Y370?O~I$;{iBm}bWMBeS^Muyu3?IYvWA%*l|C)|p}yu*Cyy+{ zw;G$h<~ZB@RXwu=&NO+M6*bZeS^G|yT;$E(gXJW;viBGESIakTv$ zWXR?ltpnQq-ekLc=FHGb=?0honI^ZIwPLtuC*IRaE00+FN&II`xQ#t1!BSi~jw^iy z`{Q%6bXTg2&HWYe@$M0FzFWv2*pdH6>)xxgk(Iij`LBkfm?Ji9I${OK>F!Fdh%a_z*lHHSklou`QJx7GN)9aNoi zdu=>8^Im8KuH_)lz;=5LU5tgjh&=a@Ql{8`$P-D%B!8~?gn2R4)m&=#VW_S60_;M7 z4SwohvEX6eD~EzuWsmyM+E}rsfTQSX{Lz^Euj0NV#>-suQ`Qa|`xe@+=kCh#!oJcI z{~qo+zTj?TdJvviTuk$Rz5FPaCHrA`4jK)Zui=VFjiTSpJ3Gq)BxZ|Q++TGt$>3QIyCqDV;2l+lv z^Q0}IZn%?gv2xYf`)_O`2W!?`#S_Y`Es(w5%4~OkoN&)tzwXQr7w3`{#6?wXr$)vBb7oGG`G(0A`u?qIpF98hns-;_lXW zw&n55Gc(9VQol1J8&h6oqH~(x_`GF&Naeazz%{?*yL@+pa{O1dF}{+=B>gEaIiWJyuR7&ulq#VNII0^cVy|T42 z`%TiBVd{pwSK*NYk1vrYvlH7XTWWR_yPfel`O2xjaqr9bW!?Q*STzo~Pc=sHbn0@{Q2uPVVvD3;a&*;SF*L4Vz_Gtq<8_*#huzbhvWF z*3#T@IIJ-sV@C5w@q7K9jq)d6DSpk&3Ej*mf)nt3o<4sDo-css7j8amA>V5S&-aZy z51#t2X(zn;LvhV{T!p9EA@I;RVmkZzkGOZ~8_d-;b#h~-Lrt{R`%>b)^vU2H>*^RC zW;+@x#yQ-6<%oFoSpU@%cVs8|r8uB+f>lTRh02HAN}V3+$bPU7*_;E%kPj)iwyy|p zbe5?NJ8gZ@&iI9X;J-M1fHz~$x%)J0&pTo7n0vH8qPzy}QPkXjNu1VrEBhSQAMi$V zr@L>}-RYb3*W@Qib}Uvvy~@%)%Oj5ENprbm8vU38hkoL@g7@hDR5+B`IFSYUE%vCXAoz=6@S&;EC{Mtuhs7>@YN!9o|dK z$nHx;wgbM{!|M&_=795o>yy`XeGSgEGn|=|GT6P!*?t~p&XR6PF80#*^Yk5TB|5d< z+DH~;>llOVzvc+(DmkSsozKMQQ0;!&Ox5X=wM**U=#{a~m4A__L!Snlxhr08$Y%b0 z8of-cX^P0Xoon0Ay5`Ze_Rh6-@bZT~i!Vv}b9V>AE3FCo{X8bQ#IN`30$Yn0gAazk zuKNIo)0(5aeNXBp?}LuZ_vf5B`FbvI#pod&2ezJFPLE_58|3{=e1Veg8{IbQbEx18 zHleCH+UO3RTSwj8Y&k1BM@@d!(k~Xn7jRdeU>*s<3w93~p92H(=|oRKth1 z;)B*(^2xP+({p$i^9DE_@%g$yJFNxX9n;zqGx;}~UJ=iUrUTd^>Do~LU)fwf%>SV% z`hNbxlLqr$#GvPs-#^{CWo(<))32cI$r@*DD|L<;9oPJEu(rX*+1e>-OV7lwJriBg zS-kuPi?5nrb2GfduL*tG9D(lZdp~8>KR%ixpLN64&L$ZDrAK}p8OQommL<;o^kke_ z_id2R-^;u=#Tl`oaM-n|K0HK zANhgyGIV}s(`v<7lWV;+=UrxT-sLdz8`6Vc+!Aen0UiGWd$EtPN4ZtLDKa>O4Jw}A zR(d=eRlm^~Rk`!2x~1K|<%CZ?`7Ng}aEHWW>4g(p`xi_Mrx#2NjdFivzy63b+~95J z4Nm{V++Tcy^QC1!a#>oDX+zcx|+G~YWR2-d8nLIv$=Y6zDF|mg{zn&|AMnF zm%{5yu{qr79pfDKC@GUHSnNP`covT;$VoWEhaB!eZ`t=f|8DLo>n&fW@zcNNz>C>u zxVWvRwV21+xPN)?AiBjYoBknMYc-&bM~E|_RB`j zW!&=ZbPvN`XvudBnsr|U@w?vgr5gPrL79e>4$(%-b4Eg?^^UfyOw`%YpFV+4{gPF=l5c zn3pQ(X6z3pXrwavqb5hx(X+Lm%QNk4FTSPCVrLybb{E6)@|p_rdOH1}tL1&4m_}Yd zVL7DMkLq}zR5>~w@>4Z$-xBp&Je2>!!E|MolYuaYS8jQ{H+O;GJ4wtHDpM@O;8RD> zHV*uyEIQSpHi~<2mQ(%MyYE0#>Q134<>i?PSUjt~WT-q7I!af7Q642mqV_u5h94%q z$*?ZfyIiBz#Fve19c2zxeBoQI8|!U?)=aj}lpjD2#J(Pna}O~|y^{`xbtq#U3wNP` z2l`a4Ap7Ra(7*b!*c9h2$7!Ev+iiPmex0-L1HO+BARpL+Fm~cBwui83^s%f9J2@V7Dst!ejyk90KlM|p>Cx0J!< zC(I)`$sjgF?F|O??LGAP8t=x(&J{mY6+o<}a>pOC|qc5$8dG;#PtiNmJ{l_yXkzmvJC#N1RW zGEW`K`SCm0SG)s$Jl4N>;#lUV&FMwN>W?P&bM(kV{R<}^PA{BzgnN}A?O!mmwSB?J z_&W4zIs87Cb?G_ez$wp&xkA38)=}I)hTUZT$b*~o;(S-8xqG<(e)H9cja0YxUp|5l z&$%!kJCuAcflg23fBSi28}X;tac*JX#g4xFm{W|#mogX7KJdTjeZulg>^XDEV&>az z>BXF9;r=x6QGa_cb@O2GT`Lz;e!gry@-G>l9aV+9@Eiwzh^N%FWlpg%En`f}7@xCrg-vwp%wx@t zjrqQGc1OI|ce9Kp@HCUk)YcjGbw-nQ8fxpLxko{8pjVJR;jS{p^qxe9E6}wJO^mNu z{*yCdt6a|EjNM>)tn(78o^KHAKdor%lDN}6>i+GfqbYB))XVF(VHCK9o4s; z%r}8X)R{93oK|>Z>rl>{j#J*LGeoJT=3(GloKWR^Urrjfa zZ)suqT*2r4xzLe!72aigIU9M7FGq%hOxc)`u>xbZGGxTcE{^a$yu3Y%E!*pK(C#u1 zx*g6Exv`qQmpyGnznzrpdwil{D>U37`^XrEkz?6DoxMLDTI~!p>eqekjK|n4mFzldct?+ zuFIvOlI01j&g!XkWDiwGbD3}pYdpa<*zhB|@~DerTN$AZN%r`!LcT9<4*3KaXGht%pQ`r z*ZsCH!Wl`QHz}Rge9iBgeWbZYC$lSKKCfY4vzOy$WX5cPvpcyk@5=7bPCoHCbxem?>=?im&_AsjB)P0_M=Q8g1v4?O6_CWg&&(nr{dt%vs&7FofGwCyJI5lVd zUPOSQ?NsgL!Xy$(a8k=qh!rY<5)o3S}XG^LHQk z>dW2$!=Syqr9Mud=@DZEY+aRf(z}I;OF7mQ)s39q_>v3dAE#ruY;!A6F~m2 z?|J6=_40>%THh+4u&0UoW$puPB3=M(S+A1Q%bgpniwB#2_7|VVuN-9F+KUYw%zc(K zsGnu6zM21Fyj)6z&D_vg6FB*Cjm9!-ut=lRxSV|;6=3;esm zzcZ`(aD08Y#>#K4aqE4r!g({yw%x-2K&S5WKC1Q2fyeckTD%HDHjbObYs||;7kK49 z0}Xnks_tg8-@6V@3)MIIp}lZg4Nmw7f7uDG*>f5^7g~=)YtiazXx%gzS-k_+`Q$68 zv*8ug`IxJNJ>?FCwjbcP4Yq<$1$>yJ_MQzs*;~2)=QQ;5hr~WFi>leL@&Cf8+66zm zcBD&PyW!PyY17~A+oEdb@1(Qb$yPo+z@%;EVh z&|2|^r=1T~SU}k^Zz~ms9WM*Rz+WIecXLAVOK!a+{YG!+bbTE-kAR2j?RNjWsgDnQ zz2?~pdL_Hjbw4`&Vo(%5Z-pF1Icv&z$QyyeK*-o;adwo=u zzaV@T^Bj2Hg^n~yX2A=2jpO}-Go^p&f;~ zVTa_C`+Tse*56aqrCepAW#JKM_y{!qt%vi?w@#i_fX>7kY|SY+h0_{J1>TE(iXj%T zH!-b)J(LYPrNQ>MLS5^hGWCDWX{$1fpfj{x^o;c&u1 zaNxbs`~>VUeHlKj%ngBV_?^LytE_NbLrLF;{Jrrx<{ zqsfubgud)~0nd!xo{!`CyJ=^m`R~dk!*1>_`~2N*@eKV~ZF(b_*}Gor$gXcY*_KXq z>YbnSZ2gPOYM#yo+wJuxkL;P8F~66?yHk9hDhslG+GJVan{=;$%`-fwfmaCdz&Bz} zN--xke2zQC(AW2X<9nZbYiT|A`KZ0wk8e30P~5tJttvdy&b-fmVCQL1yxMeE`wC$m zH2VhJdb<>K#^CZ^_Q%l^`xEAx`$aED+m3+i3Db-d{Npx(4%nKUKNleTo$+zNfdD6A zuVWfA9_tT2bj)_P#pE4YISdaHlf1>FCRMdE?8z)Kka4r(~KAS zD)3u&)8ve?n;&^tLn-jErr%HZPtqXKUpI7!`-T4n+S@n|V;qsYH%jNfZh3%t?m@-{ z{)Ib(4lxHl1AXsoFZJN}$-g7s(9-%u_ZeLe8r;?{+GMEHMV)TyNN4Onb{HMGK1kVi6urbqbxHqb#n^ymYsH$8H(Wyf)gN;nkNio9i){iO|V+XQk`Njp>SwFP9_Jx(D z_x_viJzP~z0g)|>IDyEN%uj?FWgJ4cNzCow>GjCXyIvnkBpgRYm%~jCG=z@Oy z4c`nh*?~UD!i$oLod1qzA=qch$to`=*cSQM!M=2?bmhit{Bik55%Itddq)3lz2xE| zDRO?+o{}B>5%ZAxls)JMSNPxB_5OxZ>T7M)Yls~*%y1yJ%n`V9Yev`qk;ybg3Xh4>==e+LgQT2B# zqkDS346VM(y!dteZQ%8NvaNb6V;8*JdA@^Z-G9(I>wEWy_Ak&*_?mCe`XHBUAS}nJV1xW$A$f$Wl_z{x%^?Jew^2EpUeg7g@UM0J8K*LY7{Qp3yGo*>zW~ zEL}U?R(7N{@q2mzR>%^ddqkH z*6TLD54(COGThU6=tiyKi8<~_%Cq!g1vmv6=tAeZJ{)l$Ds;RSdS1@|wGHSvw7>Q? z>H5Y(YpPmUyNdU#O!o^{HI&x0uB>)lbsK&P>#HvxK1h6KINT*uxXsg#w(CCMw__3g zt@*Iyzt)t}@pURg$7Qdj<5%~zgM zeEIKbA7~e3AIesKHn_jU8I*@p9KZNmq4 zVH?h4Oz6WD+wjH6*@la1ZNpl%xrjDjWZ$vQo*=Kyg%38A3O6FJA9V66UvbQzgH%6V z-Mo9y#W&V?o3RZ!ScAO?^7!}sHk*O`t;AMHhB|oe0e`{-F0ZXQK1c$zy%}KcCMaoq2z8?;kD z*S!9~RzHXG?N#TGA&-K+ z+S4n8tl6F0@-I&FG6t`EMn%Lfx76)kdF-`u@F!{8Y&n(uRPy4v=DKkp95F0j{(yy)6h!L;< z?Y?=o&Te9DOYAwveyj4w@UQoK_sdmh^R1?K<>9}LJ+-&8x7N-c+bZ_jbf49?-S@iM z-8nBiE5-ht&Ob%0?c#Gs)}H;iG38Rjo?XiKy2&|qi< zNFBEKJp7nDXFYlUq5Qw&=EMH-wr{n+Y!zI4-D*^f^7b77NrcopYzKU{NE9bQUq;cR?B=xg`Y!mkI}`{r!#$V23g zKTQ76BjmO|nm&4Bc+bN1m1Xda93a~lKiB^!=R!H&z4FYoMYp@3HZSJ z+wNQE-l`INMTbjHjQ-!5^hH#ry?*Hlc|OdYZk<{1@fPJ3g|e}5Z^G#w4s&0KU6sL+ zdLLB2McKz2;{F~@l!ftuLx+#Q?4;k#^fQEP3kP!L=yMwW`MLXg_@{dMo}KX4-5?%+ z%WDkl-(tu^Vh`KKjSp4`^nzBRqwu$aU;dHxkQvPy2-kls2YJ(wX5R z=T0&w&mGivUIJ|898ITp|M6>o4_BhEa#APYr^aCS8F@QZ4EMDFGdjNM;v0X3jXXW- z)pz~he4*5&-x96z!+eZ28KWZeq zi2XTuUHK5W@|&PKMX5p`1YiMbrnR^8Hn#mJ0QTlGJPTWo@-zhcg= zP^WlzYWwi$Wh3J^MWth@e;oCfQvV_B&Li#E9{z^;ZmMigD>B!L474^zvia3rzf282 zyeHZ|3)@k?1z7>#azFpUpKpTWOYncAWN6+<`BN(A|J^F*j?4bbMv9EB*v@~(XJZJt zm-C%m?pqhp=86&Br?@SB6m4|3rStJRynVJZolQu_K)5HMNPXiOV;oMui!*ia8j-&@ z1gs(8kcWSL1%Ez|A5^&xKb^ZIRj-xUqUfB7G@d=aixG&eOT$Y+YOFGZEhxXDs@?g!e~ob)JO&RoS&_Bf_wfY&IN)0YW8^Iaz7R;M-NR85_8~~&(k#7-t#}#w?b!) zA0ORpuzq&{uNdALy%O($SsbMu{HSTiZ)+FcCEMv8?Q+1z@9r&so^v6ef4nz_0gXbx zb>+>fBe>SKv97K92yKBMw{_*sdD^0fz2eRH_>->a-kaf3@zu_{@=h=-Cn9Sq(|nPzOw6f*9ptUD6dP_j zD?8+M7~S5AzBVCqtI<==m-VbhPfZs1t=#1zb%)Z@AGcrJ5$-KR&VpS$kgOK5iPOpI zC%I!*XBi}`>Z8K^-w7U_h6n3r^+*4f`@F`@U&W-Y@^&QS%TzB*J*Vs0=A_*+JmIn7 z$ylUQ(x>6kcVRCt!=`cGSL+LBn>n}Ix8rQTNApv@zp@rwi~VLpT8rSj5}wBM!XE(l zkCQY2uUAb2Z?C7&0D3~d=5T**j4OKe`|#?xy75b86W_8C}S^r5P^n&@VsG=&(~DYn^M8)?GJH3jZ#TKR$bDuB<7Q4N2Y(sAG0>tIpaiFmgFW}?n#+> z8rUx;^C?{HMf1&!xjHKtU?0nP6yw|1?_xqP-L#E(T{I|Py{vT%G-vLB=8Gq4zF*WX z|J$7j(!8$w5cCcD4s@O0ah`NG&Xdksp0wf@MkB^u-dc|--^h3aJn^Flo=;QuI%HyhI1d~I=XmY< zig3Q_72_Jd%gsFnF|N;e{B3;?4a7Uq>R@rGe_j#YBbiUi1~jiZ`=UDAkfE1u`i6@W z*RMm+fBBAPusKQe!^*U|3~i+i1`%et?c!A_e^r@XjqvYa?WHOo8QOPz%-*(K~voW+`* z*zb@Vul9wn&qAXNGyxBbi=y+kZf5OR%`Ivxwer`|yZF=`G&I{mxo9YxVX&cf1T7kX zzoq|O6Ph;;;r*k`;ToUjZ)Cs3++8Zp<@=Y+;k#~NZM7xZ{$=)vGzR&0 z9@^c){}1q=wVTcXYh9Ragb(lyTY`O_Z+?Q|&Dh7h4Uiw6c_Z;uXqrowu_ltAH;@>g z)^)AmxB>empE9c$7-gpa^snz1i61Ik&A9U1p>rTeP#LGCLjE+_%X#k zFz*faGR7Kkm;5AgKQSuV_XL2Md$s*Dmny$}zy0&xWN9h5(oc}9%8B6m3EFC`pKxQX z^hc$=tP7ivu^N9EKLS~;nV*bSl;@FiyXzAj2(XdGYKHmT&Kd)|((n2FDD%HRm#Oy0 zQf~>ed>s7VL%r7`%f|!r1o&QD`oGr?Z+V7XY1UN!3|oGY?bQ#mjw{XNJnmC3<3j^y zli~yF=X`urYuzzTM+G)Gu6#&v{%|gKH;sB)8+}Wx#m|oaJ*XUo*@7XNp_USF2(i`gY2H zW?y%D`h@;6)}M>5ylPt2``Uq4(A{W-EQwbC8GOA)G%~tGMi;?-oChYuX?0W-r zPb0g(A%?B;XqIBaiFdQwN*8c;!`@}NPa_L&;b9KB4DpzHc{O>!ug;>UmBo?d!^s8k zGr+U=Pvf8R&e|@fEbaF!sMAaz3EgSdS~5#Jv;EWHhkZUEewy=zf7~~A78@Mn6ao7z zVCc-Q){urDbqXP#Bf6kpDP(r{xyUUsvl)`xbBL#)U!uo}jf{c+n%lzsvGD1a?~_i+ zo*MlQ0OPm5uIO=_uW#@K*Xvgy>?eSa<}-btIgj7TeH8bLHkJ0MG~Nz>7MUGtk`IyL z+1k%!4=%w6jVFW6X{g>3-v{(pr;~RR`VO{=b{X%#h4qtUQ+pSA#){0^8fqXxE8!g> zQ~!OOy9}wDv){xhMIXvDHy=JXPygfRBx3KtgD1A8(mp_$aY&cn2tEhu7v9Hw4E;Vp zzoNJJa_ox8=1S(~UcI;er@KF6;WYPWP$quZco$-ab%zLa5#GujAJ<(Q_|yj)i@s-M zvIieD9+P))3-a_J@*}*`&~gMB(EH@yCiJ&{9a*(?x-X}0$JwF-VcKF$AkYZdzc&%*UTbFK2wY4KVmmJRf@X04(+HEWgj zM)pkRvS)HQ>)^)0Vb&-^#0`q9$2avKLk!>bq$1UHl`>F}~fV{wtyJl@kvFQ}Ha(M(dKi z<^^b~cH9kC{n`xf0b;$UJ2$YG24n0TX9JUP2mGDHNgSC6%vKuRSITzN9{XNw^5yBv ziD3d){#Uk*dnXQ?Tcqz826c1Z?=%>zJq(S*$8))d&GF$otZ#hmUuE$dJk_qd|3e= zmNzXnXmcuf(I(XQd5_NT5x%?&_-akAyE&8f zr-e^F!PocEb`tmAy&S)mHTSBCm+yNg<+3%q_&xe%V!k)g|4oy0N#JR|Up!XT0Ux6! zv^Bq1V`OX<-i`Cz$@5<7DAwq8sabrmv5J;+Um-0QzY1DX*WfRPmiTl@+8mIU^Ijn> zsb{oY2rcJA%XyBL-+*@NE66Ijv+NNtXUJ|RWF#rO!H=$yHE*}Ylg-!x*@Xt^xE)^U zZd8@4EJfLyzry_Bb>kl1Y2GP+$jQ0pO7TKAM{%%NW^R~XwqyIzh>Zc?*gk-R;J~Yr z`uBFKWk}_k_b4}d<3m{Al$-tcaB^WDQaOJC51Y$p`+JyfQ2f%p8&)0c?l8YQ$#>n# zZ;NF~R|Jzb*57RU`vChF&|}vJ^o%@y$bCO_5AZhr=H>g&17F?gXLTrRmV94_OkC&t zgD%z&|0S!YkLu$q*!!?gMBNNI4bo}l%A7b(uFMSX4!b#Zv70YFeMEO~oiaxHf32rm zmi8U8Ke7+a-~mn*gP-l;-Sx?SX3?7_XRi;3C=?J$j%S ze@U9X2KwlI_|tg8oV{|p^G%Yn+Tr({k}_TNbW_{lb94m12mfv}zR!dBK6}nrp36H& z9>#8epS&35KE!?zW$TE&20X44{Sy9H$DvbwprVhZTEBiSHs5e&BpOcoLT@vgnlDx6 zo%$%xw6Zzc|4rt7WWrwJI$v)cwAMT$xkpCI0WRaItn1@Wwu;|J%=T!{Wt_5jACb1= zopL^OKeYPYv>$rh;m&@wRjjTfM-hob7 zjtONe`Tfnmll^eHI=T}~c|O9+;3w!b5c@vvebNUK{JHkcA^h_w)1y43;WYc>_))o( z=t>?>%IOAta54N4Ki~|pd_L`Q42`~fMD|O$cTMPma`%1vCbiezp?tYhgr8(fv9+0> zk8_Qcw+U2hXnwtZHvzXEru-dzPd2Z4dH5-@kMehvn=wpg6nx6DU zi_|Np@!O{HMT1OB&h#B9qYeJ6JvYjB`{%6ew11uzYzy^U^z6%zh{!#B2m8(!lkeW> z_MO?&A*&R}$ag-Cmw`pOWV3z03Kpb@nsE z>yh(~*r}>=F0n<`40}B`r=Do=t}g>S`CW(1eE5rA6vAFKb1?lN1NfrIez5t1Rhiva zQtoI)u%u6qCVarzZ8mq?U9x)ibGqs3QtR7ti*-J~OnbAX^cCc*=;bw|`@d&8-`o0J z?D~xLz8U;xy8bKRG`_H}q`j^V<|&V_ML0) z4OE$EsQZ)ceU`f_m*B@yp6A=QdCg7ekLuWXp<8_Z1$mp2@7lh2WJ`K6XDN~rQ;d~STRV5{lR&jGb{sv%flLK;II+@QA?-cNgkR%oF$-e7nbe15LiGbjRzBa_-gM z=ude~4lH}k)8?8G$I*F~pDq*4ue7`~-Q!<5vCr;PlFgB<$KMGty`TK{O4;)v*+%1b z>rKId7wnU>4=jDLZ*3%H38v?$Mn=H!JZVGq>6o{D4K4>sG@{f5KTdQlx#ksyWM9n=P!44GsHhC%c-xJz}b{hx2BA5B_!=>1=}2CZy@%yIM=ll{&8jo zd)$jm^lHAYDO(Kev%zhl!>w{AcrA|eP%SQC-**B|?4KlT)Gq95GG9h#D0h;Z!x^~h zZuF(*o=({luOE!nbPO9(tu*(UKNR1|3GK|rQXcLA5)aGJ(%WG0nmt!JLF3dBUgB+q z_kwTlWTX8%;{*C8x=ZGM49>a>;qmmF0b`JAZda+m%zJ zJ$`*J#GU`R8o%`Fi7owCjeM7LkHtL?tk-w-;H}-?Z|4*C{A9h&VOK-ntD!G{;=TX2 zN3&wsiZ3WXSALJapQL)@R*x8WKWAsq6N`0+wg0Km;8gs|hwi*+b;LL1L`&wvSU=jy z`ANRRrewVT6!5mZB5;>30^jcCs5u|!&sWVqIlAXAbY>GU-~0Wh%^FlFvNv?HdKkO+d%ZHu!g~yfd9`Z0fQ3gZIWabXoaqJCV8X{j0-6 zb9@lXI|!IgS(h*9%o#dGi|;eWWHvdCwVF_?JJEV!;*2%F7#BmM>T&|+uhD) zTyVF^^m4{5ABMFGI%M`y-?}N&&g}cF4bAcyG~eZ-P39w*3@CoHvaQAHw75DNTgU;G zuGl+I&w*Lq_QH4X_cUjLp>L67xW7gI{y1aE_u|)^O}pT3qdR40Yv=XJSEr7b4f+2y z^<25#drV#OuuJvhwSF73&EDtN9hCOXE0e{QZ8iRo%49F(L)o~Kw!!;8`yU6m*jeal zaHQOD#Fvl9GfU^Dr>RSMs5|X=q(d5y{5jD%_;&SU;eGHUZ7fNQ3ak;g*3NI+y*> za?b82@W{xwM(@VL+MBvsgEhVBqdV|d{t|y><7WKoxgTWhioPJLrg!{zdsp5U)L80u z%+B%wujwxacF51ob+wLYuD@NsdENwmyU;&;EuC9FAZ*4^>)Vd{^%SvUTZf|e_znE= zpE2uymVQ`E+Bf5**DBkPENi3;d@}!ZVW~0~-Ou{pKlHz6`QOj@-!1<4kNxi>{O`t# zT>JU{cgp`>d)I|F7i4dC>nFo~ zwSQOgxcy0@?n-B8WREJyQ?NHS_C-ebY2#i7_d@1lbb8;Y^PztCfv>YaoZ^mg@}%1j z**>PV3VXKroK<~ecoTcWoBNN(XW}~>> zedRAqv^0u zFwQ1N3*a=I&}TNK*zd;n3E@nAaE6~M<3IhH4dH)7s&B_fs1t03@nF8=K^`44`ZFKO zml^)A*6+wbyk-M`ue}o}a|W6rKXZ!hhqH$cpHr?6vqR9Zp7*jv ziUkfF>h#IrXMxXpOy?u*Jfr4nWTPBps-N>&%%el2u5ay2N>0OX!-aRkr8qj5d-(C&@?CS@0C?vL6}P(ZD>qg?=6yy>R48_8gUelG%@){VQ+}G!L>R zUSw8C$DtKE9^={m4o5%azu;|;V)lk#zv9`KOyqBUr_*(0H+KMDZ@Az#vv0%wp9ME$ zskb$TV>|}#UU+Ps~|FSQ~RcoHs>IJ_ih)SC+hL{be|6 zPUhKioko!#;NnDsc=@*{J3DB zw2!c7lK0x53%?B>?~M0px3_grd^J}i53;4f9u4?=;;mfv#oLCl@Eucd&3x>g=y414 ze!?ELWAps_WRjoc{vlth;hWKjyL;%1I~(3%{LuN2TsRZvaLVaGCeQ{GYw$Hk(fa5Av)jbXU=X;JAe`H7{cROZW!E z;sLnjj9+|D`{pCf7G+8|I6nT#dXwwG$Kn1-}yH;gj^6?8;>P<`%A}L ztq-TjBJE7>d>!LA&w=0j<3&fTTeZB%D+cfi`62x>eweS|{HAQ_GWNtOOt9ZNiC%39hcV#nf zy91n9Lvi#7e1uDw%P)~U&B+iS39=c-L=tkTJt(8YtB{|Y>gZ4-*TDyfbL^aM1$$bI z^XZV;S3&!$>iVpq88Vp1<^)|WB>aXZ(*@3CsSffjn(3RO;;o}2eky#YY~xny^uWu< zsH3xFJ+?;IUE9hhh=dozh*c2P0%)+-iouf5pYAy}) zW^&Fh#&+eB8h;bG8#QO^|B&Wv?y4T@zidQzOBK_WKigWQFQYHz8jJD*q+3IJuekz$ zBHS6m^9M7HpC?x7=I|sw-SmT>e};qW{Oy6*4ot-><7j6-f3S<9mD-bIb-n1D^p`XS zwaKEV*y&$n*8I_6!!uoca;xv6lb~xXC!>@8=A(?Go{mYn4fuKVKs&l(wh;h;dP;iM4FNU3^!4@jUyIli$Y} z@5ULr3sJu0p&L_w{`d;f<1y;qVRaA1pK)@|H<+z$L$9logtwuoKh}rloao#9mucDs zc?V2d{zvJ{F z8hz+VzNgLDvo{gT=*k<-H}U(a#n@nMN`{zISPRKdu{f4|;&$?95;iTDSnmo}mNkew z%ZBZuu8pxhu|^0m)CcRVOy2o|$b`v)wPmkEYdQ1PIdkB07m+v0S06H2Zm_|51N|z7 z7-DT3-h%zKxPZ&=w{r^#oP)k-{IShOj>}$-MW5vf`Utl2qx9`CITs<^FfNdCB5@?p-HW>y>ldn!+Hx_ zX0*!yd#K&jQ>>#Xxc;}}L(2TiArH&Sc$UvObg^r9d_8>OnS{U2)jKl4*ZdRk2A3&# z-%y8-|80HqY<+u}R>pG@A1ebl^NW#%`gKg^2roC1Wgp`cUpL_U$mZEIK2C#wj%_1# z@*lgm6zpTr-`M8)_cLhs2y_&jnSV#@hVeF^rFahhfyHu=A@rP_n(Yd&uJrA&UCG#S zi0dks`r{AnyU*pWz~?Z31v=7);F+u>^gQGBE6fS|3K2@X(*m_>1palMXL!uo!Jvr*1%2)vv{%(+!g`=sk{yi$r_cSe(}0!$W)LczL_Y zx{LGLoFyD8gQXPt0*BF7{mY(&%?iczWYaE=W13^ZHm7|Y2ziB{ z&R+LlFwzCzY%Qz*W_MpRVq+H!|Lv(l?8i;Q$RuDWPhlw0Uf=jFsz0v-)AhF@Q9sZ; z{5L!CM)}3gkIYhc_*CNoF`-~H-obkDV&|90CgYO~Q74X5^DMgq4C2(#MD$6lVT-Yi z#y+$kIkEtp;?H=Lk{o5R#U^9($R$JVZS z&G}xL#F{ec>zbcLy<2yyaFLPl9K>(E4O_{>WSKgQnVK=5_g~PgKs3ZMvOtYu}*=-WkQzJk5*# zo<+4cy7E6>6QCQ#qnvzgOOqc>U!m`?#uE=LFU9AY)UPiNv`!lfGL(jw$cS>bg-4Rs zqDMBdX3Juily^)yYqiNWp=hJEn({2{{Q=;00dHD3k{M6a?+8x9{stM6{oPFeMz6Z{ zZUesMBhS0Fm%abtrLoS&`jXT;bQC@~+avlv+#A;qaw&f4J|3ex&&}{ou;nKI)S%N!r-b0>?{SD*4VcYk!!j|=`0Wkc=Ge#|rb zHR+pzv)jWDbX<*|;aVBbRz{oK8I#GV+7n-u|E;`{EV(QL zciy@KyG#z;1$SrOhz~M~Jre%-F+-!yH@18pPfy9bVjj|K+iw$m#ccg=+2l|sl!<;# z(9P(p{-IaSbcL9p=Yf-dzXyYU1RdA78~8I{)!BN^3m!gl65j&|w$}OsZWyEXIgCd1 zn`8gn#-q6YO6Uu0v-9hmou~gvIWZrVI5Qz_amAeO&^)pfAAc2EWVcjoWGro^7j<_$M|E2!)w-cCgK5x6e;gI33f`-AG`}vgL-oI$V zzSlr5%D*lpM`)?!jC`osx=-Lr=3I9NQy6o6_TVd%u_Npd`|yiLe!;!W@q5j|o=ye- zzRY{&+@}8QzKcG!k243$$RRw{^_Ojo28Ys%HOH?g|2^xJQT#Lf0C$J?RhD~S{(EEu zURIzr?~E4%ll*r38q(opnPPU7mGOPsp^M4m=}~D8xJcG?cG${a{580#1x~m8 z9W~Bgd44=Sb*z_6ha>hNj7zkX4rN}#HYH?nY%x5?c1?Ts1RauICHbM><)s=cd9>(; z>2rW9x%#cUPqPN!uS~@^558`k&Q3u)`-VyRR8L2690+?>@JxK#ced~EY)99;{9^C7 zX1w1TWJ+>VIh#9*SbHMd`;{%#(fknPEATF~x4FY)-o?P`dG{M+r(VX&$grK)1h&p5 zV8@%K2SMJ9W{d%Tx9I%WKQhO;_sIA(wE78sh&$iT&x@L zr5^7mfOjBz7J>|W{T*j4VZXARz+K-l)_B5Sj3a&Ke6CUrPfmy4@T4Idz4#dUoBPvw zjluZK-fG}Yz{z-%cpr~*8XNE_aGS!PAYwq2V;J*B^w2nb`kHzz+N2 z$fszU%uh(tRrv|#BLrCjH};jU5BtiMAWzfab&={a^LXm~S7WcQN1Ymam5&BbzOq1+LMkf}d92_j${c%;>!6 z;;5wfHGUoVGGBP#5S*-jC|5hmdTs8djqYPN_?oW|0$*p&1Si|rwqihYFY`@>-|``i z1|D{Y=67IgY?hnb@BPPg;>>0LWIp&F#`-L|(LZIZ%DGlP_a12bEUp?^FWh>O@%+;4VslU3nYa*ZLOe|&GRXoAnl<_`^=E0z& zWyTX^Bj}0B!kS$$k(n=LfJq$9{6XzE*qGF>YbDmg9qP-Xco1mA>^qxDRP5^CkWydgAh{kfEH9 zcN)&rtt{)abDPSg*voT;GX%O9uya=P#*W6QG)`IPi#Pv3>s)JtKV#zrZe=;ontNq` zUUGB(8Ir@$pUQoIaTz$(_gzta_U-?W{s(;jif`1z|3l!8dANe9znX6uh4DkzF@HZ$ z8Tw>R4%``;473wXb6tfIovS*RcjM`1`);!6+N#{~n{V%&?w#e8-@Kuxa*n6-qX~M} z^^*lwnSN}4#`~biva>IoaT1@i%(HBc^!kqp3 zrL;3#wT|@gD>}=?IOU_%oN0njqOZ=qnY_ZUaJPr%#)`(vJdqq>)Zbu?ez^e-F1Jj>4q0YVHMm;5hubnL2M%_w54WB{gS~PW`ClP2UQbJd-r4m`Vd@Y$N;bME5W;hE<$Pbo1k{&QG3QnZ5m&>1eQU+>F7(o1!Z7(p|b2ow>F; z#5or3^r@y&QFZMhsnWWJROvl@=lZ=Lj;hz*7*((1`_Z@jh`*<}oBfhh68Iv=P@sN+j+}R+&H@4M4g{Vj_C^-jAhx=p>Q7G2>uD@uRI-izj5)J ztkFR2Br64Ag}Y)3z{>zj@~m$#=Lgp~nAq)(1k5b(v~P0{G%Y-(exv3B_=~nl7{HHX zon7yTci#8Y*fN4GzRh&8PB{0c=_uFV9rUO1 zNFKZ4bu&63dwwjrrfbv=y=lmD|JM`K=tM%-uJ$%KrVYMX(1Wt~Z{v5;X|E&blFi+w zJD)^%q+7BHVLU;nyv_}HTcP?%+qQ;pXKOEiE#K8v?$tWJ*?r0q?rG+`*K1GWJLacg zQ`F{UXAhV0&dL~fwzJ>#Ub>K4dBUL1Y%St_pnX<$i1BpOe)T7plq&hA)A}|#_@w)yZcH}ughO6 z02}_b6zEIq*3kYp4^H1cx_PS2ev)Wd7zbJLWU~<0u(y`G!-F*8z z)DQJCH+!3kycK->E!0WQEg8|q%U`Th@FO_~#dh=7Y-u@qtFiA7Ruu-n@vkA@RfWimjioXb|K_fPisqpZ4mAr*FYcf zV>5o&lMAAI)K|8{<&f6EXU>K%W{*^V&D!+fc?+E#Fk2w{3aA* zc#zGVpIH;zDC|f)r*3$BGB0_}X;GFx-$GEw1!-%Wfkm=j8 zj(75vEwAuf^Gh~&uIR7HCsf(uMN7=5&dJBgE->13Gv{^4-^O2At+`Y4J#jjFW*+RM zjK9g))T1`v&neu=Jb0%cAMz7?l?<>8r?`7QlCo#AgDmHDo(A};Bi?kK!n##C7~I{_ zflt7@{eEw(ur{hD`wX&WYmg5Ur@SmxE%3h^8R?vloN~sFxZPmx%2ZYN2V1?hz8?Rl zt7rP1kYD83@h9+7y274N;a+{GmiZsLX2ee~$9cxzbrS3FVBdmIk?^CGchS`f{ic!m z@Ggw4#{Nn6m)t+8f8bI8j^W&jPeQ-;e3J3SaMbT0`}E%3-hZ-bo%8 zeBQ0u1J*cQX1lXJh1(d*ZNA>qleu!Yd?YF@6O9r!Wgv{1u_Wi@*cJmP*kaK_bk%qD zkPW`|H2F=v0ynksdjOV4lc}3CRlz$x8w$28SRikU#=KqS;uE zEgLt)S_b*Hs?G zynEX(g1;o0N%e3@Lp=UG@<=|o{}CnX?J=DDCbWan{YMn^_86i3ABpAbkasuQO@6jZ zrS=jIsK-EZ1@Z-RUosnqsGsg_GGdL5HBB76*zMrGArqv_y z&93_)bMN8Y#5W{g2xfK2(yi_38=D z3!o{jjifWo=(o^WZK5};GfaJSPg97_po4Db9U<8v$w}h#{j{#joLd5)SN9YDr7D>d z$+^iku&Y2($>uoq=E^Mup zC-#%>YWxLx8nSD?k9CYBpAk;{CCxv~jz{M~GH0z~<$^AZXRziZdnv0MdI`z&JlKa> z8uTmKCK#Nyz7je-vyVfTh3+-NxS3`jzl3wa4{6p_O8$f6+eH7t;%nTuT8O(P`Lv4H zai5a;U{vy2b3~Mzr;Y0U=GMa*3y4zxR*ntD<2a%?_r;W@O$?o;U-VwWd?|OS* z*!$6CuDkZ$7vgCjjNxGf94*4w`=YxbX>TgzmxI11z9l~S4)CNs`%>KBNN3r}_Cs^e zV(_5+F4k%Ha#is)a{d+W<-+?-#i=+Wf%lt=Q(S*2WbZdsNbfh1PemF3n+jbf$M(hH z%a1zmbJ6&wu_@e9!G7;8eIx;X9pc+g^yU-6coPlx^|%fdCNuj>Y2gF#&wDV`*V33} z_w{3+x)k}!_*ZcL;qy560{;-?CE8FvYI`Zlp><;@eN__bK^$ZX-k8GKnwKl~hgtvN z9R~QOybK(!zfQtA1y^Y?d>0EJte`hB$nO~UJ_%u{hrP*c<{Z=F=^ZQnex!-RAMTNm z^0G7kSB8P_9Hqt9>GYvIxNA_Sf1cSUrFpxw7=HAMeHiQay2?>M?q)>0h5Kf4?j7TQ z-`;Y(5wJzEkMzM;^8MRhqVZlj%7Y$=v+AL8kcZZ(?9SRUlrNR>X4U-_ zM(`BwW!ST&;ZJCPsJuN_lm~o>KNxLLKVS!Y&x`6oy*R56S^#&@irPA}KgoZBXeFd0 znt|U)HxOwfrN@2z73HAK7P_BNk9)5ry+)iHN~vz>8&}2eTH#m0TdGguH@e?g3L_k( zdN+m6LEYoh6YW8VKY?zfKN}&duB6)(eZ%&Vtgol_k*uHp1RmJ3cUs?E+1LLUeM9`r zThWJ~$6xGpUX{^9(z8m7??NBGBJ?5jyV6ce5eq}wa*SiF6+&-~;|{bUI{TmppOm2v z>c7%r;oh=oVTB0me5t6c_@ybHuX?Gdyzr%Iyvgo7qjU%l@inDGJ{b?=-ji$GJItANf^L8UJ%J-yJW}y&n1KOX==h`c3!dvOGvzUPx(i-XCXOSXy?+F7AI} z>FC^gYz6MEa4~s_H|xql69ev3#Ti3a$R|!F*WM(V&ff=le4ndq7tV&VyfMg+yAX@b z>`V8Cm4nCF+(z>`$s`_etZz)$?i&}q;2+e)Pm=9_0D^5ZDZ;_&sEMpSn(&6$JTkcYquQd z^=9yy(Y9wsIY<+>9MmKk~+}tpy!v6SF9EDRD z(U0*P)k*vYx=LYm)^8fWfvysLq<(sj&1qBgb*c~Td-m<^E1W)_$=BV6@M-CgZ$`R3;3>LGeF`svCA{E! z4u2*$=_%xAZ%167TEuq>w>@a<*QC40Lbw-(aGxIk{{{YpC*daHNjMXpL~o2C>POZ_ zvCn4m$4iVqsGl*`sBfVg!PkxTJ$&wP7U>J(nItids1MPaZ`ydoSf({T+4&^BBv0IL zf?u9MSF9;)xW|~$7;6oikzn+bQP!W)WUE16MNjL~J$B?H-LVfiv9==J6?swKRr1n3 z*p%1NhjxYXLQY_f<7PNOzoYidq|Hgt#{bmq@Xz7}zwAQhmrZzA>c~cewLWYPO!m;7 z)oW-CM{)i&(|izh+}km=S%$}#`zOrTg3okHvn~FQwQ9jw$ zr84qS_rF{Yt=CZw!ykA^>%(d119>{{rY-YVDN5w?8@>4~_aCNv>br8$PV&vfdm`1R ze!LxHk=_s>zhb-rwXQPtwD2~LxF%+PQ`MsFilu{38>O>QI{4s`?mylv>ApVJMwAz7FW{N&r80?bGs|j2800N`)tzNp#snasv7#!DRcF&bU+mm7)&l z@}V^a`PH*FLzd@Je<_4_>_X)e528NuIXUnWS3@|$cWe6&EAHx!_Jnk(=INu_KBR&-V2*R_)aKwkgi&KkiD5DHjB>?!jXUrMc51& zw4%2&f{-`lZ%lIqduIf4P?8sH{7ZHOag9VgX`i!?`7e+S(58jlp?P2%-dMpnru{WW z15q}!xUGnTyt-=Kt%!pRylPw_;vf^R8i&5^!<=O-0<@=<-_yvWJ`%<`d6sXp`_>{p^KTvi{2 zQ=hZ?s0_d?ANWH$^JOF1N^gchp1g{_Wbp{2K9K0I6XpL*n$sK4-^N^vw;&lG$>~mY zJZNK)B6%ivSUx@N$}FE;LF#lQY#J?r($0P=lrWuaKC=Ki|)Fi_w1y1w`i?QYhcLt z+5)Vd*}F8@+lGvX&GhQ~+GWL9|6%|UU0`XYtXUV<RVH96lkV}SyaXSpy0>Ef zd!mjx5BnL!E5(E#^a1d?PFzb(qn)f@Y~r3Ht;yLs9X@Y#S1sv!We6j>N&7eQ{-Axw zX=Td#BUC1Tl`;`_y)qf@bf*&9!R|K2m$ehPyo$W9!FECY#Iya9ofRs4=}qP50(2)< zQpEwpQ#wkc6w^@JKNj9!@dvEK)S&w@%;}8&NPnnUGYccp$v_EVTRbBWSE0t(m-_8K^cl@JA-h^T;d+pG&%^p zl~}><`$WF7LRmS0|Jibc{t(AOp)d}JhHPAjzo~7TNWMUSrMp%czC63nBx}MHdJbixZg6`A}-Kht<6SbG-bDA^TFjpJi72a~E_n`Av(Yv%Ahx4mRv zu@7&Yf)28MO&W_fX?;xTiO0pgQTvjsr{5&mMwVc`fxe+JMrRSlHA|>(Y`KU>|B)_5 z`XPP`ap*ri+REaQpT$#tDIWbwJS+W?UC@rWa*TIoqs9Fhp?7%^CfL&jdB)Z@G!Idq zgN~s-2RyUSVZYczbxVDZbpqo{8V_%Wk`hBBw=dOD1wtLk|?{1tX!y-NGXGxa?l;|aRnYtZ!$7DC@EPI0}CIpB}kDMfEo zB||Rl6yy+SLURbaBNXW=T(~bZwSw;7+oS-lxLait`hm^QfJt8}EfmwCY_icZUk0pA zN>MNERqK#1G{)Wl--z=O$zik|@6qEvGL%WQkWA@ct@JATlkg!Q0E~%R@IgP_gL4o#|KTM?&FjUAn%SLLKULk$bS>JK-V9tw?<#{n zKt2=zc-o(NjCfm@jBos>}A9624Qa^ECN0Odm09cn187P@6)oh zJ1Zzo@E4HM?yPtVVPq$jrN?}b2s{K?E9Wh$3;qGZ{D*jg1^S^KXans@()=mmPCQ0! zq4QJF>0IRdA~IOb53{X+!8(JVrmP+ z5$S1dFca4Y30G04VCz5PA(TsUmF83h{02=)g{9*@qiYHuH z-!Z!;d}%;q&>nAU5baq%;r$}q8u_SRiWhkG?uycbLVL@> zBfEj8Xg?BcBBITa>M#BEPp+tc*JJ;E#rlWB;FA%me`Y>bKjK;ayik9(NJqk9^L22L z+Z!bs(A$8FmNFitu+pm75Dqi*F&q%jaHzVA(STs~yYo^}*}+RiQklCXeE|H$?w1wE zE%iH-nVt6(m14Yx@>3tv_%BYbh@m-#XFB;+a3q-$JEcRIX9M`s zd|iOKfyr$6Dv+(~wZfeh34aUxlEyO4b)0yv6zj=Q`^ew99DYBW^z3XAv%_pw!`_8C z=%3Yv^U&X( zB+-j#u_-i8nO+ZBD$JGAJSpk>M9XSv+(Pe{(n)m*{x!_D{G#p}cUCyekTr#O!44$T z(+kPAse&zuz4u;0@8iA(oecgP-~;qwJnZihKNe1f*(6+`p!!md~>>_ve7%paG2vobNhLiM05W($N4M|Mda$|u_<{8^dI zCK=6iVZ;$l$Y#lOVb~%|3$Ich@L+z$R37wYRvyC2k(TCwPn^dQ7hJLvBK;_tv%Ya^W) zx_VjhlrBzsCc^>wN!OC-Ce=%NtQ|Op*0j`KtgmQIA&(Qs;#9klhS5>9sj{??157s1 zxEA}L!fB1dbYR*`1l!5KH= zXCcfu6^8X~KJg6hTSq>3-fTtX=ZP<5E1k4%oI$HnsgEdJ zR*p?hL#Z6pJB_xoKAJ{bsgIC;CT$1Aw)|VP{mHzNvi~F6vT;GQ#d$PZXQ4mbn^G0n z%Rv9*H|v8;_S>yXU5~S~f)2;RBNdf&cO0c9eqj6x`M66)I~J}6AEOVd#qr7V0{=X{ zqLS{yqTe*<(C<8aZ77rQdX8u%FZ+FzEuQm7xcdpDH6Rc23$_Kax9f$vN=06$vUgG0 zi7cIalM=91fOpZFbulhUc})N?gmzxgPPOkd}BuXMPrZu}}1AyyGRpw~z9Y4=~XYykwK}qnVv$GE*6JPt_sdM)eAJ zP)^-Nh5c9PCOmw3gnP2c-?Rh%Qk|INnSUw92-#EeXQMo-hvs_x7Q&vbY=?hVpJiX= z%{UXHdsSJ&LC2(XA%Bd9{TJzU`t@wjnB=Hj&tdYI)~Jvv`z4u0V~%uM3WIH69pQ^I zUge>4;j2XX^yPt5q5}H|fMNdk~o^#&@8h7H(OgRmR z{t^vH-%A|!Mt;t-2+70AIenYrGkNcsipWN&}f!E$PUV@7D^mL^nn+?LH;SBJbN znaF&7Wa}bocRtcdJf#zL2=ZM-85C|L`Vq|1zO%NZFJ6WRt*xjIlu3K(RB!riCYDxb zLcN*;U(dVK6ncYT=D9n0Ukm5%QgF^A8RzbjT?d(6_(7NMojH)F36PHMx3o+rJ9TrBM?(w-#V z)sxX^mpBiwGGCpAa{(`7JxBZ7z)KN}^JH`e4Py_o{CO|d8Bgc4voL+UuAH6ULmJ9+ zH9tV?A&T~mqzXD;b*KvO78TNd@(g^evObgWDSp7ETTkZ{2p`xSt3>+^cyyCUBifIb zr=j9^%7m&&AiSIM{f3P^- zbq?pj55g9DK*~pFnhJ5&26Ww$iaT4NKa$@+D-(4nk@qn2T(8a5BA?D|59@=61>V?P z_+Qg#PjPuH4t|#pi+oW$)mFNvjJ2P5LgE$hSLt1%-L>le3jKQU`aiob!HYb*>Q(HS zfrs9CF{Bqw`BQ9SwgK>;VA}vz%+JCWYA5>gX_JNa2lDYHT~H`POwZ!Lf5y;lZ1GxGiAG}&KF%m+evyYkntqx_m|!i+zs%KL#Z#vcAb2;Z4y{f5eVFoBgN z@C@Onv9LEu`OmvJg`$M`F_$7+zvcsfH71I@l zNtY?6dn8P{*bqD1RkC3VudE!PiKj>&*N!(&1i9fv#cFEfdr6 zzq>wNVUuL#WrsX1$m=P6 z>rf2sZAt!INF&&%pi{`wV80O-dY|k%I2Fc)$BCEW1XyT0a6(=|X3(3sc>Bz(H-vB^c^lF--$uKv6>NWopNXF} z41U&s0zYw2744)wBLP3`2^GrrR}1fEG$T9&nj#*1H@DMz zCvi`P$DT~#)c#Bv?Dn8pL5OD1XJj8xRG{bq}LJ=40Ka3t#FIOm_b4$9A$H4tu@BxF4#nRBcD(KA8T_;YYp}Oc? z_x|gg>mEV6E6;Vy*3;NeqPI|N^j4N=8@9og2YZFE_QE_>E%htHX-rZ&C#?g?7O0># zq;R%`@S*i^C@!_ON+ z>v61^X^lf?Df^6UJ<90I*4(rn#k!f+E^OUOHcAEXfbH-w|HVrs$TyUgdY4iNTNbqeTU zpubJ*JKAHF?C+F@@hQS|r;$#ki|o>X4^|6rSFnBA)7-SNy-9<2e^$uOVgP3Sz5@M+ zd<M^m<@#5kf-M=_u(DHr-;5-cfe<` zav$C~{|ti9PN2jwz&4q%L_d?x$EI+BGtHc}mQmPBkv2tU+u zlT-(6EYt9VJ%{jLPI+OkxdK1LEs*kJ9MOGVA^h;0;Y4E#*P$!?u_^|(44UKa#vKY+`&9uxsH}l( z#Ms;JN`D?Ud(s_&>+AHo1mev-ShhXc#*?;(!d?f{E zng6+aU?Iz0?7eo}*FyCuabM;^;P3~2N5zJ(k?s91v`={Zo$gttG<3Hzed#{s$6)^z z-h1B;8tkYzy@l4b^!_{jz6&(D!}W)%?G>N@&h&5!qqCV0N0JTeZddw!CajM^E7U>l z%-bpaPT#Drj9`61SGnA7L97+Drd`;n;*^0Ra zW#KEtKhO3kN{dU_9a^*oFU{s^c!kNeQ;#(~gN639JV;0O{8!O7Ru1mQCA`D3PD_Rq=HmUXC5z-}gxJZ7N7GfSPG~xI4=d~NC z-omTBSF5V=JsDl*f64?O7Zut6&q@9<#J6}mO0fS!ZgoPwbU}77J2m7N&23w-U$AA- z65Q#zZ@U8f>vUK9-WSC4-XvR|R#|BL&>Y8PjT!q;@;Q>`O`4mKhK)DNzRJzYeYKeL zUfD!@5e@U`oYV`LL*3KfT$1Kn$evB2-MVkiKG@h{^G6?(?LRZjCmXVVBQRxQ@NCv<-^+Ej&aGxkz(D? zLO4IKETOwwsqSSn>ZbS1Sz96dSlb~BKSS8H+P6#e7np`G$pe~)L>n2~dqH_LXXJk+ zWe117l6DbKYO@k;417QMOJ;+oeVQ3*nNNvIur0l*o4WU$?T1kR0LRAb;J9C0GZT)& zzKeJ#J#fT%9cIUq$B}%Ui8Gx~gD%6~*=6*>JONoH%*&F`1m5_uXA|x1MRZ800gX>8la(v$>vxcc@h19#&Qf+_EOlYNejWYv_>B zQ+MFa>22^CQZfB)+Wb?cttrFYS32kL-XCE+Z-KuX{QunLG@f^0Ja5Ck&{pgd--x&zbF=dc z%&~out2|U3hkc2JB3m8sgWR4*L!!$Y@Ef^Fq{~|Hav^x@@qO5rEH7emj_y0zhH!*2 z9^VEYe?;tuN5E%aB>D))=uo%-HLwQhWxjR z`M2VCFWS0wIz4O;Ap8NOq5j6$Efw`)@B_PRBbsPU@%hvBT*fcZy_l~A;%Q%v(FuGw zO_vhOXE=i2^Ua1AsQq~VY$cVeM_<^`7c}27ev!gJdlts-=Knj9p(e{3P>HZr!_tC#~oqGU%On0!ddq5NhW8afvI?zN)hjNU> z7c_UXvPlm7J7uq)S@u-l(^zNx34WkHwqcCrk-VqzMS3;*W0R;eUu*pB7v~s>m)W{i zw)lG91m9(;*#c^O30nRNX#=t^PiPATY3q@x7y#ovzUvRtBdsifOLN090g z&%`hqqwfU$iEss7N$+I7D!|2ta#{Vk5?)HkeX)PgkJIv^Z7eVFp?27S&(-i}ckKWd zJIZAJ{08KZI1l8aUAB862M!VqcYzPmw)gE2$LzgAzc3lmfOk%3hNCZ~KBGA4{sDr^ z2scr0@1ydmow$>WXio8@!;&tZf$?QWyuu9K8tVjFhk4Z8&tC`4ug1rc9?1F`I2%Aa z0anz&9{&Q(v+%8=yN6ck^gl9QZJdw~M~F_3qmAOcZVaGK%xA2h7tH9}OkuoMOL{2u zJl405$odE4XIlRtj`a`9V*P`%L-nG+BsoRr%H?gfldd7^1X6q1T&m_`h;F)?{1>Rr zNW)}KFFLuTh5>4;fW7^)~a= z9XR`Eoe6Da27Tz}cIU(YLBuB| zq2$L%PyW_S2S6U?4*-6_8>T|P04GK(;M+?4hcD|d3a9y!WQ{mqQk_3Wo%*LEUMZ*g z@E!>9o?ef8@-fDZ=o3mq@f0VFKa_)aaWNhk&hSZpW%KS*od4lo)O{@uXBO>6_BmXo z9r@tDkGS0x;1TQXMw!^-GH*jfv`eNo?!um89ePZM3zC8|i+pI4O@fz~Bp%2OTlKL8b20YLQq%TT+ zfN`SJZ)f8r|Ji$pK1QOy`DVn_R4zNqj`J`&l9L!iw635q$oz_OHklOgs5(A}{<USM zmBug0$$Z>9qlf&gcK%+V8^$a7V84ofAsb8f--5qXqAkQXj4nKAKy*PL?<*XrL*Q}@vu)%=r_ zxysGdSH)9zmr4EmPveAn`Cq~b=^0L#4}sGn`Isl40h(ts|6QCQ-~J_>ke=ZLnHZYq zG4F@$d&w9-#X^6Oo~pLI&j|$>o;jGkdLLOz%z7q;95Ka+OskBZ}kV{ z^}p11q-Sl1jFz{N!sNJL1nv|jzefZ6z%}FBFdvEUuJ0$?d;3N=?Ehs1$8O%>ZsWO< zc0RWJH$3-qyn9~GDYv$BB-nns8I>o$=?*D>r zbn^jA$$o^l@s@IWTYY>R=C&$9E=%{em68s%`xbY)ntSI}j=PI~bC2HQru%b{H}(Mi zUbm#=S(+~otSK?0JlbQI@-w`?wo$0}*$wV5BfboI@=!*`qZ)=Am4)zF`CL3L-`)+B z|83o?u_c(3+=XbvBTI8jet@voGh$0_hK!yC8_(S+TRuNe-up4yG)2n{*v>MMHVc0z z;P2_@Q_Js1o^jBS>QgM*=-xnOAp9_KB2BD_ zn?#&Mlb{$Ljc}(FE~AN4jMpNb+SbO$m%9+w#>bUU;`?jRB;y5vCUKEOleqFeF^>n| zP?@tgxI56MPK3F{a(W1cET{aGuUX7DfNuy#dm+n*HE690f9DZLb=TqhE7Z-sB-9T{hx&ukwF7sGKO)B0it&sVr)liPm4Aq^QsT#lzp)BB#?tr1am9Ts z^7*Qb?!SupsT^tx%fE*DllUQ_9G%Me>;rt=V!U;|zz=lC>}z5?mE#fP@AXJ79&p5%PUc%=cq_1zwW!S$FG;>+60cr~v4NfsVg{tfnxE&m$(lFZov z-Yf)<-V9z{U*>uIAEi$yAqT3|*b6n|cMQTUh>t}&D|k2#XQR|5BEP&St$XQhpbWGr z9pxTQ;FigG`Yi4(p>{rmxX?J?xY12xYBRzp?mm2lu^d~z1u)@GvNTnM6_B|%0hanH zBtJ9aN>++#V&4u(j#+x8(oL&Lr6L%Fs&>)gqTb#BOsw^wDymsrp@RG0Nm0pHll4Q@)K zLz;9&a{oh^hluabp$uE@I(PiuZ@36=L6#<#<6*6zw<)-#ZP?cn=n-Fj24O_Q7JP|+ zgmDxLTH%@w)OU>X06vNDH#A(yGs=|yM|{D%B)qAF}V>%1``4+;_t`~KQv=_e4eJ|SR+@6oI6<_`(#8KY2#k|xO%5y-< zgLg?N52d}2rL~m*o_*uWf6KnH<*%?WS9vdDNYcJ;;2NvsR(& z&s1=C`JcK6W9x2=vAZzVcAzh}!%lQ3^Z+&6&x}Iene*t)yr6GbM1G0|Khd1>eWVp+ z0`VcnIert(pT$?AhvGis1#9^eV%&G}6~>;md=Frv!EStMjX-=bb8g#!dk9LwC(4JH ztRjCo2Dj%=!QJ_*D2#t}3Hz$ntKE`co#$~LZB(JHYP4Acc_R4PIeAt2B+r+-&;|j2 zb@^5iFDgsdy&E=3ZYj-UFDbZpOJOUp;eCXR_cyw+i1~RZ{QUMKPO+2PW+`8SFlsNg zAr@_5Wk3$6D-!yDtPymmq({H8Y8CRcd=JyO6Xu0k$V)U^if?G%fK0%hR7;&Z6lJal zxH3U^i!Y%)KGzQMcSZtaMPfPOL;0y38rN-*2UfrghxXm8sxdBDosSB2VjaZNC*T{B zQM;)fapekx5ngJ1QI=bn3ld7c10Nz9KSB15E%&o8#yq~{i#5LO7SMPjXuSdaR2aG= zyc_hTx;f~BgpX33n-tLRm`-;%zeE+cZ+j=&)s6m;(lUIdG%E{AodgBZ06zP`)oD&%@GdM#ICryPPkii+rEPN*46V5u& zP{(siC3zUj=%_3|gtp6h|F1*~^urN+rL+o0S8Ms75Jq(U3;Ry#-lV&gqg|3NPQQtF zxeTrZej&9LhVu29)cf}!B5EG|CGUBm%-nb!QYj^-K42LDI~|Bnp* znGF748T_&g{+$edO$Pr_2A9j=Kg;01%HY4t;16W*Co=em3_d1hh*@m44#z19vK{v!OHbh{i~6|1{oYBgJWcHoD5Eq!D%u$O9to2 z-~t&uUj{E0;CC=a7G)_)Ms7V+#>PmFfb$(3m*B?Ql*2!QCjn=O@EG7#B20HZ;C>mF zW)Sc zQ-sd~eoTZ<0e(h=PXK;FgpUEnT+hm6?=gxn&Kbu;2VvnK1HLH29{?T`;r9VsF+mYN z?*d*S!sHWmuL#rr>6b+KPk^Dfv-G8a_lYp=_x+CuzXtd>BK&*6Wg`3=z?CBWYrw}v z_sY`@k1Ux3fKLM=dg?fJk81@B*!w&&xituxQ7mDz+fH#Zq_W?gB!el4< zmIxOC{)GsC3-I4X`0IchMfgd;klU=TF9X(NvL#yW2An0rj{#mK!jAyHUxXh5{8bU& z3HX0R_%+u1hly_s6W%zoG zgo!tWiH{8vpK$H?b$QwOcWmEw>-P1x-LU0z>%aA--A~^ApS!=gb@w+jG7!FHW8qyh z!sjhAgcdU+YZYq8qEF8G7GKcLHVq~A^f)Y*?wXWU>fyG!4c5TAmAa9!9_NTr(~vkA z*B*O*#YMx&g8ICH)BNzL!?tXoc7F0l8T^n}-)?eF2JH*KxFE5v%^%%+Vpe{4tU5BP zPp!1a%y*cFTD-306Pr!S;BekwGdZP2wQR&O(&Zmpq;q#Bk7dMWRGFgk=jJ8EYE=u5 z{>|(;x89M_Q90@N7y|Cj>cS4K_a4tAr*6M7tI?le2&Ba))J5EKF?v`NX&Td|Ib7=a zmf!itBG0wo5|N&mU`ujmj_A}Aqpm}dhJcgvf27XVa_zxkr_Cg`jnjvdjnOUM>O^O-Q;}C_A2DTGv{84*O-_!xgG=vAH4Ze@I?T4N1f_zDe1U8>|IJz4eH3zp}c?C})zMs_sEQQE#OnZMh@0}I5%n*F@vraF6VcBU_+^v^`nci;q zEVI4A!wYc-W!Oy>s?QvlsMxeif{$#_c`asM)yZHj|H`gw$uSwjRes)<} zM_Y4_$1$?J`y8Ls+15AevyWvo=ym7EvPKr=Wu&LX$7d{9{gLjbxrw8;LnE^admH;z zt$_mdr+LPtOZKX5?ePPKwq?D|h8{0`@zj$|3Y+!hu%ffq(Vekj-bm9Bw%Pu6tA`)B z_2bmbh7OC$WL9&d7G+A(YF?R;yW-6Gq2bKSQ9*_7-pid_cceRhY78v>)6sd+LG7xZnogrG+VV@+@?^uXW;{5l;^HUMBaMcL!|{ICplNAB zy~&WL)^lU-ewWAHzuNR!%u!=a)KKD>P1RuPTAuWATJpfD*zpw+F(bL7o}QJZCn6G) znlxLvmcK0TP`DS_N3Dh<$Bx&uMEkP-nw~hJT|8OvX;ias)rwWi3N8hs^JYgUPG}VA z0Z-6LNYr{@F<<+?l~H!|>rz zu6cN;-}%Yhetta1Gd6CCoO5wgW+ezwU@@oo-w3le0tWJa5N&g~!^q zbEu;~!#WhFQ`eomBW}{|vLC*ASRjpqO6Ik zx{HQr$C9+@(-|#+mZ%t$LgDu-6hj)*!U*pr?W~2`fk|zIa(Qm!?B%KnSM8*FvSt2w zYE$m4iG-ErsMtiVw`+ylo6PHbTpHVCM|(?*D$bf0>}+!NKiFyX8#l+tX;l}T6V@@K z{;$CWUmtH8^iK3yB097=^ZH%R73Wv>Yt8eImwA%Y)3w#(^R3?TSv=oA#}eVzk8;k| z*R@If#JU~rwTVi-TB!`i4ja7Pu2|imsei0ptu9E=XAPuO#Tgsc4Fo%!0|~vh&bXr* zZ@#lEDl7W<(v8vnmv1ofnj7D1OVS?iZnO1wj@(q6p4RQqM(0M14s=$1{BB$2#~W^& zpQRot|aO1MPJ~y_Y|FdtP#IK_u6C`S_W4-ftXKXGcxiO)j;q{)oN1Z)B*p;%{@TnToeR z_~3B$sfO0}#=${HMrJ_kaMigE^C##(`M}PnO=LVb?-cL{Uty`$Qe4O+5 z)c8I1@4j;`;?5NYz3t-r$3HZwyFQCajpck3nz4B8@a3kaj*mXoBsfQT>sa^kvv1q# zydz%4yu=7M@9>N`T$-^EKH?7DtSp&nhosEs>8ZI@zS5bPd!>V)~Km5Bl-%V81zC9k} z=Cd?8>G7&yY?R~TUthOH`Inox?yd{fZ~fs7f7Z(US#hy0_vK4R&hinHXUYzI^588w z`VT6PTxz&D;Xd=uu`}%%=^kINcDV6_W8D|u>RLT3HeK0W`Swe{d#|;vJ&+mgnUm?| z`X;+u&Q1)}z5bgYHmu4w44!HH$I%al23+kfhhns+H`AJ7RtygI9Q(`VzIkcJ3BKoC z*~f1kUc#@{JG%>ojX3Yxy#cz?9Gce7;496X;dAZH)XU1<3<&}zVpiEs*dCT7*F=M>zr!C zXvWPJy|T9{-VxK-u6FiEb8$DNMURix-e%3@vr-2aD~OB{pg9|_NK07!QsyotBkJRj;3|$Q|F`O z)1#w$6EXuAs)scF7ggitrr61>Xl3*Y>qNU}exk|Q>pGHRj&18qN=qD6jtnQARxU2E zd=j4;;4Onq8PS@wmPn&FFWqoSb z(Alo`0p;jG&Fy)S_6e&eMzKJhlbta?P8Vq!jag#J%Qf}{hZiV6bENm>SREtk)@9L+ z_Za=QMUlRVp_JJ1?w;)4%l?6?G{cGUzEdYhEp6lTqFv{l#x~tZ%h-~boIu-fTwti{ zgVo7hgOdYJr>o!U$_~u)J0rL>ZNr@8#@Ex5EGK+xqlP2(kxH#fvu0CpI5pTetm|r8 zJ2#(KM(I6UUG8zmc%9LDfK83L}$>T^H;-ZK1>Ue!1!26*) zSv@2D@yZ*cO(V`IeNgMfMU`C8WA0jhKBx$KJW69yXJCGRR)jsnZkpt8whSa_jegD_ zJX5P2@~eU6 z_Oc=ALO`!lc)*vgpnqiEC7M%0dNcfrPAq6l9@P33rsUYc7`0pBReE%NoZqhtYF!FH zJh#u?a4OXu;3qXbH?%7}{Lao?-mKOHgTdrTgT>tvVeskS)$6(f6H45Z{#H(dYQz)p zssmcHIXN*dLgnXDnsaRq-WlyRq<0z9`}GqO0e5dyU%G14G9Kksxm8|07bvJ1QRp~* z{BbU2LeswDJnvO011h&)6VUo2)Vk%9I=9Q#+db;lsprP4of8vd&T&_#t54(L$Aeyf zRxowM?2Aw;Q~{qdX!M^-NprR(&KZBSDGx>K3~G&+pTS1GVal8hV>HzO9y$6 z$K{Q$o2}?KjOw&%ha*0>r&X(L>*#l>BFxcII1j-7-MjvtjgNihn;Gzn<-l_s_B4ao zzYLCwUkQHsK8|}V2MN~w0hQ*Nfmd#S<@RR=RGNCP!r0jT=u__{ zLCpy+2xj@-OM3LF#%_hN-aD#~Y*S9APr6(hU(j$kUK1Os(e;_Kv;}9o)JZBwepY@) zW~JIuMm0w{6UKeBy`~nmA=7bkBqA{au4sJF=QAp+ zmnRQIdTQ%hC%oE-D0FwMhF7_~myEj6#DFr=*q7_ntIs>N&Iotb@XK1|rI>7Ii_sh4 zC1+Bw~5_F?b*-pJtDL5DtTaiY=V92sb9ZR<9;A{;A6+cJ5l zV!hKj8SvQkX1*)3O%<3_jeIWRlqNFMqZ)Pk6^@Y8zzfOe@BX;py<(m!Pq@IrkLQOyq-y)!&PVXD!N>8&P=<{H=e6< z^GEN{4J$nnUWGn7IXx{oe$9d;gV!}arXEUk_#6`vfxt+>lMrF_=@rhX^Q$6aFDDrf zXG~5O_?#md30lL_iQ}o9j`Ns@tLwF~F%ce<8oIT@kQ!l%48&{oexEnyaO8?!y)z-I zH+rJJW42;2&f6Xt;Iux|#}PL-C%9r9b_;jjt>VWbv(=HAhGaN$P0acGtZ}8<>x$J@T!4a=xh)ar@?R5mq>TYZ6 z+=y**g`+NZG%n7yu9y%W|RO_oa=>sR->V!TeD!WkQzyU?arABsy= z@fRmDJbFv_WX))T!QJc*`n+D#vc#TF-}t;^Ety_rF!@}%BhIVRYJ2_0KGV3)ubr3| z_5R?>+Ju3W@j$TI-)iw_l@4|Ld0lp7EazM}cF{kk^ltj7Td4@R)w43|$9>*-OPVDo zD=%aIoEzq-hkENV*FIq5r;?#R@`c^G0D9D^R{gEe<)47r| z?4NP7R(|f`-A_Io>}sgLc=AI1P_}7cu*g;?Uo+QLbF#L>5*r-hOyfh&p60D?PQ*yEvW@c)oW#tnOX!ML0xlX7wLp&MxDv*!b)w~!V!Kw#(rB<+u6xsO^(_*T&r8kYv$$Ux;-s_ zPuD3%=4_Z4Y*%SG&+tg&NQYA2FcO?Ixsc~a+Wj|em=noQ>SC)SA_7Bkj{0VWHlI_> z_Z;z!2PWPc3p|iH$*Cqrwq?wY(l6=ns&3(|`W|D-rIYr6BRx&m@JT~+dRKjIc3xaU z=EC@vsJskwvOh6ttZLY(O25(5Q+GJh)U!N&!tR`CsqAmLykc=`U-y~DRhb2=7A6_F zv+YT~QT6S!&D_~>ds38Ad2x8$;PUApL1V`~W4&3?d5g5V$k^DyzJN=)sdWWC899hvXse2YEqsGKTHPWP$fFOr$_zuZJ?aX7wo&$AC)xJmr&Ph)5KdQb9=hi z&r`a4Tyf*3XwzkHX1|Mz&&<+TXKCDhx~9?e9HYU7eCf{q*u)X<@MUXs*Ft4LKbTsdHZ&A7ay)uq+|lI7Y_Rr? zWg8l$>&qh<#z&4c#N5ryA1nZE8&k1N%xvNUA6 zn^!Jhn3w9aUHatWQA=QU{$$h9!!dogZO%(nSq47|7}eIOq~3C0j3TMYFgutq{*Q@R zPu9ptfu-y8vJ92sChK@hvg+KqGiTG?{g--u7yDK#lOvp-5m(!>kxp-Zd`D~T*kt3< zrHWyvA*t7sIk0R+Vw?9;y!B>vSFC<(s{2wyG;g|_S4ayC~izN za2-B}*|IuM<;~Re9s9r=@40bq=SWTG(!s?krtI`tT))Pe99N+Iq#i4q`JC^@S@YbT zp0)<1#+ey=x+TVA(HPZ(oq>Xh^Zh4Q%~p70GH=*kt8XMFtUo~sE$EWGfEAYjpFEg}!mOh-#MSBK5eLpTS)vW7m_%J5g;WaKW zIcwXJ4rh6D+zVor@Bh|+KK7PV(H{4o)2$1ZBh-R{Y{EF(PNhfhoa+q zRxA3K>FUmmcB!n1UG?hvI@OX^mrG$j8j)CM&YEMHr)^4btPEsNE>zV7)ZUY7f9qsg z;DW7D?<`Phs^^aA>w97b3@LT}zR01B4*%@vxRk~9eCJ{9lEDdccm3gnad$UAdtp%N zY;2jYNcLF9k_=g~iFp`AX?h!HzqKmvh8CalY-?hg%QJGDGRJk<)3NgQ^vr?ChS)fj z)ur+n-m260UW|5+w=^`hTGC9d1-*$M&2>!p;ulA$8ZO3m+^8SWnk=oeQ%#q(Io)x& zQFD#ifq0*0eph6-Jwg@h)z2QnoAi3mfGRlb^_lU0Z$P0`j_Z1JqxGf}6MCcC5ICxf z^cY8yYsQTVlUwia)Q=_(X3dJooAld8oBA&Ynt4xQie}h9KH?a5|D$|Egu25dc>-*$Va$|};r$4GGowJ@<`dMXnW>au5anRcpr&)ht zOY6B-ef_G@8-`WqGum@nXW3Kgb1$Zj&u@ver;J2*XN~^ZF{eGTEwx|m&8hkHbY^V? zzo2Wl(>NJbpA&rM;4?q@{?YGk`|ir`{Nx)CKKb`2-g@-zht?Ph4ciT0HoR!~#NagC zVEm!6#ke-2JR&{vcagbKl~H#`d!kEC51BJ#`eQz}{3`Z))?INs^QS@3GIXy#I{{Vs;jN zq4A3=9{%ZnbUd=~(W1vbeB8Nf-V+b*`N5a}_?1up^TLyDU+w-{``0gi4(1m{`XbS-15vb&%E_a?KAz)c%KRW z|MK7YXKsJytKYxj>9?LbvG-@+(SB>r*SRP6?>YAPN00pH7hCU-xyN|tnXO;ErD`3w zI%!$b0&V_aR%=Qy?q}w8k;ElkAA2(|dD>!*PoB&kNv*f; zRN9c+XdRk87<)0tU_Q6})UmP53&Dwu@rjnWD6V#X)8!U*@7#_#8sDdj+UL~Gv8P?k zznC;Sw^cEgJQmY5yY~I_So!C%P@Y zDXTTQHrg5FS9ALeO9--+1zr=@%2p;=dAVS;M`V?C)3FdWc6=sUDcV{o_!)BxTrO` zFZ)bujrq*-C0_`7FJ$}T>gP3l(woq#=!v!2dm|>S=jZmGA2eUwJ+fWhugD)Uwx*5! z*0-uD(=oSq_NU966WY^1t8PrH^QmUHMs_4DTKd}8y&aBtMNa)ndqi{Ua9+)lrn&~> z*(~mcA-6AU#N3^orarP>weX|QT{KSQ3|Soc_9G4PmkfdY{;{z{XJk!*{fI5$!j1hm z4EaxG^u;x2y|>DA{~&Le*BRfK;XQIX=XBoCvP+S+jFzZ@wCeYIX7^-7ukJB-rn*y3 zEgSDpr+LqLv!QO}Sxu&`z31Bu7h@*zHb8J`P}?!fa?ZD~E3q@9k86)>GygyK-a9Ia zC(0kKo?)0wMsm(7qM#@W5=5eif`}vmiGrYHkT5gkD1sRfBM2f!R4{;G4wz9yQ4kPO z5G3b$x8eKU-|oJB=biWGJ7=rUXR4;U!mV4?)!p~rsvcFo_pw3w1;4=R@4wo3C#WsT z|1ohu0K^%r|BQlTxT`VzDcVb#n&2BHbP4pLHc4U1$VWNpt~SMmiv0^lnH@sIKj4v( zG&QArr%A6{oQFqpe7Ij%_8mt1EA)|WdRJxO=YZ-j-VRxlE)scwNf@4(=~d?Gq!Q(q zN~#eN`S%d%;)G?d;@A|%rA>{(yC!U4K1k=za_J%-mwpY8J)(+#mu!_9X8u|Akbgq# zFP9fYSG`&z0tD5bzVBn|BP5}Y>~ zm%KS|2fatPMdp{9WBYI~adwsZaiR@h<_yfX%$dwM!l z+oiB^LYLSN<*y|1pOa+b!;KA#2QXeFNYO<3ynM6r*Pg7MArA2j`2PLErRMU&>`w(D z-ymr?=6Ton*n%Mg`!gc_1jGX(OlS}G%+(tn&#JHv`Y+77IZf}`NJp8AdFbmYV=MB^a_lFyspoc@o@0dvhD$~E@60~ zb?D%o7!{Zp#wH0ovqrRTjoEg76s)~oNm_W6(Ddrb-vJtt!5zmWhq>gDE)5B6zOfIaxs(YKflQ!HG9E0Ze`%9L zgjoVMLmn0UP2-&vo?X*&UX}9k`@3&sercHr@n$laG)ool`2)j|AiZqlEp5@z7FFRlba?4dxg1#A*!w-wR2>wKltI|ABZ^o#`0^E>NkO@x6_le-NGHx zLnJ<_<|ZEbq1o2yJs+sUDxHFSeM+Cih=bh6Q`^UgpGdN!Z3~A6Pt?nfVG|6Jh~U_l z?-E*Le;L1ajKAdX5*-*JFh*%J3d$!@zuXv=*vlNDOw&fG*q&Qmq~CvB;*pUj2{WcK@+fJRhQy|%k1nAL5M{9OL5%!zTZ1H} ze^49A56^T7jZaaCy(22aRD~slAQtE4N`Lq(K;q6mbx<9frq7OnZhQ2allaWh$3NP8 zC&&0idY1fc2N~Eb@2s3=m00)u93e0#`-CBZ@PTUt8|2^)mxum$_ivn-t zFyD8(FyFmhm?R~YaQ31L(P1WvN7ZhSXSyo|hv|BP6I+zWNa3bw^BVl?fmu)own zCDIZR{oXChR!M4FtmCq#_6i5tI3=tT)7m0S5$d86VMPE!_~Z+=MCcyC<6ovh_+Q6{ zkI~}M@U1R{hv(L^Ywpww!rgE!UX;fkO6>o3tU+DFeiNXgo3m|e*FUa zZ#~rh48pkcgbYr@TrLBI*!BJ3kIbhp<3mVE2BF;`&u&#g=plTF7I*1wTy9GPm&*%_ zSgu{;a;IO;r(dU!kZTx1fASGpkd06WzPJb6!b4o{;T2r&1-QG^@o~A!{pZuyUqfiS z9fr1*VW@i_hB_wZ(_<~O+|rMrsIi{m?uwY<4*G!(2%KpLh8E`$(Qh^nsyE|7K{w~8 zPy6%J-0hhY++ByqxW}%HaqYt==hB<>kkL~^LG2QbV!}H_i;N{`v;_-Mrczt-ic>OpXxWnnf>BH&7>BZ^B)p|I*!*_cLg>Hs2z@u1 zKf~+C2Mv z<>K*pJ$QY1y?FgN9k|2k!s)~5#OcN9#^dpJ;O)WNg|`oH=YMuays!WVhJyzc4E+94 z(Cr6)$wRT1fqzD;z}JQUD`4@P&ipkw0R80wAG3LlFKh#62X*bXpRaG>7|cmp^9;YU zY?gcZ={&#A8xqlx&Uso{DU)2+eG_x^wKh^vis5|4&MJdk_Lu&-_$9gvP^6#aT=|R7 zH*;B+8t3ATYW+~Dz?(VV;XeK!cldcc9UjK>;rVfgmxq^&hw*yw`f!KWkJEvNak_B& zaEH^2(~XDmcHr&79o{~?o%8?x&+k7&>;FU;^%~wVbTRz8cJ10YgF^knHSw$0>kX~U z)Lj~}--lv%bTxh#x!30ZaJ+I)0c11!uVBbaEKydV^3CvK<7jkhVq#)yO0G-1ZJIVB zIwLGLwg6Tajt)(XECeexNHBo??x&6OQF!RHq*>51D1eFsv{}4Ulqvf3q~wd5{Y9mUQc1N_k^~wPw$fr;A~Kn1a6v2Y#5C_DZ4%ye(dY_k8t+duDtvpKZ<*kfLI-gg5ynZAgy<*3Z^XuUr!c}4Hp;{0@^I0N z?2Egy3+P;U_9Mg1a&&rph=gHW5_4>3v|+*0=}7`S7hyaYlh{ieW6n-fdlz#>+U^P? zX*z{4!r%8?j-W{6oqj~2G5IhCTvKe7@x^13GeQJjIy}si;CUJ&Fo^J2EqQVvUe|KZT!;DT<87_lB5*sD*{1u%h5_tv3 zrpJ3FNucuY6Z$)>H90#m#_gY-9h4m;OiXi!>D>Y|!}JMqKPKEMH!(^cB{E0@yy6-i z&k#oDk|vq7>2bgYU9(-2a)e=CooTnxhrG-9Mh3@zcqu)NcpBlQH1=a;a2el2Ubj)5>0w?l)|u>@ zy+e#cwli%|LO-`=Ru#QRAGrx!C1j1dxu0MgQlYte2}lhsM%qXZEkO+gO-ww6-+gXtmzL%xZ(V zKJF}7#vBv2G24g@5*#>OH@e!oZgjQ{*9cP&RZo^omdq18#kfqnLKnZbG*dTCH+eo>0E9=dYRDvnOF`eB7^nH@?t3m3+C znCx1#TRmcNtbDX`lmbg3RWVESfY?!yVu=FDQqfBIPFXeWFf)sP!BxXhE4wZBu6BNF zJuE!d`B(;8gshBQ9=|+tdBn=JWf^M6<@01b6>QWI3PZloxkmRRXpXL01rlHpjH0>{ z4Nm<2OHG?Z{A$Y$Os#CUY;$$@^4+;>cW6Y^-nax#Qc7Az*1p`l1BZ?rD?DC&^7NUK zb7ki%DlcBXa;@sd&6-=c@7CU{Z+P(V@sp>|Uo^gY{pQ{KrjN~^K7VNiJF$+=AKgEH z{qFtK|95a`WORIDavHw{N-tWz#@Nhi<7Nj(XE*m9-o85ngLa36g-1s3jg4oq6O&R> z(=#%&b8`3R9XNRC$kAg3MaPRzK;36cO3#&*S6ryPcCnEBBQZv)mjrXE1OOBTerEmxqEu~`0Whb6}$&0Fe(NpOki;mlaf=@=4jjpMCJpP zhyNw>#K}|t5_-PkA5!ONog)^f_AX8>PA*O_5d1I2ILScsKSbkH1KI!3jT4Sj4x|I^ zeK_qn@i_H3`E&GhQJS-cror$TUjG>+KPxvX_e-u>u0gI$E?sVi+-f_!sbd^Ic?)GmIF?^d~eL&5D{yc|<0V*YZY_uJZgMDiWOu`PegHq%Jpj zwshv}^n&S)Q|Xfp6SL#1$0NsXjE;`18i^aeH$)k-8!Y^4KdpW~=r-+s^kc)14_)3}qn-OY)jJ<`1at^>)PCRdUHSXh_TqMr zcJ=nrwnuHnZP9Jp+SazIw=HO+wGrA-8(BSLt{-6tXyxuV-IWJ z@rv8ezx48pD(V<)bPY&IKYFgFv3-Chs;q5j>mHntbG-6yV{4zFh>FgdjZT5FsfW*2 zH@1PPlDy8k%^rI=`-&^?zWCBh5mnJKw%rkukXcxE?cSRf2EXD;!;Ox+B9jiDt9kyp zS3p=^d6lipuE_L)id!$f^wFgkt+sO78J%{xr0T)D?|*p(6qe{)y9UN)6qVOJ{?JYr zmR+m|31ZTYmfw2T@{1uXvqaB)n|E~b!IB$~n|lPsl$NZraSez~1$tk6?c)>FTw!SK z6d0C#q~gxY)&Z)3jQT3`ZGKT11r>K2zxD|TD=*dC;J7m~`S7`#XDz)9K^a~1&D;GG z(hr@z@wBy%Us`Let!Ef#Utw8Q!|QKE5ev{erT~*4nxTMkVK+ zyjc6<%WpnmWle((F1unf3obzUe;7h?n)(}D0%J1^DsI1M?PUteEm~n_?-!bM2-^Rp zPjG?K!qpqyg5$Fa&)<33HbCK5)Lv)r6_%6_{qd%)pDCbWV!73QH#_6-nVT=${|ZW| zEH|`v^^Hp2fAUh@`)*;mWybd25h({wUA+CIsbf$`Zn^0;zlem)Luanw^a;pl8EkM4 zh=K%{p}YZpQ6+5y%dMWlQJkDhk6QXH`GV;G({X@)0ODoo`x#6|5q$uThPeZeZ=e^^ zE#RCiy_B|z{~~`0J&lpZh=eqj)#xok|a*XGY;0l3kT0N}@YQ@Vfp+Emm<&@Ht z`JMwcIDLBbQQ82|+YMuu) zJ%sj2SXYEBv_Y_lx|!Y$?eJu;bROEe+bi)v6=3`jAdriL}($< z2K;P2jVaK`_ZfJK*Ns!q183%eQ!oncuNCg5e_~!>;QVJpOE%N1APt_sho({ z+@J3syi|OY%%8KMf1#0uz6p9VLYR0jZ3ZoxHt>-(ci?=;rmYaD1P)p9mD0XID=g;5 zHeLdrrUzo81imxt=W3g$94~*qmU)VFMf8N5DE`bwz9URwrYwxPBg~D!!y@WU7{5XE zSf&r3HY1)P!^B4yP6d8N;ia%>z0^c%3Dk)9HBOBzw0Ynk9&Us&gI{rM7*8zV^cU!T zf95Bq%v?|5yq)LYb4aln(&5+SbI3b?rQ*Dvr*soPiyt3}GR*yOO?(FGqWMCYrL+`E z5mkhyMQeZYwEE_y;(}voQDGs$L0&uDZB3VJFV$QmFDE5LBO>n9?;r1uD;Ai_&@Fg$rFec=Gbq%8O^OTzqij(Y+g{YfbbmA{?9}(~s;sxvvmz zaJa*~eSJ+$l@&eC1{T*;)nxe^nJ6nNB24~uR!-f~nnHh%3jb1HU*F`pcVhtov?*v~ zU`>{v&+GR&S(V3P{csr|IBe;>FK?O_8x`fZeut@FbY!Hj`Hs}|XBqf>cmD71|8n5}9~{8v zr~k$O^5FlkV*r;}lK{9j2gLU<_ag-R$%8}<^nn0jfG7apm`(y91pxI40s%Bq04M=e z0BQgY0Iqq^1ZV-40YKc3K031LPAO(;H$N*#k zasau2Jir0KA;1y9F+d^UIN$`}6yOY?1aJ;e4yXWB0xkir0ImV918xFp0Ji~m0d;_S zzl-GCmzZ$KZQAMh721Q-E~ z0VV)bfEfT604ul<5dhB>hzy_t=l~`F-w#j_APj&#S`q#+011E;Kn5TOPyi?aQ~+uK z4ZtFRCIDC8ECaxPvuFiiB|r~=?1DMbT34jK`0N?-!0ptO2p5uJN+l1E}1SkQt13`w)-*LbQ zU^D2et^hHHv-m^q0a!up#FIXu%SYq0Cs{+9n zz&SE7PGw=t$^qmdtN?L}a83!*z{Bue709CsdDWl{V91JvQ05{idok3Z33V-jI^kj2 za~aT}4YcS0O)G#l(91nt3AE|~&8va-HP8lN<{{9V&lp16jG>Jt&{k7u^Ll8zIq<*& zcwq%Ru?F7Q0FO2TuQmbC?0|Rnz(eSWk*&bfZNOV+;IRwv+6{Q_4!rk-KG*?$;SGJ_ z3w`4ceG~wF6$pJ61bw#~`VczNAq@I70{S)z`ZxyqIu^!hJd9ZufCJ$qh)aQUX^u3cPp@Jb4Mcc?~>z2fS(mo;3sSJ_8S1 zftPK-(+=Qm7x4He@cK9KybpLkFhBP}6Xvej7!3Zy7&Ior9K-|dfpNwq!+#i0-7tl8y02jLyf zOad9tzy<&}B+*2e6k;uxMx1eJM7}43B(h{tos%5G7R#eSy8V};7|t?eSgehV z>vW+0u?*y!8OY{3b+s9F^B`3A}kKKQG>Y1KiT?W+(KK3t|@WP-4B=BVDo29@uzhccaz z@ktN3j{OjI^KMjb5`~OUun;F89ch&1A*yR3!ZJ$`rh6Gty>BB8@yCd>^&K)+YJ<(p z`w%r|3f0qSn6bVDMitV)%J=JG^>?f=tk4zHSh^ddauP94{$Y%>vjV=RR*z}KeZ;Va zKUjS`FQL3mjzE2&M=;LYLa4XdL!ffA3FYv$4dbm(2^?|{LE{0HNX=hF#G*D5v6xUI zwfG28qxUY6v$Kn6EX~JLPFux8UE{@5e=V2CIQA|N^=L0oxqu9*{`W=_wltBX(RqVJ z;q)#_77y^K}kxzsV9Z%R!%858KM}^ ztfg`eW>Yl;zEG*rnl$V^n}#j^K%=H>(lrKB>6~5P>Bb}@MtQ>t2DK7n*1zy!8ZUgo zq`q9vSAOpVAIKE>vFmaC8c+W4Q*FEiI2&37IIrvlso!1+Y9wzI!k)Yms=sD0T)wGA zm|Er~Vtl_}q`o3Slo}|opqy5+!1$oP7)S7z-~%TFFssF(0m#1<}9()dD9rmp#<%-MWR ztT%Y!<;Dy^Q4O-+%NXQb0EykdhmeZ^#enPt`U%2JrOC$kWdAzx@skW%;Opz zJ)Px4I-phVdL@Rma%Ir6?aFA%V==0%U4f3AGD1!(Z4mK_3tF*m7cx|3A>+dbk@dR^ zC|=%b?_9L7ls+fSRy70L>~j|@xJwh8E=CdE zwLTL)1I>AU58mOCan&c8uX{wITD$OuNl){t_?44)w|h}SEEZGOco1oQLp`*QO>OjJ z-+nUI4HEbwMz#1^U-k%aiXI7O>1qq#y;>#Wr(nB4qmUpjZ2Vf{p?-~2?!8)>Jo0zB z&ko9pIpe9yW9#W^HOH@NboeJM7M0wibwV>k`;^A>6^n{j>ba@B)=%>~Y-CB!Hof-r zs)bK5!{*Zcg3VV>yKjx{cXiP`cF;qtfa3dU>{ejX{mPK*5*<->if#!qN^sw`f%`7p zV`o$`@*3jfa_Uv4->U_3L}O4(x~sII*Q0&g`6yGkjA7RQh_f&7(A{* zn^k|IE5eJh*0*t3%HUV*shtC%W>E)0R3w{dL)pSpA7V%{USiMNc;q1YP&SpS7gbHO zbSz_#p0)A02?q!+Q?n6ybM=7OT~!OIl6w(y<%iUjKNSUOjMUg^1wHw(;#8@gfv2(S z`pOd?8?XOy+9t8j)oZ78!tSo5ra10hn7_d8EH{vd{uc8hLnQ{PHxNa+Haq2GwutNXGbhP@V!62`&~!#(z|hv8_4E zTgOI%W331?3&XH{XM!MBP0U+yhh&_4j$+LFk|B7tP$-YTKoXOTRKYfom**8bnhPGk z;9*>v$5Gn606m0ziC9e_ItBu^z>Jd^^T8}Z4%GWCgbAA*xjhT4; z*z4UcGEp)amriOvt=t!jGJZ&4dWW|Y3>Gx=T=$BiwyQr9R3I*wkFZEw74PWiQRi}r zz-d!f zYV72fSZw4Rwy*5LS7GtBcHYr>Wwjp`$Z6a9MISl;yhBt*(>NgRaK(c**=5$AG5bnx zz3CE`SZ?MPo?CkFv!vo$YtP8Ma}A#)6jqtJgyfby_y$T#3(ttWiU(gsWVF{gN9-?q z*t$S&sfl|;KGY$upkouBT3q#{O;p;MEy5PVv|jwJ5&Ev zYN?H1O7XP^AAibdS$V}Bx%}u$pTa_e4Q?@o7hko@tZ>|uUU2@->ke_*tm)?5b zrLxp$i+^O%m8U;8gC#nC^i%pNH0m@(3_=!k5t=jA5MsYm=8t^JO;{$VJeQI-7c!)3 zQ};7o(&l5oQz|JZC{2`nknf*|oX-CohEzYua|CoZws3yFEWDm3%3H>I242hKxt#fs z(}aQqNc@!)ebE2lxo`?3DFL9PGNe{gCO~U}*B=GxY0Q(LOUQ@%ihv43>IupUiZ(Tz zDmGVhIE2EfMG(Hvr^%N{{RSbt=4qe+QEo7fF^+-GBNtLnL)>?YEv1gp$*8A|(sF^W zCdy-oSwYbQt&b%Qr(c_z4{?uyzGI+Ku>=j&cS;KUuY|)5==%e@9lw7#)j!vc^^7Ns zA}SL&`T**_36!T$t})*-XjEJWIL{wtsx8Hx`HJ}!bT8ACVshm_+}XfXWvWqFG(9@r zqVJURppm@Hcam95_6AMYw>hp90iEyZPoQ300~P@E_ET;FMY}sPQ`LjWj>Ialp0!Q$c zDg!lI5c`#W0nFkp=;xu#Y3NC9>IO(NPs0N$u2a&7x(%tWd>p=8lqKX8N3kJ2Kqc z)Bfps?d40S4yDJ3`nqg3*I&L!Nm@i$h(RZzYnj;xj~qI70xnj7lnW^bz&;}_QJD6@!4$nE7bw2rab#q4YL|ILizpuBc>D88+ zn)AcWw{M>xzJ2?1re9%oO-A_5!lUWQpQ@|RpZ!!(m^EBpU330y^S74F54m?*%7$~& z3(uEje)*hr_VcsmjIvv!HCf>`pKCI`y;Hq?6-`aOP0OCQwv?SKNcT58J6e&El~LI8 zISaHifB62<&a^1a2PR*ynb*#YHo!s@X!UgOO*_h5;CGd?ARZWRtMHWNfxv8UrMn7< zQgB5JZyv61;r6=md&~tI>?L52KX9il6-`cq|2DyLkzOSPp2nLmU7ZMl(qK!ywf^v_ zg{fHMm8RYm+)2>D!1gY42hTr#BZiC++NFq)3A`H$!E=rcJeR|3=bYT<82FX|5EUSJ zeVmi);pq>!fs9}eq=9$otMOn%5AV^{2?a3)F}}Xl2|8i89>=16ugFF79zzY++=dbL zVMCoc_s$TSi0gMi&J8=AARdqx@VB_MII#m6n+R-v^Z$+G~d-8Qg+ONEsG`5-{P z|8wB2nJ)t_`Twjm0*zMiRXc^A%;NFBz#~<4WYJ*d0!o#%kDtG{p;UZju5^V4{nQ% z+iU+D|F1v3aQ=K7ywCkl=l{Rv$IJP*KHSIGV&J~~#(96h;h*~UEat~KGTV1A*-Q-N z1=HUP4M6TNIr8hdx%NU;B?UPdX(>qw@qb4Ij0XnX8~=lqh@S$o0Z^+lVQV8Qd=`uf z8}E=P7y%lIfe|fq^}j$w2LDnWeZzbAU%VO^n&yJ|WzGRva}L-AWA~ry27D07z<5P4 z;^*Vx^%utSynGxy7{T*t@d1ISqXY0fd;q*0Dge*R1mO8VtTQKXM@G-qOKsrVB|2Z* zaXQc=!d7d8>LU3&Qtsk+MT>>M2?hvg@=Nn+G2IzubRK#r?GH5)hJ7i;nlef*Cwr1* z$!)x)P_XN>+U6VI3ceTpi0<7x{9<}JF_oS!>@DFdVSX z9U{2jLik9YcvQ)c`-(U0NG+3RX}E7Tv_y7Mhc%y^FI!xCu?(%n(?Y1PXqdNmsW81` ze+f_DSs4QD8$6r?NB`>#M1whw59T2en2Ds3B2ou(_0dM4{C{-Lo2=Ixu3Dz9C?g_- zcf_0v_IBQ~(cE~oj;5NtqzK-R;39+l+_rAAHZxwcLQ7pvj34h(ln}MY-`&Z6qlJmS zu9lj-gdhW&p2~_2_49Obn2*&^k`WW2Vf!-@<3a*`+_%|nFf-DFk`*NRv7>pJ$*~c; zckXcAy2)yt!OCTeltr-9g$MVguwue?`Fc2Su`!4GmdIikN{Wx>W+cT&?g{YT?zkBz zT2ti7KkiZeotsxH%gz)ZJIL|J$@(u2pHuNeVD1nF-HkZtYZPIghL2Z*7G@W^ifC9k z_6O{Z#fguIDLf7&U0yY^24ywXg_cc!!I0vM;qMY~7y2O_D=IDaOgvfAQd&ZGNbaM; z1Em_3n`(D79xrOv?AM}cYb>|c-M#A2>f8F?*HVl%*KJzA+dRwijP-S!2HPi_AKTYD zR5~7T+U;WEMst7U5xqmk`=-x2zx)2W0Y!l$yNrV4cUSIt719yM+RCzK8L^hL)LBw2J{HCrPWX|~obWW^RzgKWVM10yY(hYS zQ-Vc;Zh~@xPy#o;H~v%n!}u%l$K%uE!{XiI&EuEFOU3iV_r*2E-Hj`W%Z>|+bB;5P zQ;TE74aRb;VCCu2UvRL2~NiHNa} zSr)?=^E>)U^x0^3v}^RrXrbu7sK-&KqGF@AL}^CxMtzOE5xFnYC(^Z+DYR|eo0(-vfKDRq;_uAdm-S2{r2m1vt3!V(RACw)mB}h7`bJvAkVY^oELc1OZ z<^ZXa>G;O6Bf>Gs++)m7j1uS=8jM4<>s}a8pbdu7&awq<7b4A0E5=_S(*Q;t);lbp!~lNA$26HVg*M$QfE55FDq8=4->8&n&-^VjZg_dxuB&_G%L+WvQccK+e^9qL=uSKsT{+xI)^ zx5V#Dzs!Dp=?U$j_MG^s`?Imzt9$ZC-VgO3bzNJ#`Z|+4r8}>6Sa*E?zW2M}_wsh* z_D^jgZPd0?-&TKn`!(<@@oQ1*iq^(2zF)YXkA2qu{Jh1dW%kq2PuicJH~YZCy@HR+ zKfe61^8?R^;wHVO_wRSVr@t?KXZ)`9ZOmJdx0m18yy=nA?JJj8<1Y`r)PDJ@ zF{qK&SoXr~Md$Ox=km|%p1D1nep>i+_0vyJqMwLAx%t@f@z|pyk5)cvei;2w;^D0a zE)S;fAHQ#Szr7);L8akw{myzu{l$Bm?+w=-ty@#~tv0b%wf6bl-FJoWR^M^EL%4J9 zw$1IqTSsrLz13NhRkN(7xtdk2THSav;-<{ahc|+5h~B8Z?t7j8dQH`iDn`}yYwp)* z*Q&0%U!`8Xe#PSo{mRYDUYGeV-@fF3N%T^~#oZTWEFE?oYwEV4|!tmRzJIm2^hdZ7Q}U;pPwqcyd6IDQ_KENlOHTYOK3(iqEMENX_`c&-$4SQ< ziV}*}6pa^NFAObQTKK1+vLLWvVL{Ka@?-wTG>-KgEk7D?bkWhiBbSbZ9ML&4a=7|% z>|w*h#KVsdWgXgdNaRq2c`}=}XgT z>0N2}(hAd}((Kc;z#OzE^>OOi)WlTJRHIb6)Y+7;DYYrZDXbKa6q6LC6jI91o#N^(dtNK#4SOBzjVOMIGmE%A6_dSY1O_C%{h z-9*Ji{={ic59cH2A?F(BG$)V4;e>EJIh#2q9374dM~p+|OtJs4zq6azPuX|bSJ~&- zMeKZbI-A9gU<#Sou&`(qTbsR@t;SYl%djQbqHIAnADhmmuzA@$Y$6+* zJMg>j4BUB#;ja6G^#$&?k66{La@H|c8Y`UT!Lnj$vm{xF)tT@(p*$fY!9T$)K`~(_ z{zLr5_>_3(_$BdJ{M)$GaeLwn;;3=&V~@vr$1aTR-+OIu#9rOKqcK%6Au)?%x}#4< zJ4Q338=@kk)T2H{W<;)x?26bQu_mH3JUd(`yg4i`OfIZG)H4)?7Kf|}`LJit9_pS` zyI1aR4E78j3Q7qQ4LZ9^dskhcbzoC~dqDTj;GM(%(f-qZ34UB(mhY@joX>=Jgm=H! zPOtVI+jhM4H1(|ZSmbfso#`IGz1Pjz?Xj!2>v0#d%O2;CPHUacZliA7<@jprvaR_J zgIhLlxn$3@-)Z-7v)tyGO>b>AY}p$>+AOwVZ+LI5W*uYo%u>=az@o;SY`(?p>bv$+K@@UHlX+&$-X()N{ z(%+T=(!kPw*FWif*LuJGX8d0D%cm#*XI*#S52+uPT~VE-9ZlbPzAtb0Zaetx;n&et z^;V}Z*`I4${(e&VZ{)`RbP5E7QJYGF7kZy zv)reRPZ&?EA7?#!@sRn@_CfyrrUr=yxB4^pdg`?5qH62zQtsN_DZ1T#OXn7=rm;>UTj^XJN`<-5w> zoYOs5R7xxjEO~!+?b)(3B4;?K2Tr-4dUew1>7vZoqyIc1em!!-TWT&yi*C!65_Sz;O@HMA3@|G6DuYX9Czxh;L`X7!ev!`F{i8D9H!<;Z2rOS6?XE`(NSpC2u|doI0nTgjrc zgfp$D?w&k(BE2~LxKELDp?$%oWA;a#j`$poIFxbl%z^s+&OCbFs{K22PwxAiBc0=! zeIaWqb5rK|3~EMD`o}c0v|FhGG={Ba7}m;FB9(;mmXWRw=gCp+9^sr@_x8;*q0Ei zJ!gY|?~)5N+G*=&?W60(@A+|iuIozYmyTNfO@4 zsB>&-tfs?4b+uuo8u=KR<&wV^6bV}kj4@79EqMD0hq!B|zmI2*EFWzDv;X(HpOc+8 z+M~W2er7bczrXwD)XRO(lb<9%+}CiX?*5(r8ugn&RdrY7F6CUHoj-g|yQKB>v6H^V z>x#4sbdH)G-gU4f|L^`yx%YFdvb!=5WjLoVPg6=&OEFFkNxG3Jn3%+&bIRCmaHpcO zLB9H5+`q5Q8el)Bf$ZRjh1IxE(AR%Y{D(iELIcj@$5}WA;2l~DQ^Wo}^RGXjA{Nf$ z2MzWeUWTp3EU-=3zi0mS=Ti)TjU0Zgg~JhZ$9%C}*uQ7~_2*M8gY)>|4o4^!jU`}7 znEJf<^Z)%eZ`ioW&cV^i#dW*Kj(^s2!s^zT*ti6?x|o`d{yIxrdqb2__EiutbKV04<9Q$ai+BV!o@4sl%$s#Z*=ks42@1mPS43ZbnHY)#pSA+yZ0V9 zzH9!{-u1J8WJ*+FwXNr#_>6HDw2NxFuWAN$CK zx;O2Axzt6r!I@`nz3LccsF{1k?mv6u(TC2zGt|YKL-v*3`|z7fUgpd?S@&g(SI0f| z{PSOAEyvix>i2!T%RMtLz8)ay1su88OC-!RF6Wr2&nKAwZD?qyuCB~7R>M=^ z4pKdR^yty;+n2IU)IoBM?jd=2Jd;Ok)P{_(lb8`Y31T%5>>frz{xJI0v2;uw*0BFX z7N8QhfJONf%pZG#3BZm!uhCL$KeiO@hq1j0yNqo@myrOr2YZc)g9x!1t-_9CtI$z2 zj<#Xd*fvy+#9^d1V>}>_dw`U&WK0<)qfTTBE8igx`L2NlXh=$P?tP0zLs*niCu-;?RC=Pu=`dAUBkBZPV za>edouILVu29u*N7=}E-##RC2U^h^zJaSV4_gNIq<_H{^$NBbEP4g85bO;m0k*`Sz^?QdrUzER z6JVKIgE@hHuLKr@eZoj!k^B&>VpA{`ur2Na`_>X{Jt{#Y%m;gjF~L5$5o~00Fio&D z?gMMrO3VgqhM8Cp)`*FMwQ>_!%pSs4fZg#3*uGxJ9Kf1Y6pO%`Fd492ZUy_<|M+a?1^Qtc&rs8pdIibEJZ94Q$&gAJ2JseVt>=se6)0oXH42!*1zNE^$?v{619M0VI!%noFQLNMFB#U#;Q)Ph!H1=woX z-CzY7 zwWt^rEZebKY&)t&vM~RB#fV`2eIG24lQ1Qe1eVb2urt^?u*fE2Uf6w%4z}RW!5%pa zTLf0!zrnJ&0<#ADY&sT*J;#K>GW;D_Cm+Ccz{YzB?2NBr_F%0ojD=zEFe#YlKZC7u zA+`oAzNf(I_%`MOw%bxzEcO{AgSGi%uy{_x)WB}M8*G=)Vdm%@B4d8oV~ihc&tHN4 zb1tR@R^u@nF3j2u3fnEAH zu#G-}8G?m57p$D?Fn6#Om%~`tH;fB9yIGd~>GZ&$+9Z?%LizdpxT{>+Rgck9G^bv4J;cSOa>eiw*~Z#x_N z?W<0#aqI29rJvXCWwhLl32oMm`SPJW+Pq0Dy6PP}O6hH9e8qZR5 z)l5@IRT@%Ul+9A=6kjDPD!3*m$^A|GE|ZyLEUlh&Lb5S&LOe3jK};pFQnZCb7CFdq z7qaKv5Rl+7_&eA;m{shX^h`E`=EL@&n6ayP7qiJENwzDI&c28d*f0^Z?Pm$>(rG$- zVp4)_GqIR`YRrs1I^x5&8qQ#!7_4HC40N!q`^7nD`s_JVzYlV@{QAVH1Q8#(J2KI$ zt1+>@Lp@3MJLnGD29mygbxk&IZA>oxygr4|(vT9`ye{?2hi9qgO^#_*?|Rad-m=pV zyq3=3c~zSc)98~q@LV7(;8{af*ORDhugBUsT@QzH{2o;A>uX5LjjXrZkM61D<<`#T zDct>%Uv<0ofc34?gB{iRhuAk04=db=KJuU{^k~4f-N!_)h7~~X7KU9)EmFUD`1rRA z=Zgy~?w@cz|Lvq~Id;11oa&iNrM73|OX5p5oxND9cBbPTc3Qf;?WEKB2PXt?rP#uIm%|E#uZA4kc`fYd{i^6AvNw_svu@@e>Zm?<(CSv*for$FA*7%u-4|zXHy=CV&0<7dV*-992)M>u5~$?1}_V zt0Y$ZY~k4dI>?#$ZO=K?C&97m?_duPRI!T(Guf8IKJ4KUGxo``#q13elF*ZM_StCy z+in(v9wx9WF*@6sC;>gcn0<}cjO|YGVbf?C>>KndwkNZLP3ITqToqu)HDb@QSExsg>F}$5##INUg5kcWg~kuCRgK z{>-&1dB|usFU0su{x_4_0~<_B4_;rNe@MnW@i5yW`p7rS(4+d+yN?~-5LWQpW^dtI z+ti|*O^1&+Z$4kFV1NIF&z5f|OC7M&-?yrsk=kZ^cC%A_Ns{x$(#tL#=RUbgmvh~m z&da+OROowrz2M-fdNE)}=%pC1dzVwZg|FuL?7Wuid%r5jPxeN-KkH`P&W`Hf0IOS0 zf!A&u?~=W%9F$W_2yAkIx9q5^@5G|lH&E}Z-j~N! zRkV-KId|pW%Z`97azRu;Km&Ho#n#)J#)?+ft$R(@Av!te189M^zh6)&&)G3&olGPGjrygE3I$N z*N<*pX0<-e@J4TF~pJwrEQYP7fC zGVcoquX)oQKbd=fOz_<0<35|?=RJ}C#-72K`wQ_bSU3nqQu_8Vqto*~s>9cI3 zD`&RE%rCnT+gchpWqHZk_?5+fCA^>n?H0X|Jh$*{%FF`$w2XXZdQjfhsrI>-GPF6? znZIPGJoA3mqUnpK@5)Mj=I3nNOl{8P40-OhseyUL=~MF^(q5jrfRdG z=-ICX=+}($KUVXqZ>!2?a*%r6q}ys^?+vxjdxk-a|EQ~+&{BWV&7vXE^{s|aTzuw? zb^dhDi{palJ{+@uZkFRjkldDe4)%s1$vTke*~U;CucpmbOF`1VHchn{JAdbh^7$gO zo%3@|uFcx)*2Z9&85&U2q6c0Y_4)AJSQ8xI)pMpnBp^4zht^{A!7=?mg z`Wkqq_V9Mx0`NzFM{vd#{LMAsagKmD>1x5xJOgj!O$E>ML-0NI;H|qd@KL{kH>G01 zYkdp+R%dvV?s@Q5|AbQsLEw#U0)NyN-nwf7FZ4XTy_W-i>1W`X(r~h;0KCBi@V%=r z@DE=H577bE$qT_Ryo7|v2mHRZ;Q5)ODDdL8f*&^)Wq=2`7koeo@&|wO74SH%P#k!V zZ-f8nf~JG#xgUH_12`{K2_D^XIH!~dKHj_F<+;N%pXK1&-G*}%Uf|iS0^iOQP8F%Z zqx%7khBpBhfq(V~62VjK67Zc4!#j!5;7x4X=A<&HnXeSS}B?o;a zgT{TCeD z9t-srLS08eZGE8j=1_lkXaNt(vxXAApa!N;hw)GgDU>`K%7zz~U?kxizSF0LuMWdc z!$Ay!5aB^Y)F(nTY}G&lKr@NiEbL#L87wUg6bLfOwD{PSmI79NbT7^8)$lZYevhEL zN7yA4h~X_1HV>p`N`=(8WL!98p&* zir}mg4W|HYob@%23|&SVP<_G9j~u4$LENNA_b120Pb~3rtTk5S0(hM?N|5Sxn!9$3ob;@CdR=Bp_?fCs7b|qfK7zLB zo9y0a$kUE6a_+Vc8Yg(*lF6s~0z=^k)_P)nsYj+WY#$+6p^z`WRqPI*_SWaodVi(I z+TZ~P?w;#h z{`C}rlqZ6hk0hDy^z>;tS*ZmT4Rx~Fs@nR(fN51BRn^J!8=D#z%$aYo7*2r9Z=UG4Hy%2Os1i6t_lCNC=!!$HT~4wbo?55}B%U7Z#%UTz5q@#islH2V7!b%2f0 zz{7FfS3Z3%!)uf&{1OH^dD!*WnU6QNl%$1CaVGM6u^>zJqd`n$|yS0%-#GX!s zZ+riJ?u(7}Q~kzR7&1o_wY@zLZ(aCq_qxV{DU+RS;XOMzE&J%)>odb$Y)oW&_;ez& z^PAOn?AX9<*2oFrRa*yPQsa_xD_T~z?L2nu*hQ`OqV{4_TtH<03wsA-+o_rw8=tLO zx%1dXNP@4eOJ)}YcK9yqD)Jgn%{s^v579WuWe9fKa*2jx1?=v zJM6&0k9q9fu%xb{w0LG!-6AM+(VfpfSUfGx*#KSma?`Sze&bBgqPQ25l9%R|F3By- zYRZY9r<&J-esqBk7mq;q_r*w2=Z`HeBGmc&+sPvZsORRP`93B*)P4Jh&8ede;X9|- zzT4iCISF3d)Z9M%@#^wuClfw=O7!=`TU)04+3E98-@`vof3&J1*408n!w+V5TsQ<2 ze|sY#oD%N2f9=$VFI7%)A1M<+w72v2`GZ?pvI9q(h&il4y8wOXgKjLaKo9oCO5iuI7B~x# z=K9VIOCIX&II_UkkVd`tf8H`US zSPFgj&L7xZ8#M-g5ECMuH%`EbLl1N2z;$1D$GOke%nElj!o_O)dhY%44b*zFt-gSX zYaZS>gJnJ5T!N2mFGNTD(Y1wEpvQO_>iTivc+k@Iozrl=?tHh%*MJ7?oZmKMv>48w zc3uB+VWW7`%v)s6+d)c8&IZttWD%s^}l#m-O}tR?jLqXbk=oyz>da4thg-3CzI_Ef4&U zBJhy!!A@rr?2aCWAFNz+^%;|U&UV6d`DbW*Zy8-uUyJg!r+UO{Z}3^SKU7z0w8r#} zyH|=&XdlwcI^N9LrG1`P`?oM{llCZY;ors4YqW=X|LPbQuwL83%fI`s`99w`#)!68ua5N3eWhpIDMgyky#plpMa}PV;XH&@$Sx zQ-F5SM)w8iENukuG+(FT-G)wD48azj8ln3JX^09;K}6H?E> z`9mqsK=El>5bt}I7A%9!`7M03kp>PoX+8uyFo)H=>~#?2$pNu~-_HS7Gnj{#l7Rz= zJj9vE7tV)6+#Eq7xqLB&6wsz*F$6LdP%N7k-lw$T`y#pPz<3Oj2a-6zKyfvSfE>Wf z9UNv9&p$$=Oq-)LY6v_*qdoAr03D@_Ab5^~5^hp*2ri@H?O`U*Tv#5VhU^_8beS^S zBSI}Sf4c~+gBFR<4qDtMLhvD7kR|Q74~RTIyfwU-2UXw4bJ`^WApxy}Cx&1r4z}{e z8%5A?;MpoL0_-{goY`&@cthsX0?^4tff$0<1=m@fXsN<<*$N?QgU2L{j%}a=9Hqs8 zI!${(cm+>^wa&8y{dVwhQVmZA;a0u^!bh-#uk$gwMS#1&3V|HLy9DV7Ef!)f%Y;xX zlwRhV=$esRSejp1sVrB)cl2w@DofIeBT5ni8ejUj?iR z)m1hARRuF4;E!2_W(+9Y!F4QCCVb^q$yNuIsgi4|8s^}niD_&T99%qPkqkNK?g#IBZU6HB_w#q>T#? zud1l7s#IdBPfd^VW!r#MwFT8cRE4T>8h@0Vk9CkztE^Qb_rivT+#)4#t1VP>#S}rA zX=QVvnWLeqMaum0@~XlC%7|dqGqf_4thPv&G~Ae>6PKwXE2`Cu*yG}{uA{1ID)QBw zf~p>4P^Gf|Nsm2g1qGcO^xE_(qX%z=l$;z5E zMvW-9ptiVJS))Sz11GnzMhT19kDiCk1!Qv-vZ$V67>Iu` z3tghBwy+RnU0hpUK4(x$FeF1(M3+_%jgBhMFH!wl4med3(<&w%m{KxY3b2|`AuHRd zDyTCv=9sz{=2sRf%hBU`ps+k&1!-ZJ)v$lThC-l9rDTj=VO3=@jCECd6$n~gRajN- zj{sMvtWk%7#hJxLIOVFV;78bTPXGRH=0Bjj`VSgkoU{qYpaRrH~g_6`@PgMT- zYB1LYwYY;L=m?yVLD0$a{Zswp{h1IRb|uR6Dz4vRDr1LnfXt>is3UcZ!gU%vfH-V8 zsRKLFum$1N5s-_CDRJ4#s0uLj1+^s+N>yP^8KZbI4X2kvvx*>6oL^h6W=Ellizeh( z=9j?0e{6qXF6qx-R)~j1e$5nOtP`!iTpB|1o4H^$wGg1WQm zFsi>dKzq0m!ud|z9NnLsum+zBdOz;SOo5nDQmq=i6Gj^U(O`U>5%fv80!p2cUk+YK zS!G>*c^U48;DoV_#MOofJD+or*|qs#A^?j6=~ZkOE>le@!+umaHa3`=psXlR)(k)p z+X|#KH8^09j?)r5+aSi+lvkC+E9;cy(1Dmy>knvxDXy(7OawQ;zq|}=MKR-_FyyqV z3Z=S~v3-y@eNHuq8Uk2ActV63u%g-@Rn)5U3(A$@*u=0VBUBw*S)>I04vH#^(rOFX z;R6)#W^e=90ON5ns;mO3*Q)(fm8vQjjwBuHkohwLA(IS~pT!SwB>R1&A(^ovulWZv zR%=Xkk}6ZlYyh<(-2heR!=OXe${H-6G@vv7_dgKzxbu*SUpMgp+JGRchPe?{*C?y= zYrr~UZ6Xj3I0=kB06#8Y1+H0*vZAU^8CqV>a#s;VtXf$?hBT23n~+WQSP|gEDAh^W z*TnuF$Q2OaOBcc9)ZdmGr5Y>@kT3|x69ek+{1B{D##g}vLjs{HM#e~005%Oz7_};- zDlAnN)xt?(#$V$42{U)Y5b#&)tX>|QF=#wEhS0rLMYA%%XJmX)W(|SMNGdLd+5?fn zu|c0ud!QKyj2fmP|ri7HbmO=s?$) z!Nd$)?JyWDkXTg$RKcGeUAS~c&SVrp6sBg@tU@^L@e+s04ih#Zm4foY{f4Ckv;zc* zLtxFYvjBafu)?1m7)%xMG6x0-Gd`GvoZ%ceKo~-QPX^DPc-*Yt3V&-rz4$NZ2C_ab zgCg^j3fmL>M>h#x|6=VvmSk-KZUC3`6@y@{=t{c%nFI+CudO{pCYD^LCAkF z!Ti~Z;-(V)J~n(gxF+&qpvcQq^2#c;T#09Sch(kzI2QwrV+KzQ+>ERw6MWiXM> zW!9?lVy2S*a%k1R#=nj}7cC!7)fWh6E zu~6<%?|*P)a}63PEJ|mj3`G8eiSFc;^N$p`5)nf>5oCxyVK8w9gUwq5>Z(=!V;FJ7 z0mDc)AK66W1|FA#pz**P(||kx2Yc+_#*m97Tn_I9POfRf5urYyOcZ2;X#t_Jh7@_qmWRR)P< zPzgFR8AM}B=y%TkQIC3M{;b++_a{{QKb-t>5L4chtR&e=K*aTyb1pt&2Pur(D!Hlx zhAyOl9gfQUa#jYg9%i;X!1}QQ18)chp-Rmd$1=R2!7Bw=mvNjy#^BdifOl3ihqDF! zb_LZ|&Z?}cuO!^d%L;H8lM}2PEP{a59Jt&P65NW4g@T7c zR-y8K=ZMHMy;La&4*|PN@~UDvIN@?|&*i1ca+p=+X%SPfy2mKws19r{WAJlQ^vZ2V-)TC4o4Ny{%*rZHP}17;k&c7_x>GZ1`OmBFy{5jWmYVjAmAqkQ8~$b`#f zoeH)>h3ngP5yB}2W!CJktHte0n+mrt6v#|(wHHwc7j9W*l5(>u-6Hw{`G z_E<CAvMXkJKAmUm%JEdIj;($ZpM)6$q=6A{$EP2}Rqj{GXf6?p@`t=cjS$2YRIoZ@V?g3ELq;x$Gi7kn4+<_B>caJD#Uw_@^B4=jZpnq^tI7%o>=*_W#gYp|!HtI^2*Sqm~;A_RTuyR^Zlb*4i){&N{1qc3f4Ns zMmWTBVP-=dN1093WMvIoHj@Caa`9uEeiWC8*(<a*NBWs%jim4kh^&75NjnfF}gNhXG^h z;!p|;28S$f4^@sssYfpOG!9ul-VkA#JIqiyz=M@(Oi4IWRbG?}D-VY(Ur2)^vmeJ8 zuc{gl)rBk>nB_7_%W@ppuqP0>NIe^_F3T-}ttY4g5R?stx$yJ^BEY?@va+fUN8u4% z9SBh6z%ICRK`4w!%N$5Z(11y^`5%12x{GAI= zLa>Ng)#O$c%ygLd?^MW1xv;jPww!H3nL`0=puq-yZgm;VfWWM(d|Gd z-1^e0a-~DoV-zlaPz+T2m{4%Ibfb=X3b;WHD=b8&|mAr9>BG#6!!F6#izsACNhQ|AGuh|I!ZHN!kTz_5WQ z#~8QS6Mbr2JiW_cTJ{3l%FfP!WE=<9=s}DzsZapfK!tUa13qdEr_u3gd<5@8u&1|M z0OE7DaPi@WQ+J3DXKV4nbsEVLJ`lvW!*LHpi!f9m8a|K8hXY159OP%R!tp7bFWruU z!~1!NHU&C-;*$??%qt!8rCTcCbdUnUyTl0I;DB#r#sd~E93Ob?3xhLW7ey#L1)ox;VfNgCE`2yVXDuv1cI_{#-O@R2k zunb+IR*RSq6!P}b$oQxL(QtH}vVlXxY9XSJ0?ZU4svLeU;hY$W)KX}l3{m*wg{}a7 zWr#iq@VX)VoPja2$Tme5%SIqdGXhB)ED&|j0*QRbBih1-?Z& z1<|XgAd%}cNTzuPi88aGe(>pZ$87j1g&f3doq?!jGZ5XHi>P(E$lN9mQEJdbTOJz8 zFF^G60%Vn5h<0c=9EPj#+|uJ6e%w z**ZAIwGL4-`1q~sdMIN(;#s}|a(D&NrLQ2KcmuL6-vnu2Mbw^G5zlBd8j;uX4w`39o$-bD1xtw_)5Ekt{~jr6K_g1mMj5xjCj=j}$K*3W?NXYi8~pCg{{7f{zP z5N~@sq9YC<-nj!v>U$7$@-?E)eGPdJAgYF6&bP?y`ge%ucnoBE z5>fG|kaXW^L`D1vvicEG>1To8Swx>Wi}d1uM!bk$K$gECy-$BdyyWxnJ=XJ(<}%3Y zGU)6IqK{mGGOi=u(d$t6KM`-^4MerwKuCTQiArxHN&&C4i0?of?;zUj9-_9~1KHgN z{`aAd4-hZ?A)@zmLR~b7689oeI-KgfsYQAq7P^(9M5R)SCzDZnE&3E?313t_XF!S0 zn!_6xmXxT$iju9cp+uQ>l+@CJ5@~!Xs?m=!T;@-W`ZR#zWd~7IUJykqLMaiv?#*jV zqUh79)QG$+N^eCr#oIE2GFBH*^qvBWS5!plITcgV^iqnBDWiCuWt837nUv`MEQnW7 zR5tu@lNw-41x2Guisx8O87oxqvaE{YodZ~|rbOH8DCxNd3UxNX>kD%zddD1!QqQG$ z>*i7Pxp@@zX(L5f6yInm1)Z4^EL#ChTSf6(S5b8Q z21=sdNb$F9q=YB7z~>9zq|oILD8Y%{6cX>D1dI1jV$FvXeg6c-k2ncDPg8u$GZb>V zObPB^hBVhH{y8{K*!CC2Z@Wne9Xlwrtb;OXze|ZdIw^ri7aXnZq2!%HI00!u3)z_SEqjkU15|4|tVBbX=UH+36Z@EG9cl|~4Ebq`L?*YvV z)Y5`RiYM-*d1!~2Ck`~=p>x(ezN-zKQMKU-SGe<#W-^Z-e?VHOJTnBg-e&fQifQRITKriH>g8*HNc&M?IXSQQI zPnf(1tm7e`so4ddaK|kkYUtpZ#N6Yd>peVsN18A6mhr{w4ETalBR*O^f-l}@&PVYU ze2IJ{UwCd5AF1Vh!DR=&Bz+8DXy(gD5z%~u^k}}=D2|Ux)A>SiHXmIs=8I4*Oe1so zqKnJJ=Gknx}nJ;L(0w-^8^ZC_( z!}Ro!FX4Cc1=l7M1W*w0{(V00fLtc z`0XPFVn=I%{x0}El8uf60e_4D9h@kTZ1EBZynO`7BS=7RtP>dQsuKvd%oRx1H40Gn z0)hD8LIE;bB9N?T73j;B3(%J30^!j&1nAQ@1rp2c0(9hE0bR6PAY8FmAkcgyp!oX) zeEB{&vASQtZ`&_GmR|{k4POh8?_q&Z{f$7N_!dsKo)GZWX9TG9tU$c_X93^wS2*wd zn?QW}f&iso6$mwO3VO#~fdJhXh#C!r{Edb}WHVAI++#09TgC{5nh8Rb>?stwDuj|9 zp+a#)7^DdkqLwJ3z$03S*2M`W=Msc`lnCc%6NO@RvQU^jTgX2#TPQ#(A@ZFk6c{xM zQBk8%u%k&RtX?SOuU;rb9*czZiuFPy+b9&qzac~?whQ?kZwXQRyFy9CE;yrmQYgNB zN+?+TgHY)ByHG5?Bt$V+gu?QNLP5+UA=(3Pgmrcc;l#O!UIFGkof7eqX^~VW5Q#R5 zMLbtM5tXMWl3tdGsMS&t&qgMq;0!kpe2a8=3xE$(6VFfqz6FFu*w?@xGp`1};v(aN z!0ZkF%3S!prG`qhtLTRNl$FqY{HBczk6Ww83XBHqonitNCjLYlSb1)`{2a zy&~Bl-3Ze-bK!Hs_<9n*vujv>GW=o@zOoHgJdGclaQN@A1coIrEP-JO3`<~G0>cs* zmcXzCh9xj8fnf;@OJG<6!x9*lz_0{{B`_?3VF?UNU|0gf5*U`iumpxBFf4@FeM zSOUWm7?!}W1coIrEP-JO3`<~G0>cs*mcXzCh9xj8fnf;@OJG<6!xDJ91d5W_cPgt1 zY$ULiz|{n{5x9fEeFPpP@C1S92)s_NfMCvXpe?F1er@GOCs3G5(HL!dZ?t*;q@aspim^d&HYz+?im2`nX0O<)Uw z%LrUY;1&XR5%?*AM+iJk;6(y&64*%~Kb5Vg5rH-YIuYnipn|}70y7CLBCwjkMgqB> z<3s|oC^le5VA4IdTm&!i4!k@_L`~9d(MgYgCu-p3N+OxjY@mohjz5>Y4am4I_)T16 zxL3gaRqZkIMleLkYlZb%wF!dM7{xt{L}W^Q0Z=LqER__w{rbCCg1m+!$GmUy(3 zh1ZE(SO1HRYv8?Le0381v3SJ%`Wb#93*)&uKaHSwxoYvbggK=2!R2;FXA#{(WS_`>5JkBdZt$6F&%NoL@H`?md|Iad>ebU+iCm%;xpSaR{fuY4dVfJT#lRIQ;v0ES~L+kRPac{O@{> z#dGyv5yPhFY-RJ8k@1dYhuiY$JXVU?O)OL_AW~hjU3d+W5w4pLFBATz<|jioaV{?SE)D1j-4VNT7ni6avc#tS9iN583>`5a^MBHH1*hC-D1K z07sDf81{FJki2y-n;zQ&oD!#z!o7#!H-5y@4-wb`QJnS&;cJx0^3No&jljM8*nF*I z;2b){#@8KYq5K;bUIcnX1Y0(q^93jm_{+goi=k`q;U8fDW#a1y$=7;}&Cg=t*R>#k z`Cu&00beEnK1K`&T^=}(_zat0mk(|~=7Vh#wkz-@0^sxHx&Rqn|MAIu0)dA4;IV<_ z1z%MF_|NtLiMh`H^khB}KePCF0<#HhBycf-s|nmg;5ha&!fu8w^2L5jyrC23}nLRzk;XpMe)g z|CZ3r2NEI7(SIj&te1foM;8)*!EzuG!W`X|(78E^OUBVB6S_V}AdsU+K862lgg#XL zz9;lCL-4nKz$#+Y5cE<)w;h6>{*cW-l>TND`cUoLMCe25?*l>~N`K~$*z(~USc5K3 zehGv=lzy6@LboIG8^jzU9RGDB|3IGtr{(Ay2px~DLbN9ZF55+TgdHxl|#<=-asq5AipF1CI{(XSJ_+YsfOceDBN{5J67>Ss&n zL)kYcLLaJsyAV1ow+CGu|6oEN%6`NXI$O(r7F_;mgg(^#QB3GVwXcHEhZ^6z2z{vf zeNN~@$>$qFAFBWT@D%!a9sXw<*?HEfiG>XWb`WSepT(CFxQ{?_GmFn8a65sW1SYqz z^j!oREnwqV;tIH*1qC|+#P`7KI;r14+`kLseu`yv{3ff>2o2G!g3ZE1R zeEo8T#ZM>r@@N*{cbmm43I1FRi&y+Tn2&l2i=RaB^<25I&xWrBcLwtp6MP1#50~DI z;9YgnyAr$ssV7%|UxJrI8MqG}na9fYRtH;NGpPrjKQQGep*!4V>96b1PZ0X%KUw-m zI`q?ozMtgZuR}je=tZQShji%Y2)*YP%l}70hpI7t^hH8XByv2flm9ZI(?q|Qb?Da# zea8^|ZxVXmWw!kLI{7;Y-Hhm6(95RdyC?tX)GT(0PNdph+Zy`{JQ-H5xbW|>iIq4k9EbzH=)Z3 z{Uo7d+2S-}LZ3(Y>(XU}UOfbVPT!m#Eb3wV0jCFf)?j__(}_bBm}@9~>Jffix~D-- zpSy{EIQw*V37hi}8K0cJ#NT|yR}&dmT>2dZUqkvIXSX6++4L((|Nnu=6MrKXU%L9d zN$_%@VVN5dd6p4*{z~$5*>u`Br5PQnCtNeL3 z#R33M2)`H^$r2pu`dc(fZ$7CGdB68s}mlHj7>fo>I zw2w=lOZ1HT*#5}js|jAJgI`AQBX#grq+f7)=J=c>^>oome{l%>zexRc+vP;+KS_sA z;1KPSka4QeN$*Ygb9(0L8BX}b>ZI=^^I(b&{#`O|bkn~_((B4USH}%$4Ix#uvx`28nb097uXjo?N{ix1Y3&(=(@6PLG`4I9N#1b9&(TaB}A2 zoLo4$adEEv2EvDfcnso;^CQ_9J3jHe({`QhpG$T0kVEk6bnqbr&)F}IpN!~#t4{i> zB)u;F+adVuA^A@d_=rGbEn80xa(J$NoPW&KXDE9M%sXF*Zg8xkizn$Q9`)T?cEFax|dXC^HlJUyPvw91gp7R&E@zg=^y6Xn< zn{0Y#oq61h;Qe&g88!s3JO4Tnyd2o!o@PeoUz*hK0Ffg%|5_4y4zaU84WK(gej7sf z8)E*J6Z!~3*Ig$#5_%$`KSyRxu6!p#UrNemaT|DX;X z+g-fo=H&W_`0bot=8!noUrh)fuAg#ou7C0f{eNr6Ilrd?>V~guVkbCz(N63HXD`G` z)^2d?2BTs&j%9>xlCRFZBl{V1h4n1lSdaJ~c;%7uItZVEv?qmeIe2eH*UwybmQ7tt z`t2Da|BD2lMC=KNcO~`ONc!`6lHQx(3yEFl(gzYePbYl@!I$Wi3*Vz>t{9#4=>$KU z=$qr8P4JIMJ-PZ65&S#EUUBKm3EoJDznb9Jkos_TtdZcSll0d~dlwVD9BPZ_MQ_rN zg+q)ZUqa{BJ@*J7yr#i^MIfQCBK=dBt|0VBL(n4#y=Dk{455EF1RakvY}q+|e@Ofl zPM_&S?wr1y2_H@$Ye{;pA4L&5Cx07azc~4plJqT5CLRfLxCdTb|IRF7#|cN}w1ZK_}EY~&?A4)H+I(lJC8Tv1-2Oejp z#82V;vU2#n3w+%nc8in$p5It}sE&VObb-a|%6Z>K7B2@NfIFSYv4!NB9`^hUdvLkl9j=zY1%LZQ-#O`x?TlWTwzfSfQIegI;7XQA^KC{zS7O%U{ zoW7mK>-vQk3H}9QXF`cwW8PxZ?;-e9g6|~wmkFNhcW2*b(-#rDnnTjxe}~0$`B3thi>8KG|{{YiI!dj+8nwST>u z&^f=jL8pD3o#pz0?*6qOvAf(jE(M+8>kTsQxbfFnF?bxeRI%}GB%OFR8z0KfzV$yC z$C#t8okj1m{ntsyp5ou4!k3;7{v7=N4Zhwa^9eVO%lEMO!({&Bo)>N3%i?v%!MS}b zUUwXH61?s>5P!_3mqXcxaIYhJsv&k})c`%MgH7a(g#H<+&ocs6p4g6K+uBCx>xupP zasVCANm~egC_BEL(1#jlI|zNKakh)lEs11xsOP?YBd|jI>yfnKO+5uv(GEYc`I(eo7;EbhqC)C4a6Ve@aY6U ziHrvhFN(i=@-@tFjlO7PwUKV4@YUrq2s*`>+kdEyBoXI2YC|HXR1V^Vkh zD<*o-Ek8Mot*@?qu!(2!a^Qvg&1urVOv(7pA?@P)IL%=)c=OmiNC&zz-jqm=ADYPXOOoG!^pgbAo-athYbNP9yXryk zZ;*ZvMf&|+Qr|H|&zybZ>^)~!xN*##)8WqhaQOcga_5GgmQVNm(9_bNCH9Qt&(%}+ zJkrz7Az`bAZ63C}a=4w~#{Q5m+zPm3;7*1+6Ye~?OX247;4^yo939S!aU5PZFV0g< z=y=V7%foqbKKy*2%f~^Cm&5HefHn~K@9Kwnv;or-a9@YJ1MW_^5%>pUxQ*bpgj)`` z6Wq>ld%*1rH_nU5xh@=h(pCK*p8v=r=TVZM!Y?nIDfLN34Z@uz<+eSA->(1g`TF+% zuw2U-Z2gWrrQAG{PC?GU4XXTr$oAs@ti26nUw*|?_;rwd#Q{Y;F=#~gCoevQ-w~bt zttT=AWCPg`^C0K>hDukev#uK|oe|l$X?Y4i4;_DYD1N(0xhI~&uk}Cl%Nj_z@|J(E zzY|0FMY{Dg8X{eq&N_BG=~rC-hP=V$uOsn1lHj5aoy*6;Ai}>Te=r}8zHSJ79!cQw zl;_HgI`#K`%04t#F2_G}i1a~{5J{vYQIaJomn@L1mwYHWE$NilN#mpq(zm4-r6Xk- zvX^DQ%0}x~>VKwhXrMIs+`!s!p5X<HrJhDIzMVPU@A zJiy|l#Y{`#$TvquS>3Q&X&qp5&1Q{l)Tr)JyX;EkqwO!+Z+6HZ?dW*J@q;mqW2487 zaJuaDp>wNC&Ui0ZsoQ0@FWfgwnB$Q-(bv<;OXGFX`{1OveO69x@Xhm!_4f*}4HO66 z3%U^eUC2Jgo1rg-HHVi+OplC?@{YETF^KJny%zVwlrQ4nPFRyTKdCf1ImI{CE=`br zBmMiSA7rearp`=%#&f!1)?Zm)XK%`>oe`HiDz782J^#gmtirKHe;0kIoLd}N(p&OL zX?>Z;%7kTK`L9GAH(=H8u~Jnx-(yvAvb+ZyjT1~)BkI@BbXubAI3f5-fD^Yxl1HcxAA zXkOdAtNC#A&&}7H?=|-{YvJFO=Jm}Zn@i>|Xqwq*KX2O{O}#^%rTW6`xmDN7oo9xY zOelJgwN|EeLx2Sh!Z&hziuNwZ z;NHpG-G5HJ(s1#IUn71xeoB4Z?_0Y=P6skS-?iWCqf5KL+;wuN={rle`)sw^GWqov z+Uz#p-1Kl`;Kue13*le;hQN&vH{RT2xA}#($*)^&@!7g`yXiY8cYe9+(r&MhcJ0sn z-06VbA-`|c$B&YKRvNhgGh^=`_n9on6)x%UNX6;)~Lr*;cN^<4GeGX9s<8=jI#*SPwW z*7RKA0zG^EeU@jOZ@HiMO7^)kB`@`)AW-jD*-T5R;~P$=Cp$)pn{-pc38JYtkL?9;u4WlO8nkwksOr;`XW6Ip38E$HbIW zH>rieXp6blCXVJ4UYpb!H8$yXO0V=Mqa=&NHov%Tn0RG!S;(g7%W(_!5)5e5t>!N} zee2fc=^gZLY<2|3^EFjjr}Si zK4aldg-#|Bd?9Ko$#CY zHvtg}+t}?1i-g{iz7`ug1(P>J}D&KUF0a~)<-5L<`P#^ zUxVPn8hf_k)w9!JDE^Cw8R1D)14PNS5fg%I7+LH7PILEForEHm_QA z$|85vw6WLRulPlVPDxmn`n>QBNrS;Hi~F|M995HM`T8gSk^URsPn03uXgtYg>%@D0 z`$L|a(w_N1a9V6`Xl?$k&1E-#@0q@hQ5k7F_&y@J>}Bh7E@hs-`MnT!Dxo~HQ0yR^ zXIwRMw0z9i>n;l>SjTy%O%y8iK9C+X{MmJm*GIn5f!YM?w7bF<$tZ&ulP*W!@gIA% zhm1;4q(q6VBwO@DtUh%+?P=qSLSBjgCP^hI7gtF9^{bq7Cb&-u4VA~$r)?2Lihq$1Y1QVoZEw|V`=laFuQNa@; zwMlLnd-Pmn8Rj2bpOD8)?DEn2O-^2&)}VJxw##gprIl-m=i1<+h-aq+Bnc!33_8pb ztP>qRb@K6@A2c)aYWg;bul|{lV;$X{k4^~iiw>HZSee==dS1HFa-H4nF*{vKJvKhneF}r8GV|>uWe4ldxpCy>2@MNDDg;;!LyLb#eKF?#X&j-m}X+H^H*0VOd zJyz+~;I+yxL*bpGNq=3iOib%3?gt zZ_LW^YrXRP+EP|ceOVkT4L3=$4dZ( zO1izMM7Gv?`dCZP>4C3AuSkfRx@=mT-c{+3CeK(HjT##`J@j@&d2&qJL%mS_kIlr^ zJ>z(jFGTgkeUqG-_KEZ-gKx~njQo4lJhuZu$3qWCImR{X2N~_P63N$$weqkJ-XD4^ zVPnco>Bk1vrXQGxS}z}W(625yC}DfbGy}fzSLRc#W%k|^;wESLPndEzX``gbV7}QX zD?@wZaWg%(FRHRoewK6(uA~sL+IvL~=wk$C? zRV+HKXRcppHp4qU_*6uBj8`&0ZKGh9_)EzF_$ww8E`s86!k^o z6=9-en?Zs3ccU7|g-!|x+#b3-X0d*SdE=Ph+!B0G1ouY06jzawpZ>BzobhDKuWTF~ z*ZaN^yfEywgk>pT>c4Gr&FZ@S&WU#?Ck8K!I+VCRHAlQodeTZ|XEm%8BCpoWMG zG2TWU77?TCU6xP$(5E!mH+)gND%s2Uk=c!ryXCvbCAq2mzY7VDN{;O@l#DoN73MJB z?S@x%kV9B?+>*ro5@&N3Y{5oM0{C4%YKIQoQb7=ixh2Lu#x5mBZCk*{H>TvQeX{|8Jq*xude|3V!_d=K;YHOS{ahm9q-b&-uw)W$S z{Pjbqu=CNorrej58id&vk2^Jf+r-@=!4VaSOH!|i=1S}h1Suc$HPX%#V3fQ zBMd$=UuCZxcg%I4!Y3juc1yx&X}&?5*+ttkqYIp7`OUO)AVDj4EfeE zzxd}X)}$ZGcux9>fr05Ow!WkNonG->8lX+=OW7y;$mE-m`L+k`{~D9weLVQpxRFVt zMLv>O^gX3;+-t};G4vdC_IS1XNA!)HFW)hCtDDCE>#*$PkJ3Lj_}=W}Q7arjb#`&jo+J!(i+wvm zDqCP!YWcBU)Y!W&Wgc~tE=Il<_l_jkQWr7QWe@F%?qhH~rAN4rm47?K&rkK)BN z2&NnSYHi@q?tIQ8J7_|rI3YgOM30hvVYI{U3&+LI4}&I!(g~N+q9juNwI}yq-QE`@2;tZC9`1cpbDBSv&ftAZ|K97=6{LMtd$VtqCQ2jk zIn#FTwrd+1HnLuzfGLSx%EQ*fy7SRc}w^`!M3pxpabYwz;j z6Cb8Or1j{f^hm*F?UKIhw5g^8t+M@7451%tUHkmB34DD` zB>kOsL~kW;CHkWe_0;q^B7?ro-6kla?>oV&p3gK<0>0oi?IWIp_7h4?z1o-1J-(-n z8m~P?ZK7AvrNS*dbNY@p44tNWcxJt2f;erhWT_x#KZV|{J;VQ98%f{mS)kcOJ5w)E?(}!)4^5edhxX9t`mFc{yhQ3N zK?A)@>w$jlvFV#hz0+}QdQjICSq32Pbf%Y`Lm3KwHX7o>^1*79e=Z_9@h<12s^zZgFtw-4WX!|c4 zGut0*=3Bd3n^>Q=${R7?)WFQoY`)nDvkbFqroWk3o1HcMN$MjxAuW=wm)w%QDRY*t z)Soo!$S957-*%JbF7}_7GYp}t|Jk-t%-VT<8%*;0|cAXogE zUW(pVl9wd6^-82Cq`tx(yj!&JOYqHwwNIGC5?i;^!cv;Gn=xzgvNKN3XM4Y~?@dhTSiA z>l|tv-j(OscQ*gf9N%0%->d13d7sW{uK!yttNFR|nOQHC%qg_XT{wN~)EANir|gYH z3LAez?+b1(jFa1Mv=W-->wf^N{lu=#cf0>8x^nS1)mi&fcfPy)HENIBe{hfLz3H&l z|Gn+GjjDCqR*zeG{{`cJEohBclC${O!qp4*w79j1TSn_eo6NLc?)ZV*8K15Y+gL?v zQC5;FE20vcq z!9VJ?PgXN|hR`O!)6_5E;N-Z#Tc{&gp}#6TQe+!9!9sv2IA|+jM-NT};1m>`6nwtXqa<+N_HuOm`NozQj}m!O;Jo(D+sl1jGCaZ(CO3;F z2Znei#im`!T2b(Od15{0F9NRk45kox(7>0+oG>s1iVScPpzA>jDR38~2(6#=^?6@) z+4L>2o>aBzQI_V$g!S3Jovz&rqZUTFcKdd&&%QAsOS9?Gq^bqhHho`py*|%R8lgR_ zjX_1)0P3?|E$`jVX~yp~9=IDId|vZ_df2xReXZTCU4_2ttEU(C+!lr3*)~Q~GwH@Q ziC%XWFQD%iv_ZR8dm8!mHS#{_a*%f1C=U3&aMsmpvQImW`M>wl)DrEp+Fo?E*NnfT z^O5ZC)q}|glkZ-AB-_zx#=qLzi=Ndk(bClKy~g}cJFm%RUH!eVIH2Q(gY<*0MxGy7 z*|pjY+FwvWUlvcVdz)m^4Nc9qG2wS^ix&3O(_i(iLc6tJYZs!2eGjPTH37l{ci(B8 zX8dlamiJk2096DnJF7Jv^~+bLqmcYukp87vB9}X}M98Rl)T}#LM`DnqKBGkefml;~ zxRIhH^h{WM#CMUY(U)T8#@WOlPMDYEo1#rUnZ6_ArObuX=VvdTu{Li{!TBPSlJv6I zXZ2MSSD&xRtG!#lYHnDQwi%)K1fJ4mM(rcMxBAqs)p3&ZLAS}CFZvw!e-O+M*F;^2 zdpEHx)i`6@Gp;$C^LRzmN;b?qSrnawlm}>zXw9W2~?>5xcHr4E}a;`Wqb5Ut= zaaqyx1qbp>bLZwf$XYnv{+aKm{VQYYRM&LFG)>C=%~=Abfk+$gt(1!q9~Z=J6c#uK&A>0(t&l{-dGS|6l&&!3g@_ z{d2G(*YD=Qlh|xz0^7ecP$Sf_3Ho*sJTZ+2`%#Nh;MwbR zq=q_=K;cs*mcXzCh9xj8fnf;@OJG<6LrcKeJ~=NuEG-=VMP(+Wg=U7Oho(kkhWGzV4^0cL zHmVkLcMA_9X`xx6*%9d;4b}4MHYznX6&R2^3=&$Vh2>d<=9z|98>NL#4NZ$mjb{FZ zW`|WArl&zHnEV&Ts|S>BZLqOjSwbFl5_FNudu-O4S(N$s#mN^XlshTr_{DS7 zKdklkzWx@*hFsA&5+tHSQ8?-R(Mj&KC8-739)IqYK5w!wm>tM1EXpm&KhL*ToPUKV zPjWAsyn^zFX^Ar{N0wUD2>c3s)1_A|SD*uZY$A7!b%k}$G zJo#R~PlRIkZC>cf_pFpr{Eu)b>6eR8_y4z?JYR%*Z9}Y?m}N6SddRgrf98uRRR_DUwf1iSx_#%yh1W&d$Mz=99!0g4~Zv} z6z2t3F7f3f?V-Ww4klUJk~szW*#TdX?_7Vua*uzuUzT9?kqC3IaY>OU`*LmjY%m0* zEeMl4JLhuu%3@D|Vu+SW4i zxw6g8U6bvTt&$G%dc)7{o->aQCmoUeB2|g!_&vekV&4j1z?Yv*S?@nGd}ds^5Lcuh zlH`^pdVaC5*f+~hhn>o1cJT^w73JcJ%pvwclD0guGwGvdRXo=4g$j(Xk z6y;Dim7E)(##s=^^#$kWCl{a!2H{)nKx4Qde>GJ=_hMhLI8SD_R_=D^`SP+0sa@q< z4&VC0op}YTe0p!=;NGCGNbd}*oqL z0SB9mC%86W?(P|~n_93;Zr_l-^2oTUZKKjtQ2j%!L0_JyFsC3u85r~kInBuSdIWP< zQon;RO84Wj+LJ2}OgZenH3}*f6edDh4Oo%w=W0|dv7peG4`aO~*|`!mGRahj8MJGQ zK>qE1JbY@bAVWMS=R#4!bjBH-=I zqoWBd-HUGOzUW++Kjm~7$|L9$AiLPXkSq7@DyF*T^ZPuiI#=(@kX}&WPgnJ~cE9%G zU=AXy-uCt{$JZQ)+C|tYL=aD7YGPu|43l;?m z1`Tb420Cx-4W+}_O|2y0LBEM!4}X!yu0e;~{M;fPP0!$7e}Tt~y_9TfeLgQVeS=ng zo}!)o_Rb~6bPAM}Ddf_HZj^4Ru@gZf;Bsr_a{p$lRIB&z>9t&IEmw8gq{P$@ z8mLmG2dG8|=xm)&r=6mLyxeRz4vQea#=U;1KGc&J&`^a8;h_dywk>;iQ}^KZSoU zEiWjzTnxX`?GF};16`u&ar^{(%@(W&Hp}&6SU1;U-L;9dQPi8}dW*%$OV;MQSLFJO z#8eN?p6*ozela7vAdk)fl=A=`NIGXy9au$%M-rMM9F&7OX+;G08@o2u$YM}hdagHmw~ zV(YvX>(IRvr*kDL++$9^XXRA!gp*QRg;aHY89}yLC_eG3Q>N)ndWFg@o^cj<-Qrzx z45N^o*`nL&FY+w)<*v*r@_83g)ldzp4`FR3mk3$r8=XG!i!*nXdupP%J;Eg#A4L)x ze#E-92J0qzN7p54|H8U)PlUrwAq9&AKJf~@wOAPNd1<60!V$%VUYr(MDU9Y4=(;|~ zy81mt<@IH+2>7m`O5$53c17&n?vGgQTUjLb&}&=nLRnnfA}Hf-@ks=o^hAk^ii5K3 z5`77}N-qdf81J~2E?ktpgsMcb ztjAxGbNj7GTSGZY%3qi*Dk87IpL-&y_#VPex2TTv1quuN?y2;m9~H&h2tAjA`_5G) zo{C)M4qibchnLCJv3)%9No(OuE6!U^DeH>l5&xHDuYCe>wbx_a@&?wuFJT>e(dBSw zi`(e!QaWvyMR~oVGKy;7qo|d;Ux&*8t%Wm3JQd{^&ylU}Eg6WE*SzR*CWtqp(t_e` zGPS)4Q@eDiZN_$wbm)b{E^?@mrmC>Zksz+8H%~p;;)5uEP<$B`EEfGy#ng^&8b(pP z0&TZUXVt6N4$19`7D{bEgojaqiEYEE^vStZMpXNf%*e;|Dy*kSGz`lTZx1V8EMcPP82^x3uk`z zYIneglWs@!nnJoFbc>(Ktw+|*Qd$e=6~#2X6?YCVqG3^ys2Wbk>?(xXDt(%7#&%yB z(hwdloF1xFK{^Ffezpw{t`M(~e@`cTI%HZpC;?R5U!lUFH^TVjo8dk#g1+J0P=2AH zbU59^SGmOih12&gwBb)>2wf^8PmV|wjU(td^nhi=Zn1p?U3BK+%1yM45W{C(DO#hc zk?E|y6YUd!MXy8?dT@9y<U0-c>guDE>n)1g?;M!AsGFZqYr0 znxYsORajZq3@ftzjA4ik9a^Pr6-~9X) z1>*COd|A~)*8aa>?bsvNzhT`2Pt{bZv0N83H=i0UZI#8S>wa-t3?1q};adAU)}_KPg0%yb`&9h702Rk*NhM2QT$w z78Mo;MP*EScAj`IW=WyXw?=ju6#LgP>S}z6X9b-h=@L}@K!LW%yoLAXZTl$BTk|Mt z^&vFYkc>DalUh#6-kZ12N9nxvjN-g~PqHqVw>BxL*Ll190Lt6_2bg)g{Q%@`;{jCm zGKy+SjG4FBM;UqR93}I%dld5a!~sL{_VNLC-rk^y^whzERPl3+IhQ~?-lj+^=maU8 zn4J;#9JtCCSm7^NEw&vZPgk`k2lYx`*CH zyZfmJ5>9Gi{Rgg26zgNDBm7I&t8Lgn=z4D~b>KzR?>;~t?>vbDzHKWKGDSQen<)Mr zD$?ZywBZ&z4=fP3#8TycB(^A!;aTn$uaQ1fkF#dyee&G-4#g9(B-blXt$)VK zKi7=L$YcFzs^s#7U)_NuwQj?d7)QEE3n=%21x?FfT&az&j3-r+zne4LixL=P|qq-+wLr zhJn*VV^$21#B~SbtXFn0)yVrCWbV7yVVXBe^J53oXu?NFMBH|8uyBoAJVE~7*WtMQ zPHW*zND%KGJdHlvLHnzpN3tuMur9B_2M!wVrLQn>7yH}6#dLX(&h{_(cER4>8b|B? zk|XJx`cuSb2QLrODDAt0yh193sKZY)v z@{84|X5$#jqD<3nou;qHP?~Mp{;>F5$((_2#Tu?@l$X#r6I0Ago=0z>c*X$ zWkcS440ZAw51}?#7|2t@i2D!8FA$H>F5enDg}KE|hXln_q^r5%NYZs(d!)nd7a!1$ zl8>nHTvNo)W2o0@IV6}%BWLQQ-KUFB4q5F+LHCf?f4;?N;pXo#T9_hkJ~UBO97=n? zlzYEcduwR#rbFq(Ph&T6&!K2_^>F%ZJPoF|(N@iS(a2Ht2wGR(f^}2*2nrA#evsx_ z#g0R9sU&t%Anw(VdWcNKyJK)^#oPV}g5icO52m_Z?>FZas{2 z4;@C0;zm@VrYfu}WSKU1jm4f;gdtnu8dNJ9)O>sx&C}!+=6Hg+LGc-B%ilzbOWWv6 zAI|JTacvxiPjsac$P+ilQ3HLO48!T*s9o!eEck$PuG|PmIXAYA?c=6g{G=3Lv z9p=wo=?+kP6Ym{XD84!@Aa0c*iW&;6?*Sa|)>n|Wvc|C#<8tcFSJPA?rR>+Z6$Js_ z{u9n}xYhUR7;-NEcqFZBo`$^U2Q-NO&#(^da5(6^*K{}yOL`BX-vyHw=BnatI(#|C z6ux|4U?t4~iTcBH=>o(b^kL9ZNKHAwL@j=+Y~3SEwT&p>GI9*&dohATqWpaX|?+6q(&Gu5-kmjKHg}fX8gQnWiitfWN zHjJec{#Y8pe?i%d@QHyV=*mEB8e6bBKQDI;#Yy8kGFRLs>;9%gNZMLYu1+^KsY3A~ z$#;;wu@07+hhWL}t`I+sMQ!|zETvmuseKd{gm%+7b=h$HI1#ZNHFj*S_-kyjxO*HO zyIT0}e)tdvrg6oy<0u;O=r~k|7sy=s48D%i*hIf7%F%a>3yM$4((!Ltx*D-=e*$(S zqJJC`v4`wUFTgVJBGxV2$R35LyT^G8@_l00xLi>(UQH;YG33%^BbkHZw(-Fny2ia+ zRE{r3(l?B!*q@RyJvm$@v2#3YU%1S zTeOa&-QtJw)V29N*;Ey-KN53L?iDm{7Wa~C*=8Kow$G2Cp!k5ka-?kQtz`XAANr3U z-;@2v>F9RozDM_wQxkdf8}g~Y1qbbk7vb3@uT~OI)2=rkb^0`RtvHH;`;Y>1O-XQz zz9SP8Xqd;g(xXnJp}0MpcGH(77WzCiTl(%;a(duM+0f~7?Z`D^4+Z-46X=m&e;DfrA3nxG zm5;`M@h)-oMgp2o75^sa`3eoR^&6bGa8ZZ}HfpM$#Otju$f@ytIMsXzCw2O{`e=P3 zDm|L2*lXyVYQB=ymF7lQ(YW@(qw{>SFV$o8T5{}t1m`=C*m5*q%kq`Q8)R#v^RS4* zRn9ZAdv0zs_R;}xcTUSc>Czp+2SkmuD%LqorX8XJf4(-(B$SKVC#q?EcsTyX^rAL#TZ zwj5t5c1)t_2pT{BaaoG4Y> z$TigCgepv%4fjx^z$_ciJP)17r?XHx7@6pJ8c}pULxFR5c8m)In)xvqYa``jmJ*RE%|&wb`3)n8%S)-CQkX~jy>O!m?@5pX$=BDzna!lu3L zFQD=Feu)MYLx(2g(Dj`};}LNkZDUj--ad)OgZE4p5zF1;n-kT9(2XY* zh=(Ur(PPp|G|Oh#RDm&XyBzuU-b&|CS+ws?Ua7~wA5NB~w1adtC8MFE(JrN&4!~b~ zy{%tq4zFmGu2b;NDU^Z^a%g?^Fp9hRJvnlEpH65L z%crO4SiU=Du!Md(MaJ|SY09b&8;q&-6pHCDMBjK21=Le|5Q=i~2ZgVlI3O6Hs)6#ar&1Y;TeJ@zTEM7?Zl^v@-j&xO1)(qTIji#i zBWRR>bbgUQ<1O(?LV)^$ugR-!J*6;0mhe*vg&y&1f=cH#Q|M^@h!U&rLt)bN<^5CC zG2KX}0oq9!`5EhhAK*Yq;Y5e0$fNlRxs^z_YUx&TZ5*fJE3&kK=rU!cPkc8;L}rV} zrszYlZHi1z>lAqyKAS=(S@8!+dVZu|J{pl-9HcuqG?b(YqON~V;WquisVi1cMS1B| z$Z1Xnr!#ugK|Xu()~UHLW{dYu#mR#vGbt~5bayfPa#XIbPSsoMDU)iOE*9y4-;fAb z`B2T4L>g-puDXJTJ-EwFfxSvif`<16g>)@KH}rU#{>{n7LAPi~qzciCw%_+IF1MPW zL;u*ZbF9NXwTRAEy;G@5zAgJEx`a@NS$sKFg)MeX)&0A44oxGeJhgUgmJ=^tv3Xiv zA_m{;QhX~p^k78e@&&Tpt2{K(K2=TrTsJKso}E@CPnA>}h2lTt+O`XcY5oP>4~mhd zqJNu4_q*xp>n}2gdQf#rA3?V=@FvzFd@#~Q7k7MpRC!u9e^VZVY z9#73s<*GT2HV5sSP7}_&6*OgW8s<3MqW(1Ma(_d)G~9>qyD06{i+q9x)chSvCDC12 z6c9I@jxK_p9&)ds@gqIiRDL?mFwun@Wz$zE=ZL7syz_JsA)gPRCtsGsTkJV)?-kuD z`4oaEIXx(Hm`fd8u2sj4bv0_mCJK-gh!V)SNfJ{(Dh<;!L)}bo;JgDqo8_pQ4y=Ta38z$HGjZruYy+WH^zhh9_Dc4QE zV#W&{?l*&~KBfAFT*FsO)xa5p7e+hI;2M6%bUGF9LP!HYMmi{E4YZ?f6DnB^U6)V< za*nA{uG_Y|F#Muh^5X63^3Mn4-QEK4+85+4i=U>`jT>qf@>by+)BWO;=>hQ@c~yKO zD{H5$AGxc<-7~1wi2G+yZ}23}8Ey6W_}#AhqiEJU!A+O&&ywkVxpTu4gFF8-gJz4w z3p1vQb~1Nw97mdxN5(nu&Ro8-EnrL`sMgUfJvZh?sqNoz7M&hGKbTTA z$1TdwLYvFQwWT|orVv-G5Mi?S-iJZw@84n_s>D@lXai#Ix$kJw&7PmJ#C`s0sONMa z>a5&3$@A29KS^JF5+&U56B1W1MU`@0^7K)ZP?-kk+~=Pm9+|1PHqS)Q8x&h-(nQSA zytwDh&lJ69Nuk(t7ETp-{);9qC|Ysv%pl$QrL-3X{L=G*nbgmTXJ@*^7nFLM8iqNj zE^OWBPnjmZJj*RQStWz0`5O(dWes@v$-x@X_BRnZd+}oT3VD=u4n_Z&>Ee~MmeBK4 z!3>%Pq@+=piK6SQjC8T-Z!|QOCk9n3ri%9|BN-u4;d*N(RfA-SZ z;_0*L!lM_3T>3DksmeZ!cDPr|IbP}>J%NH;k9eDWO6b?^X!P*`{idC~vJ^j@?Z<@= z4FfUpN?#`xEuSEsUU|ftw&O$|-bzD-=sC09qUr3pnHj3Q-Z=Zh^Th{e(}?nqv$<{F zcFx|hJ5D^Rzf$g%=THU5Jt?ZT8_vNAmTsZcoI|Z+me_PQ%_5yc2l)fkkM1|ssG=;1 zZs5qY(QVKq;Y?jJPh6F>ZK*M7C3RN%47{Cu>KaGUlxQ<; z?UK3q{smO18^TyWDc2v-TDTJ3a~92=w?yt|D6)r&?pE15<*v(KmNZcmYW?i_O2NVb}%F`DbT z6CFimGldb6?~#ocr>V=`Q^bq23k&^gX|{q+MSLmu>TEs7|0add_!;J*8otCl)D&^e zoJ0zF{T%8iUq?T;`!+dD@1;JAdfNx)PNY{RTDWjR1ojA+64CSNGeW~z}U)38gyUz72OT2NHXrSf?nLqEEPoExA~5uHea;zios--ClKM`y3jrAIAPpDDYE z4l;MiadPX=NNKo2j+0+R<*#f*)ZPO3g>!;C)Iyzm5ecvfR()Sg%rB~!n?#96i(R( zR4ZM0-r$FG2Pa*sQ-bu!lpI1A(ESLpGiC40#P##3z#l`k>bmb>2ld@_2Y`0fKZo*Z zdmE?K&*W(%H$RbPzr|bg>8=uu%fx&0gUeL`eN6tl=v?L!+vS+4r71u7n%!NCc<0(p!RH>!-*7K+$ zsm;62qyBq4s#*U{=uXn8(+-Mv&ciuZRjm&4*wlzj|AN!F9s!8m=gF{sKactsdB^s? z^VH)zZt>}PvT4d|yXAOZ+$}<>l;1~D-9LR6VYSkFZ&=|}8P+T0)bJJ()4F9e^fP^G=6rAjSDH_ zd#N`SZ_rll)#&x*96&()ypRU=bVGr!BXD^CT8QgTpWE+SMOVdc(V9wK(6wn)%Jd7; zRQK?E#?;Hu)52NS^_x!}uX$~(3MD96jStM?~}z@`Wy zFrs=-jcDY$3Qg1b_X6r7RFr+`viqWROclS7r2A#+t)f#GyJ@m<;Sy1qzHkXPQx}U3 z=_)^T0hg}w;}&h{bfHI6`II1f+>I{Ly3>(H>QSi}kRn+hzmX}Tr)M}Wnf|-Zry~B7 zPVaR6A6k@yyE@|iMY$`*wdvH^&<#Ox-}%LPc%F<}KOIO>ve+fQl$rQOW&$S)8T?a= z^VMlX(sSe%lEaQ`y1#iyx_p2erDjqevvR~x%2u<8%# zJbd)5L^Nr!b;cZV^_j`?z|x1h=c?PV8_uNR3zf^6De3=pEzowR9L;=wW~$ivw=}US zDLr+L=uA2v!_M3*<=s;EB2}B{AS8${lW0_@+67%c&dQ+SFg*^2zL*{j6+h0pP&_u< zBi^08Tx^|_O;1TC(>UbQx%zVx>=kjeqT&C zj0@@fq#vBXlch)~wO=}6J-USMpwop2wfq@=>bf3ZLc_=#PTbE)F03u$aSfa~kp-B|bigmv9dQFJF!y)*GJc~t&N*WOMVBi3Dr6P24POdicW zpaM3Lxk=u5Ywm}%^bf2{1}K1HDoC79#a9<1_RGa*7vkym??}-oBil`DJhMYjtK777 zbxr~G5X;vVQNMHhQi@Xs+M&_|M;DC+#obHsY6E5+>X+iW_UWYk%PRa~<|3WD=<6NI9hI_oLJb2~co(uI1L-mDpKwr8rU#08g3k$_x z7t(0$B}9(Ysb|XZ?9It_m-zB?=*}huLDPLYe`S~8wvUYSzihW%LeHq|+f;dpoJF@o+i(e0 zG@0tgTj)Y}gq-9PHJOy5H!o6cTx_KRkq=ksBy7LfpSzs;;)`XF;)jcAI#!lJ=n{G# zjAlzODPGNc?p~(1?q5d3xVvQLx1xO1w5A$op`MCsE|p_0Y*WioW8C$ZQdxb7Nn?6I zklOV!deV|cZS-W)Etk@u(u;8>og~!F#71&1djKcvPP+L`S9{-5of_#8cb!3rt)5N; zUB33-Hr=Ohp^BHM=ZKOSxnk!9etK+Qlv4%YeyKVi(DORkJzxe2~py;}c>dNECP`dSFZta)l6c^GX_?KOYha39He)W2& zLf7L_r*b!qFzC@IOcmbgra^2q?bslng?exc?RL4vFPHhn!|p=5WBUZoQQ{f$=(!Wq zb4|}+9+4gg4~Tc&E9kEDhh(}_4lYaO{nT>4pSqhK&Hdd?{m63hyqoHj*x_Emx7E3G z{@$Gv5TPs@GrWUx?CHch{1FX(XrN(E!EVm7r(m~cnNzUOQW#~Gm_1fU(k))dl24e> zJ4Ey%110rGc>FA<7k5R{bqK1!?H+1Fx1x?TZO0KTeHypxR8`{JXOB?tN8>GeN;xPt zdx}=l5Kf-^k?*Y@al$Nd$ZWSbe~$Rdku2_xpz|dzzNU&T5%k>WYU)Ah%7Cg~x*9;x z$wM?moGWTwbXIyJazX0g^Q!0N7G0=j_2~zWQpMJh3k$`2BNvJAf$8GiSUQ=~48iEd z;+xS+#0>{!&{Gxu|9-^3{-6s~p2bTCEfwD$M8m&>J>s!3%fnN zSp1qr(`NEsfVkVUT0HB)Tj2EGYhz?ZR8n+wX2PU0M@)2|vof;G5gij3L+j`mUef)2 zj#B4tXUJ9Wiq08u#w3MeN)PRI^*Xa=CUrPw_B#5VyIt$Tjv7amqtnslsEgPg(Gt}V zQ%>&wN=NFln2h+CMn^I&bqZ6tf-L9}RdReP8X40gL zR#&;B-qGSHi)eC{I(sA9on?-a5n1I?l?S-$9RrTS3WvYJnUk8@>8z%NR5;cwD|2|O z9brdYd{Spble21gnWNX`k9N6S(X^ufs~jnfj!Bh{N=L?|b*XiZ^jc>{M97g8otzvu zVdjJ}naK$gVxlKcNKT5M(BzoVIhfYu<+pn&YZr;veEU<3Rl~(q|7o$tD`xh&Q<2fsi)&n zi`bTzs4>W@Z%?dvea2ndOdknKLKEHbusFM|8$a z>T)(Z%bf#sxYm_KlsXHW53F@2)Wycd4Mfzss-kP1jS-=UX6L%X>FfHP{imfjN2R3H zM70briKrgg>Zpq7ceXoPA_g2GXUVXf23I|$JLD{PH6GSHs@buu*-;ZYv&K~)UFK+` z_`B$c^*H+A>-Adxi6~6S?B6^Rt_(9)EyLd zlsS7wv_y9v9Ci&j+atRo%SYB7xO-%JgQNb~*68}kK38hJV|t&fA!5RW@=+bfk11?( zB$PTjqpKWrd>b9pTd7!bX695l2ApA6Jr(R>yJK6U`bJhHR*r9tY>TWO-4s(krrXu( zC~-DBdxq6GD;(_+O(QEKsv_DQeXj7t0Y}H7osm@5yJNbCRUg>yXm)lxrq>==HLiX{ z{R!>P`Xieo%SKiYYaF@TSv#y`MA@)DI`WmrbUDKZ^|}21Qdfy1r-^DN{c5zMd{l|6 z+u@Jtbv7McHmp3d!I9HIm9>hJ+Cin;>@0B>c00==vzmstMdXA>);l_)`y;v{$|DCx z^#;atJKCIKYP8M6dz`(_u82@%Yh-<7rK9%539S*GuG)x(i1w(e;dN2H&ggN=CQPr7 zi0eKuHKih=)e)vf*6OGqRWf{cWSw(zxue}tM!DTh)wp(4{m6Fb!0GYT5q&Y#wTz~$ zyE?|SyE?~)A}Sr3B@tcJ9($r%90RTi1JsFh&I&o|osF>_j*J#(^Y96jx5)#p@Bt+w ztDS9Bt12R^N3}$C#qM_1#f5kk8 zIqEbO-ZMa9j%-p-tGzw+g^aA?8UBD}I+b zqgL@Q<}T)ubY8;wD&e~72Ztd3H6FIn3J|D{wH&Y`7!2B=2m8ZgYy5Lx%O$rCnT%*IvW)yGxsxR zGePwQhX9%u0+ zi>Fzf#9a7>N>2uJZL8wTnPb}&|I^}IEv~Wn8H-=n{EiCm1LnAQ6?ZeIeysRs<{~`C zL(3kEhtaqQ^5ZFS9tu;v$Pf z%*mrw`QB>rgBEYKxY^?OEdJ8sUoDQNaWu+D$A7rRCt7@##i`7tV^sPtwm8S)VvDb_ zxZL6m7S~z4&Egh|-?R90i+`~APm4#+SLLJg7iaNt%x#?iX%^46INjn)E&jX3Yb?Ib z;tGo&w7A~l?H0db@rTTDhp6NE6Z6bC#Ro1>tK{e+zQ2qGRI%3_+;kL zI>j@YyRK5agn8O^ioKd|P`t|GYb?IQ;zulgmN|8k3hxc(`WF;`z&x&5@#oCVuPENd zT=k}6u~6k#^8w5aY@f(n_#fpz#p1s)x3E3c;!7<4J9F<_D!dZrX>TjO(c;^fYuWxV zb3?cC-^yIRQ}L_J_1`G&wD?DhqtaCVwf|U)6D*#~T=<&`|03qyhegQoLKbu7Sj8)u zyH8MjC3D;q#kVqNou+s*^UQM;cUnxh8f5)kH%r;4FxRCho@Md*%w5ZrJ)5~aUvUw0 zS+U}4nFm%YzKywmjpDm4u4c~of688Gaihh}%xl>HEsH<0cqjAZ5*2)5nukOGH0CJ92Qk;3tav>0ngqqCFsIO)9$4lu_t4|rSkjrN(UVzN zE@iHyN0G4no!LuI1Ys#=&Y?$iu!NX9>CPpV+n9^86hF!wyIk>$n%64+ggN7S#b0Ur z4T^tcE-6?12Xjt^;z;`Kd6b8EO7R5dgl&pbm_xf1=Q7tG6)DquHFN(2#kVo9o2a;& zIewDjEzII{#s6k5Jx}q6%$bW7f5jYT{*5{PB4v-Ic~qpo{%OT0FjqXIIFY%#Q87Iv zE&Xe@DPGK6*`(OdyzE8A*D*K0r1)0mgl5H6%(1U1-o{+sqWERzWp5~chq-B|;y<+i zFNzP!Q0eRFS9}U{{gF|!y#Ho#D)YKU%AUzw#azfd^L%Ar$6U8m@g2c{}+~86C z40C$6;{Pz$_!RG89w<<}Tl)tTN6@@Aj?d(f;#lUos}zrCPQF_43CvZ@r!mKuDEqn0 zq3aZ1z?^Ws;%w&18x*gycs=vL&B|WIJpDPvwanq~6>nu;g9m?TX=aX(945JgxqYP@I@*;VdhhryO`%NiwqTi z0dqX_M&=~uHs&nmFPTHkzcW`eA9yjx&wLzn7xS6S;sO=_V&-_}V&){~Qsyk?D&`P# z8*?@DH_TyX=OrpVUCa}h#f2*VvzX(VGnkW@*Dz->Z(t5FZ)2`z{(w2m{5^9Q^U=#x zdc;x{|8(Yf=1ZBAm~UXtV&23YVs2-yX8wse%zV(LoPXwt%pz08e-3jz^HSy{=6^6} zG2g`;V&24D&HNs7n0ee~96$2{W^s{<-@_cwd?j-db2)Ps^CQe5=4R$<=1%4?^N-A3 z%=CnmY_H;C6+gWvBsre>Jmw_kOPRBnuVoG~KgL|m{1$VV`8(z==7Y01{!3K+$1}$> z|BX3`Ih{F+c{y{4`Jc?y%(pRznIB>9Vt$2LEK~9KGRHF?=uzoQVxGdB#k_zy#C$h% zHS;sfVdf8*yO@7w7MH5{W0!OJGoQ$u#GK5W#e6w)hMUVdm}3UCbTK;xZNg zx6JX(BeOaG%rls?m@i@uF|TE=X1