deepchords sdk demo修改
authorliangzhenying <867174124@qq.com>
Fri, 16 Jan 2026 08:52:51 +0000 (16:52 +0800)
committerliangzhenying <867174124@qq.com>
Fri, 16 Jan 2026 08:52:51 +0000 (16:52 +0800)
84 files changed:
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example.xcodeproj/project.pbxproj
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/DeepChordsSdk
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Frameworks/StarburstSdk.framework/StarburstSdk
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Info.plist
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.abi.json
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.private.swiftinterface
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftdoc
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftinterface
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftmodule
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/_CodeSignature/CodeDirectory
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/_CodeSignature/CodeResources
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/_CodeSignature/CodeSignature
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/Info.plist [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncodeConfig.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusFormat.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusToOgg.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWav.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Info.plist [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/JLAudioUnitKit [new file with mode: 0755]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Modules/module.modulemap [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/readme.txt [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusEncodeConfig.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusFormat.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusToOgg.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLPcmToWav.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Info.plist [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/JLAudioUnitKit [new file with mode: 0755]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Modules/module.modulemap [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/_CodeSignature/CodeResources [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/readme.txt [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/SceneDelegate.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/BaseVC.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/BleRecordVC.swift [moved from DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/EarPhoneRecordVC.swift with 80% similarity]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/CallRecordVC.swift [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/ChatVC.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/DeviceInfo/DeviceInfoVC.swift [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/DeviceInfo/EqVC.swift [moved from DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/EqVC.swift with 100% similarity]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/DeviceInfo/MusicPlayerVC.swift [moved from DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/PlayerVC.swift with 98% similarity]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/DeviceInfo/MusicVC.swift [moved from DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/MusicVC.swift with 96% similarity]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/HomeVC.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/LanuageVC.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/PhoneRecordVC.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/ScanVC.swift [moved from DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/DeviceListVC.swift with 84% similarity]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/TtsVC.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/BleManager.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/CallRecordManager.swift [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/ChatManager.swift [moved from DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/DcChatManager.swift with 67% similarity]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/DcCall.swift [new file with mode: 0644]
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/DcSdkManager.swift
DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/OpusTools.swift [new file with mode: 0644]
DeepChordsSdk_iOS/document/DeepChordsSdk_iOS技术文档.pdf [new file with mode: 0644]
ShenYin/DeepChordsSdk/BleSender.swift
ShenYin/DeepChordsSdk/DCBleRecord.swift
ShenYin/DeepChordsSdk/DCCallRecord.swift
ShenYin/DeepChordsSdk/DCChat.swift
ShenYin/DeepChordsSdk/DCDevice.swift
ShenYin/DeepChordsSdk/DCText.swift
ShenYin/DeepChordsSdk/DCZh2En.swift
ShenYin/ShenYin/Sdk/DcSdk/DcChatManager.swift
ShenYin/ShenYin/Sdk/DcSdk/DcThly.swift
ShenYin/ShenYin/Sdk/DcSdk/DcXcly.swift
ShenYin/ShenYin/Sdk/DcSdk/VC/DcCallingRecordVC.swift
ShenYin/ShenYin/Sdk/DcSdk/VC/DcDialogTranslateVC.swift
ShenYin/ShenYin/UI/Home/Root/CurrentDeviceView.swift
ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Contents.json
ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Rectangle 1.png [deleted file]
ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Rectangle.png [deleted file]
ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Slice 112@2x.png [new file with mode: 0644]
ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Slice 112@3x.png [new file with mode: 0644]
document/豆包APP自定义协议.txt [new file with mode: 0644]
document/账号.txt [new file with mode: 0644]

index cd1f924..1d5ca53 100644 (file)
                };
 /* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
 
+/* Begin PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet section */
+               3F4BD21B2F1A2C2900E2164E /* Exceptions for "Example" folder in "Embed Frameworks" phase from "Example" target */ = {
+                       isa = PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet;
+                       attributesByRelativePath = {
+                               DeepChordsSdk/JLAudioUnitKit.xcframework = (CodeSignOnCopy, RemoveHeadersOnCopy, );
+                       };
+                       buildPhase = 3F3F14492ED5AC570038A1C8 /* Embed Frameworks */;
+                       membershipExceptions = (
+                               DeepChordsSdk/JLAudioUnitKit.xcframework,
+                       );
+               };
+/* End PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet section */
+
 /* Begin PBXFileSystemSynchronizedRootGroup section */
                3F3F01E52ED451920038A1C8 /* Example */ = {
                        isa = PBXFileSystemSynchronizedRootGroup;
                        exceptions = (
                                3F3F01F52ED451930038A1C8 /* Exceptions for "Example" folder in "Example" target */,
+                               3F4BD21B2F1A2C2900E2164E /* Exceptions for "Example" folder in "Embed Frameworks" phase from "Example" target */,
                        );
                        path = Example;
                        sourceTree = "<group>";
index 6e35f43..69ecb70 100644 (file)
Binary files a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/DeepChordsSdk and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/DeepChordsSdk differ
index e7f6b56..5b81461 100755 (executable)
Binary files a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Frameworks/StarburstSdk.framework/StarburstSdk and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Frameworks/StarburstSdk.framework/StarburstSdk differ
index 31956a7..0cff9b2 100644 (file)
Binary files a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Info.plist and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Info.plist differ
index 4fea350..64a8f92 100644 (file)
Binary files a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo differ
index 66c0d6e..1c4aa47 100644 (file)
@@ -6,41 +6,96 @@
     "children": [
       {
         "kind": "Import",
-        "name": "StarburstSdk",
-        "printedName": "StarburstSdk",
+        "name": "Foundation",
+        "printedName": "Foundation",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
+      {
+        "kind": "Import",
+        "name": "Foundation",
+        "printedName": "Foundation",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
+      {
+        "kind": "Import",
+        "name": "Foundation",
+        "printedName": "Foundation",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
+      {
+        "kind": "Import",
+        "name": "Foundation",
+        "printedName": "Foundation",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
+      {
+        "kind": "Import",
+        "name": "Foundation",
+        "printedName": "Foundation",
         "declKind": "Import",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "RawDocComment"
         ]
       },
+      {
+        "kind": "Import",
+        "name": "CoreBluetooth",
+        "printedName": "CoreBluetooth",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk"
+      },
+      {
+        "kind": "Import",
+        "name": "StarburstSdk",
+        "printedName": "StarburstSdk",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk"
+      },
       {
         "kind": "TypeDecl",
-        "name": "DCBleRecord",
-        "printedName": "DCBleRecord",
+        "name": "DCBleManager",
+        "printedName": "DCBleManager",
         "children": [
           {
             "kind": "Var",
-            "name": "shared",
-            "printedName": "shared",
+            "name": "serviceUUID",
+            "printedName": "serviceUUID",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCBleRecord",
-                "printedName": "DeepChordsSdk.DCBleRecord",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC6sharedACvpZ",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC6sharedACvpZ",
+            "usr": "s:13DeepChordsSdk12DCBleManagerC11serviceUUIDSSvpZ",
+            "mangledName": "$s13DeepChordsSdk12DCBleManagerC11serviceUUIDSSvpZ",
             "moduleName": "DeepChordsSdk",
             "static": true,
             "declAttributes": [
               "HasInitialValue",
               "Final",
               "HasStorage",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
             "isLet": true,
             "hasStorage": true,
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCBleRecord",
-                    "printedName": "DeepChordsSdk.DCBleRecord",
-                    "usr": "s:13DeepChordsSdk11DCBleRecordC"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC6sharedACvgZ",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC6sharedACvgZ",
+                "usr": "s:13DeepChordsSdk12DCBleManagerC11serviceUUIDSSvgZ",
+                "mangledName": "$s13DeepChordsSdk12DCBleManagerC11serviceUUIDSSvgZ",
                 "moduleName": "DeepChordsSdk",
                 "static": true,
                 "implicit": true,
           },
           {
             "kind": "Var",
-            "name": "fromLanguage",
-            "printedName": "fromLanguage",
+            "name": "writeUUID",
+            "printedName": "writeUUID",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC12fromLanguageSSvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC12fromLanguageSSvp",
+            "usr": "s:13DeepChordsSdk12DCBleManagerC9writeUUIDSSvpZ",
+            "mangledName": "$s13DeepChordsSdk12DCBleManagerC9writeUUIDSSvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
               "HasInitialValue",
+              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
+            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC12fromLanguageSSvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12fromLanguageSSvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC12fromLanguageSSvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12fromLanguageSSvs",
+                "usr": "s:13DeepChordsSdk12DCBleManagerC9writeUUIDSSvgZ",
+                "mangledName": "$s13DeepChordsSdk12DCBleManagerC9writeUUIDSSvgZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
+                "declAttributes": [
+                  "Final"
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC12fromLanguageSSvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12fromLanguageSSvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                "accessorKind": "get"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "toLanguage",
-            "printedName": "toLanguage",
+            "name": "notifyUUID",
+            "printedName": "notifyUUID",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC10toLanguageSSvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC10toLanguageSSvp",
+            "usr": "s:13DeepChordsSdk12DCBleManagerC10notifyUUIDSSvpZ",
+            "mangledName": "$s13DeepChordsSdk12DCBleManagerC10notifyUUIDSSvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
               "HasInitialValue",
+              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
+            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC10toLanguageSSvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC10toLanguageSSvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC10toLanguageSSvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC10toLanguageSSvs",
+                "usr": "s:13DeepChordsSdk12DCBleManagerC10notifyUUIDSSvgZ",
+                "mangledName": "$s13DeepChordsSdk12DCBleManagerC10notifyUUIDSSvgZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
+                "declAttributes": [
+                  "Final"
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC10toLanguageSSvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC10toLanguageSSvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                "accessorKind": "get"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "isTranslate",
-            "printedName": "isTranslate",
+            "name": "shared",
+            "printedName": "shared",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
+                "name": "DCBleManager",
+                "printedName": "DeepChordsSdk.DCBleManager",
+                "usr": "s:13DeepChordsSdk12DCBleManagerC"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC11isTranslateSbvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC11isTranslateSbvp",
+            "usr": "s:13DeepChordsSdk12DCBleManagerC6sharedACvpZ",
+            "mangledName": "$s13DeepChordsSdk12DCBleManagerC6sharedACvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
               "HasInitialValue",
+              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
+            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "DCBleManager",
+                    "printedName": "DeepChordsSdk.DCBleManager",
+                    "usr": "s:13DeepChordsSdk12DCBleManagerC"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC11isTranslateSbvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11isTranslateSbvg",
+                "usr": "s:13DeepChordsSdk12DCBleManagerC6sharedACvgZ",
+                "mangledName": "$s13DeepChordsSdk12DCBleManagerC6sharedACvgZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
                 "accessorKind": "get"
+              }
+            ]
+          },
+          {
+            "kind": "Function",
+            "name": "centralManager",
+            "printedName": "centralManager(_:didConnect:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
+                "kind": "TypeNominal",
+                "name": "CBCentralManager",
+                "printedName": "CoreBluetooth.CBCentralManager",
+                "usr": "c:objc(cs)CBCentralManager"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "CBPeripheral",
+                "printedName": "CoreBluetooth.CBPeripheral",
+                "usr": "c:objc(cs)CBPeripheral"
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk12DCBleManagerC07centralE0_10didConnectySo09CBCentralE0C_So12CBPeripheralCtF",
+            "mangledName": "$s13DeepChordsSdk12DCBleManagerC07centralE0_10didConnectySo09CBCentralE0C_So12CBPeripheralCtF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "centralManager",
+            "printedName": "centralManager(_:didDisconnectPeripheral:error:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "CBCentralManager",
+                "printedName": "CoreBluetooth.CBCentralManager",
+                "usr": "c:objc(cs)CBCentralManager"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "CBPeripheral",
+                "printedName": "CoreBluetooth.CBPeripheral",
+                "usr": "c:objc(cs)CBPeripheral"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "Optional",
+                "printedName": "(any Swift.Error)?",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
+                    "name": "Error",
+                    "printedName": "any Swift.Error",
+                    "usr": "s:s5ErrorP"
+                  }
+                ],
+                "usr": "s:Sq"
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk12DCBleManagerC07centralE0_23didDisconnectPeripheral5errorySo09CBCentralE0C_So12CBPeripheralCs5Error_pSgtF",
+            "mangledName": "$s13DeepChordsSdk12DCBleManagerC07centralE0_23didDisconnectPeripheral5errorySo09CBCentralE0C_So12CBPeripheralCs5Error_pSgtF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "peripheral",
+            "printedName": "peripheral(_:didDiscoverCharacteristicsFor:error:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "CBPeripheral",
+                "printedName": "CoreBluetooth.CBPeripheral",
+                "usr": "c:objc(cs)CBPeripheral"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "CBService",
+                "printedName": "CoreBluetooth.CBService",
+                "usr": "c:objc(cs)CBService"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "Optional",
+                "printedName": "(any Swift.Error)?",
+                "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "Error",
+                    "printedName": "any Swift.Error",
+                    "usr": "s:s5ErrorP"
                   }
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC11isTranslateSbvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11isTranslateSbvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
+                "usr": "s:Sq"
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk12DCBleManagerC10peripheral_29didDiscoverCharacteristicsFor5errorySo12CBPeripheralC_So9CBServiceCs5Error_pSgtF",
+            "mangledName": "$s13DeepChordsSdk12DCBleManagerC10peripheral_29didDiscoverCharacteristicsFor5errorySo12CBPeripheralC_So9CBServiceCs5Error_pSgtF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "peripheral",
+            "printedName": "peripheral(_:didUpdateValueFor:error:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
+                "kind": "TypeNominal",
+                "name": "CBPeripheral",
+                "printedName": "CoreBluetooth.CBPeripheral",
+                "usr": "c:objc(cs)CBPeripheral"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "CBCharacteristic",
+                "printedName": "CoreBluetooth.CBCharacteristic",
+                "usr": "c:objc(cs)CBCharacteristic"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "Optional",
+                "printedName": "(any Swift.Error)?",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
+                    "name": "Error",
+                    "printedName": "any Swift.Error",
+                    "usr": "s:s5ErrorP"
                   }
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC11isTranslateSbvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11isTranslateSbvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                "usr": "s:Sq"
               }
-            ]
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk12DCBleManagerC10peripheral_17didUpdateValueFor5errorySo12CBPeripheralC_So16CBCharacteristicCs5Error_pSgtF",
+            "mangledName": "$s13DeepChordsSdk12DCBleManagerC10peripheral_17didUpdateValueFor5errorySo12CBPeripheralC_So16CBCharacteristicCs5Error_pSgtF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          }
+        ],
+        "declKind": "Class",
+        "usr": "s:13DeepChordsSdk12DCBleManagerC",
+        "mangledName": "$s13DeepChordsSdk12DCBleManagerC",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "AccessControl",
+          "RawDocComment"
+        ],
+        "hasMissingDesignatedInitializers": true,
+        "conformances": [
+          {
+            "kind": "Conformance",
+            "name": "Copyable",
+            "printedName": "Copyable",
+            "usr": "s:s8CopyableP",
+            "mangledName": "$ss8CopyableP"
           },
+          {
+            "kind": "Conformance",
+            "name": "Escapable",
+            "printedName": "Escapable",
+            "usr": "s:s9EscapableP",
+            "mangledName": "$ss9EscapableP"
+          }
+        ]
+      },
+      {
+        "kind": "Import",
+        "name": "StarburstSdk",
+        "printedName": "StarburstSdk",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
+      {
+        "kind": "TypeDecl",
+        "name": "DCBleRecord",
+        "printedName": "DCBleRecord",
+        "children": [
           {
             "kind": "Var",
-            "name": "isTTs",
-            "printedName": "isTTs",
+            "name": "shared",
+            "printedName": "shared",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
+                "name": "DCBleRecord",
+                "printedName": "DeepChordsSdk.DCBleRecord",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC5isTTsSbvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC5isTTsSbvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC6sharedACvpZ",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC6sharedACvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
               "HasInitialValue",
+              "Final",
               "HasStorage",
-              "AccessControl",
-              "RawDocComment"
+              "AccessControl"
             ],
+            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "DCBleRecord",
+                    "printedName": "DeepChordsSdk.DCBleRecord",
+                    "usr": "s:13DeepChordsSdk11DCBleRecordC"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC5isTTsSbvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC5isTTsSbvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC6sharedACvgZ",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC6sharedACvgZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
                 "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
+              }
+            ]
+          },
+          {
+            "kind": "Var",
+            "name": "fromLanguage",
+            "printedName": "fromLanguage",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
+              }
+            ],
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC12fromLanguageSSvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC12fromLanguageSSvp",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "hasStorage": true,
+            "accessors": [
+              {
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC12fromLanguageSSvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12fromLanguageSSvg",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
                 "printedName": "Set()",
                 "children": [
                   {
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC5isTTsSbvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC5isTTsSbvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC12fromLanguageSSvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12fromLanguageSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC5isTTsSbvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC5isTTsSbvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC12fromLanguageSSvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12fromLanguageSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "ttsFormat",
-            "printedName": "ttsFormat",
+            "name": "toLanguage",
+            "printedName": "toLanguage",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC9ttsFormatSSvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC9ttsFormatSSvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC10toLanguageSSvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC10toLanguageSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC9ttsFormatSSvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC9ttsFormatSSvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC10toLanguageSSvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC10toLanguageSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC9ttsFormatSSvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC9ttsFormatSSvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC10toLanguageSSvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC10toLanguageSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC9ttsFormatSSvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC9ttsFormatSSvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC10toLanguageSSvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC10toLanguageSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "asrCallback",
-            "printedName": "asrCallback",
+            "name": "isTranslate",
+            "printedName": "isTranslate",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.String) -> ())?",
-                "children": [
-                  {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.String) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
-                      }
-                    ]
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC11isTranslateSbvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC11isTranslateSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC11isTranslateSbvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11isTranslateSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC11isTranslateSbvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11isTranslateSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC11isTranslateSbvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11isTranslateSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "translateCallback",
-            "printedName": "translateCallback",
+            "name": "isTTs",
+            "printedName": "isTTs",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.String) -> ())?",
-                "children": [
-                  {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.String) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
-                      }
-                    ]
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC5isTTsSbvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC5isTTsSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC5isTTsSbvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC5isTTsSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC5isTTsSbvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC5isTTsSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC5isTTsSbvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC5isTTsSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "asrSplitCallback",
-            "printedName": "asrSplitCallback",
+            "name": "ttsFormat",
+            "printedName": "ttsFormat",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
-                "children": [
-                  {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "DCResponseModel",
-                        "printedName": "DeepChordsSdk.DCResponseModel",
-                        "usr": "s:13DeepChordsSdk15DCResponseModelC"
-                      }
-                    ]
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA15DCResponseModelCcSgvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA15DCResponseModelCcSgvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC9ttsFormatSSvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC9ttsFormatSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "DCResponseModel",
-                            "printedName": "DeepChordsSdk.DCResponseModel",
-                            "usr": "s:13DeepChordsSdk15DCResponseModelC"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA15DCResponseModelCcSgvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA15DCResponseModelCcSgvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC9ttsFormatSSvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC9ttsFormatSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "DCResponseModel",
-                            "printedName": "DeepChordsSdk.DCResponseModel",
-                            "usr": "s:13DeepChordsSdk15DCResponseModelC"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA15DCResponseModelCcSgvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA15DCResponseModelCcSgvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC9ttsFormatSSvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC9ttsFormatSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA15DCResponseModelCcSgvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA15DCResponseModelCcSgvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC9ttsFormatSSvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC9ttsFormatSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "translateSplitCallback",
-            "printedName": "translateSplitCallback",
+            "name": "asrCallback",
+            "printedName": "asrCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                "printedName": "((Swift.String) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                    "printedName": "(Swift.String) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "DCResponseModel",
-                        "printedName": "DeepChordsSdk.DCResponseModel",
-                        "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA15DCResponseModelCcSgvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA15DCResponseModelCcSgvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "DCResponseModel",
-                            "printedName": "DeepChordsSdk.DCResponseModel",
-                            "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA15DCResponseModelCcSgvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA15DCResponseModelCcSgvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "DCResponseModel",
-                            "printedName": "DeepChordsSdk.DCResponseModel",
-                            "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA15DCResponseModelCcSgvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA15DCResponseModelCcSgvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA15DCResponseModelCcSgvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA15DCResponseModelCcSgvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC11asrCallbackySScSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "translateDataCallback",
-            "printedName": "translateDataCallback",
+            "name": "translateCallback",
+            "printedName": "translateCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Foundation.Data) -> ())?",
+                "printedName": "((Swift.String) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Foundation.Data) -> ()",
+                    "printedName": "(Swift.String) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "Data",
-                        "printedName": "Foundation.Data",
-                        "usr": "s:10Foundation4DataV"
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Foundation.Data) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Foundation.Data) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Data",
-                            "printedName": "Foundation.Data",
-                            "usr": "s:10Foundation4DataV"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Foundation.Data) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Foundation.Data) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Data",
-                            "printedName": "Foundation.Data",
-                            "usr": "s:10Foundation4DataV"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC17translateCallbackySScSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "codeCallback",
-            "printedName": "codeCallback",
+            "name": "asrSplitCallback",
+            "printedName": "asrSplitCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.Int) -> ())?",
+                "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.Int) -> ()",
+                    "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "Int",
-                        "printedName": "Swift.Int",
-                        "usr": "s:Si"
+                        "name": "DCAsrModel",
+                        "printedName": "DeepChordsSdk.DCAsrModel",
+                        "usr": "s:13DeepChordsSdk10DCAsrModelC"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA10DCAsrModelCcSgvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA10DCAsrModelCcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.Int) -> ())?",
+                    "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.Int) -> ()",
+                        "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
+                            "name": "DCAsrModel",
+                            "printedName": "DeepChordsSdk.DCAsrModel",
+                            "usr": "s:13DeepChordsSdk10DCAsrModelC"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA10DCAsrModelCcSgvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA10DCAsrModelCcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.Int) -> ())?",
+                    "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.Int) -> ()",
+                        "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
+                            "name": "DCAsrModel",
+                            "printedName": "DeepChordsSdk.DCAsrModel",
+                            "usr": "s:13DeepChordsSdk10DCAsrModelC"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA10DCAsrModelCcSgvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA10DCAsrModelCcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA10DCAsrModelCcSgvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16asrSplitCallbackyAA10DCAsrModelCcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "filePathCallBack",
-            "printedName": "filePathCallBack",
+            "name": "translateSplitCallback",
+            "printedName": "translateSplitCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.String?) -> ())?",
+                "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.String?) -> ()",
+                    "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "Optional",
-                        "printedName": "Swift.String?",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ],
-                        "usr": "s:Sq"
+                        "name": "DCAsrModel",
+                        "printedName": "DeepChordsSdk.DCAsrModel",
+                        "usr": "s:13DeepChordsSdk10DCAsrModelC"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA10DCAsrModelCcSgvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA10DCAsrModelCcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String?) -> ())?",
+                    "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String?) -> ()",
+                        "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Optional",
-                            "printedName": "Swift.String?",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              }
-                            ],
-                            "usr": "s:Sq"
+                            "name": "DCAsrModel",
+                            "printedName": "DeepChordsSdk.DCAsrModel",
+                            "usr": "s:13DeepChordsSdk10DCAsrModelC"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA10DCAsrModelCcSgvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA10DCAsrModelCcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String?) -> ())?",
+                    "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String?) -> ()",
+                        "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Optional",
-                            "printedName": "Swift.String?",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              }
-                            ],
-                            "usr": "s:Sq"
+                            "name": "DCAsrModel",
+                            "printedName": "DeepChordsSdk.DCAsrModel",
+                            "usr": "s:13DeepChordsSdk10DCAsrModelC"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA10DCAsrModelCcSgvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA10DCAsrModelCcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA10DCAsrModelCcSgvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC22translateSplitCallbackyAA10DCAsrModelCcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "filePath",
-            "printedName": "filePath",
+            "name": "translateDataCallback",
+            "printedName": "translateDataCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "Swift.String?",
+                "printedName": "((Foundation.Data) -> ())?",
                 "children": [
                   {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Foundation.Data) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Data",
+                        "printedName": "Foundation.Data",
+                        "usr": "s:10Foundation4DataV"
+                      }
+                    ]
                   }
                 ],
                 "usr": "s:Sq"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC8filePathSSSgvp",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC8filePathSSSgvp",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "Swift.String?",
+                    "printedName": "((Foundation.Data) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Foundation.Data) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Data",
+                            "printedName": "Foundation.Data",
+                            "usr": "s:10Foundation4DataV"
+                          }
+                        ]
                       }
                     ],
                     "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC8filePathSSSgvg",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC8filePathSSSgvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "Swift.String?",
+                    "printedName": "((Foundation.Data) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Foundation.Data) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Data",
+                            "printedName": "Foundation.Data",
+                            "usr": "s:10Foundation4DataV"
+                          }
+                        ]
                       }
                     ],
                     "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC8filePathSSSgvs",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC8filePathSSSgvs",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk11DCBleRecordC8filePathSSSgvM",
-                "mangledName": "$s13DeepChordsSdk11DCBleRecordC8filePathSSSgvM",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC21translateDataCallbacky10Foundation0G0VcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
             ]
           },
           {
-            "kind": "Function",
-            "name": "start",
-            "printedName": "start(type:recordPath:)",
+            "kind": "Var",
+            "name": "codeCallback",
+            "printedName": "codeCallback",
             "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Int",
-                "printedName": "Swift.Int",
-                "usr": "s:Si"
-              },
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "Swift.String?",
+                "printedName": "((Swift.Int) -> ())?",
                 "children": [
                   {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.Int) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Int",
+                        "printedName": "Swift.Int",
+                        "usr": "s:Si"
+                      }
+                    ]
                   }
                 ],
                 "usr": "s:Sq"
               }
             ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC5start4type10recordPathySi_SSSgtF",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC5start4type10recordPathySi_SSSgtF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "stop",
-            "printedName": "stop()",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk11DCBleRecordC4stopyyF",
-            "mangledName": "$s13DeepChordsSdk11DCBleRecordC4stopyyF",
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "funcSelfKind": "NonMutating"
-          }
-        ],
-        "declKind": "Class",
-        "usr": "s:13DeepChordsSdk11DCBleRecordC",
-        "mangledName": "$s13DeepChordsSdk11DCBleRecordC",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "AccessControl",
-          "RawDocComment"
-        ],
-        "hasMissingDesignatedInitializers": true,
-        "conformances": [
-          {
-            "kind": "Conformance",
-            "name": "Copyable",
-            "printedName": "Copyable",
-            "usr": "s:s8CopyableP",
-            "mangledName": "$ss8CopyableP"
-          },
-          {
-            "kind": "Conformance",
-            "name": "Escapable",
-            "printedName": "Escapable",
-            "usr": "s:s9EscapableP",
-            "mangledName": "$ss9EscapableP"
-          }
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "Foundation",
-        "printedName": "Foundation",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "TypeDecl",
-        "name": "DCCode",
-        "printedName": "DCCode",
-        "children": [
-          {
-            "kind": "Var",
-            "name": "description",
-            "printedName": "description",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              }
-            ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCCodeO11descriptionSSvp",
-            "mangledName": "$s13DeepChordsSdk6DCCodeO11descriptionSSvp",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl"
-            ],
+            "hasStorage": true,
             "accessors": [
               {
                 "kind": "Accessor",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Optional",
+                    "printedName": "((Swift.Int) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.Int) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCCodeO11descriptionSSvg",
-                "mangledName": "$s13DeepChordsSdk6DCCodeO11descriptionSSvg",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvg",
                 "moduleName": "DeepChordsSdk",
+                "implicit": true,
                 "accessorKind": "get"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "success",
-            "printedName": "success",
-            "children": [
+              },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(DeepChordsSdk.DCCode.Type) -> DeepChordsSdk.DCCode",
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCCode",
-                    "printedName": "DeepChordsSdk.DCCode",
-                    "usr": "s:13DeepChordsSdk6DCCodeO"
+                    "name": "Void",
+                    "printedName": "()"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Metatype",
-                    "printedName": "DeepChordsSdk.DCCode.Type",
+                    "name": "Optional",
+                    "printedName": "((Swift.Int) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "DCCode",
-                        "printedName": "DeepChordsSdk.DCCode",
-                        "usr": "s:13DeepChordsSdk6DCCodeO"
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "declKind": "EnumElement",
-            "usr": "s:13DeepChordsSdk6DCCodeO7successyA2CmF",
-            "mangledName": "$s13DeepChordsSdk6DCCodeO7successyA2CmF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "RawDocComment"
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "failure",
-            "printedName": "failure",
-            "children": [
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.Int) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(DeepChordsSdk.DCCode.Type) -> DeepChordsSdk.DCCode",
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCCode",
-                    "printedName": "DeepChordsSdk.DCCode",
-                    "usr": "s:13DeepChordsSdk6DCCodeO"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Metatype",
-                    "printedName": "DeepChordsSdk.DCCode.Type",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "DCCode",
-                        "printedName": "DeepChordsSdk.DCCode",
-                        "usr": "s:13DeepChordsSdk6DCCodeO"
-                      }
-                    ]
+                    "name": "Void",
+                    "printedName": "()"
                   }
-                ]
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC12codeCallbackySicSgvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
-            ],
-            "declKind": "EnumElement",
-            "usr": "s:13DeepChordsSdk6DCCodeO7failureyA2CmF",
-            "mangledName": "$s13DeepChordsSdk6DCCodeO7failureyA2CmF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "RawDocComment"
             ]
           },
           {
             "kind": "Var",
-            "name": "timeout",
-            "printedName": "timeout",
+            "name": "filePathCallBack",
+            "printedName": "filePathCallBack",
             "children": [
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(DeepChordsSdk.DCCode.Type) -> DeepChordsSdk.DCCode",
+                "kind": "TypeNominal",
+                "name": "Optional",
+                "printedName": "((Swift.String?) -> ())?",
                 "children": [
                   {
-                    "kind": "TypeNominal",
-                    "name": "DCCode",
-                    "printedName": "DeepChordsSdk.DCCode",
-                    "usr": "s:13DeepChordsSdk6DCCodeO"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Metatype",
-                    "printedName": "DeepChordsSdk.DCCode.Type",
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.String?) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
-                        "name": "DCCode",
-                        "printedName": "DeepChordsSdk.DCCode",
-                        "usr": "s:13DeepChordsSdk6DCCodeO"
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Optional",
+                        "printedName": "Swift.String?",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          }
+                        ],
+                        "usr": "s:Sq"
                       }
                     ]
                   }
-                ]
+                ],
+                "usr": "s:Sq"
               }
             ],
-            "declKind": "EnumElement",
-            "usr": "s:13DeepChordsSdk6DCCodeO7timeoutyA2CmF",
-            "mangledName": "$s13DeepChordsSdk6DCCodeO7timeoutyA2CmF",
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvp",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
+              "AccessControl",
               "RawDocComment"
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "unknow",
-            "printedName": "unknow",
-            "children": [
+            ],
+            "hasStorage": true,
+            "accessors": [
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(DeepChordsSdk.DCCode.Type) -> DeepChordsSdk.DCCode",
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Optional",
+                    "printedName": "((Swift.String?) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String?) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Optional",
+                            "printedName": "Swift.String?",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              }
+                            ],
+                            "usr": "s:Sq"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvg",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvg",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCCode",
-                    "printedName": "DeepChordsSdk.DCCode",
-                    "usr": "s:13DeepChordsSdk6DCCodeO"
+                    "name": "Void",
+                    "printedName": "()"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Metatype",
-                    "printedName": "DeepChordsSdk.DCCode.Type",
+                    "name": "Optional",
+                    "printedName": "((Swift.String?) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "DCCode",
-                        "printedName": "DeepChordsSdk.DCCode",
-                        "usr": "s:13DeepChordsSdk6DCCodeO"
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String?) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Optional",
+                            "printedName": "Swift.String?",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              }
+                            ],
+                            "usr": "s:Sq"
+                          }
+                        ]
                       }
-                    ]
+                    ],
+                    "usr": "s:Sq"
                   }
-                ]
-              }
-            ],
-            "declKind": "EnumElement",
-            "usr": "s:13DeepChordsSdk6DCCodeO6unknowyA2CmF",
-            "mangledName": "$s13DeepChordsSdk6DCCodeO6unknowyA2CmF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "RawDocComment"
-            ]
-          },
-          {
-            "kind": "Constructor",
-            "name": "init",
-            "printedName": "init(rawValue:)",
-            "children": [
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvs",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
               {
-                "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "DeepChordsSdk.DCCode?",
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCCode",
-                    "printedName": "DeepChordsSdk.DCCode",
-                    "usr": "s:13DeepChordsSdk6DCCodeO"
+                    "name": "Void",
+                    "printedName": "()"
                   }
                 ],
-                "usr": "s:Sq"
-              },
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvM",
+                "mangledName": "$s13DeepChordsSdk11DCBleRecordC16filePathCallBackySSSgcSgvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
+              }
+            ]
+          },
+          {
+            "kind": "Function",
+            "name": "start",
+            "printedName": "start()",
+            "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Int",
-                "printedName": "Swift.Int",
-                "usr": "s:Si"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
-            "declKind": "Constructor",
-            "usr": "s:13DeepChordsSdk6DCCodeO8rawValueACSgSi_tcfc",
-            "mangledName": "$s13DeepChordsSdk6DCCodeO8rawValueACSgSi_tcfc",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC5startyyF",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC5startyyF",
             "moduleName": "DeepChordsSdk",
-            "implicit": true,
-            "init_kind": "Designated"
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "funcSelfKind": "NonMutating"
           },
           {
-            "kind": "Var",
-            "name": "rawValue",
-            "printedName": "rawValue",
+            "kind": "Function",
+            "name": "stop",
+            "printedName": "stop()",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Int",
-                "printedName": "Swift.Int",
-                "usr": "s:Si"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCCodeO8rawValueSivp",
-            "mangledName": "$s13DeepChordsSdk6DCCodeO8rawValueSivp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk11DCBleRecordC4stopyyF",
+            "mangledName": "$s13DeepChordsSdk11DCBleRecordC4stopyyF",
             "moduleName": "DeepChordsSdk",
-            "implicit": true,
-            "accessors": [
-              {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Int",
-                    "printedName": "Swift.Int",
-                    "usr": "s:Si"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCCodeO8rawValueSivg",
-                "mangledName": "$s13DeepChordsSdk6DCCodeO8rawValueSivg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              }
-            ]
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "funcSelfKind": "NonMutating"
           }
         ],
-        "declKind": "Enum",
-        "usr": "s:13DeepChordsSdk6DCCodeO",
-        "mangledName": "$s13DeepChordsSdk6DCCodeO",
+        "declKind": "Class",
+        "usr": "s:13DeepChordsSdk11DCBleRecordC",
+        "mangledName": "$s13DeepChordsSdk11DCBleRecordC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "AccessControl",
           "RawDocComment"
         ],
-        "enumRawTypeName": "Int",
+        "hasMissingDesignatedInitializers": true,
         "conformances": [
           {
             "kind": "Conformance",
             "printedName": "Escapable",
             "usr": "s:s9EscapableP",
             "mangledName": "$ss9EscapableP"
-          },
-          {
-            "kind": "Conformance",
-            "name": "Equatable",
-            "printedName": "Equatable",
-            "usr": "s:SQ",
-            "mangledName": "$sSQ"
-          },
-          {
-            "kind": "Conformance",
-            "name": "Hashable",
-            "printedName": "Hashable",
-            "usr": "s:SH",
-            "mangledName": "$sSH"
-          },
-          {
-            "kind": "Conformance",
-            "name": "RawRepresentable",
-            "printedName": "RawRepresentable",
-            "children": [
-              {
-                "kind": "TypeWitness",
-                "name": "RawValue",
-                "printedName": "RawValue",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Int",
-                    "printedName": "Swift.Int",
-                    "usr": "s:Si"
-                  }
-                ]
-              }
-            ],
-            "usr": "s:SY",
-            "mangledName": "$sSY"
-          },
-          {
-            "kind": "Conformance",
-            "name": "CustomStringConvertible",
-            "printedName": "CustomStringConvertible",
-            "usr": "s:s23CustomStringConvertibleP",
-            "mangledName": "$ss23CustomStringConvertibleP"
           }
         ]
       },
+      {
+        "kind": "Import",
+        "name": "StarburstSdk",
+        "printedName": "StarburstSdk",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
       {
         "kind": "TypeDecl",
-        "name": "DCResponse",
-        "printedName": "DCResponse",
+        "name": "DCCallRecord",
+        "printedName": "DCCallRecord",
         "children": [
           {
             "kind": "Var",
-            "name": "code",
-            "printedName": "code",
+            "name": "shared",
+            "printedName": "shared",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCCode",
-                "printedName": "DeepChordsSdk.DCCode",
-                "usr": "s:13DeepChordsSdk6DCCodeO"
+                "name": "DCCallRecord",
+                "printedName": "DeepChordsSdk.DCCallRecord",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk10DCResponseC4codeAA6DCCodeOvp",
-            "mangledName": "$s13DeepChordsSdk10DCResponseC4codeAA6DCCodeOvp",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC6sharedACvpZ",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC6sharedACvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
               "HasInitialValue",
+              "Final",
               "HasStorage",
-              "SetterAccess",
               "AccessControl"
             ],
+            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCCode",
-                    "printedName": "DeepChordsSdk.DCCode",
-                    "usr": "s:13DeepChordsSdk6DCCodeO"
+                    "name": "DCCallRecord",
+                    "printedName": "DeepChordsSdk.DCCallRecord",
+                    "usr": "s:13DeepChordsSdk12DCCallRecordC"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk10DCResponseC4codeAA6DCCodeOvg",
-                "mangledName": "$s13DeepChordsSdk10DCResponseC4codeAA6DCCodeOvg",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC6sharedACvgZ",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC6sharedACvgZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
                 "accessorKind": "get"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "data",
-            "printedName": "data",
+            "name": "fromLanguage",
+            "printedName": "fromLanguage",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Data",
-                "printedName": "Foundation.Data",
-                "usr": "s:10Foundation4DataV"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk10DCResponseC4data10Foundation4DataVvp",
-            "mangledName": "$s13DeepChordsSdk10DCResponseC4data10Foundation4DataVvp",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC12fromLanguageSSvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC12fromLanguageSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
               "HasStorage",
-              "SetterAccess",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
             "hasStorage": true,
             "accessors": [
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Data",
-                    "printedName": "Foundation.Data",
-                    "usr": "s:10Foundation4DataV"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk10DCResponseC4data10Foundation4DataVvg",
-                "mangledName": "$s13DeepChordsSdk10DCResponseC4data10Foundation4DataVvg",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12fromLanguageSSvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12fromLanguageSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "description",
-            "printedName": "description",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              }
-            ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk10DCResponseC11descriptionSSvp",
-            "mangledName": "$s13DeepChordsSdk10DCResponseC11descriptionSSvp",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl"
-            ],
-            "accessors": [
+              },
               {
                 "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
+                "name": "Set",
+                "printedName": "Set()",
                 "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
                   {
                     "kind": "TypeNominal",
                     "name": "String",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk10DCResponseC11descriptionSSvg",
-                "mangledName": "$s13DeepChordsSdk10DCResponseC11descriptionSSvg",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12fromLanguageSSvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12fromLanguageSSvs",
                 "moduleName": "DeepChordsSdk",
-                "accessorKind": "get"
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12fromLanguageSSvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12fromLanguageSSvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
             ]
-          }
-        ],
-        "declKind": "Class",
-        "usr": "s:13DeepChordsSdk10DCResponseC",
-        "mangledName": "$s13DeepChordsSdk10DCResponseC",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "AccessControl"
-        ],
-        "hasMissingDesignatedInitializers": true,
-        "conformances": [
-          {
-            "kind": "Conformance",
-            "name": "Copyable",
-            "printedName": "Copyable",
-            "usr": "s:s8CopyableP",
-            "mangledName": "$ss8CopyableP"
           },
-          {
-            "kind": "Conformance",
-            "name": "Escapable",
-            "printedName": "Escapable",
-            "usr": "s:s9EscapableP",
-            "mangledName": "$ss9EscapableP"
-          }
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "Foundation",
-        "printedName": "Foundation",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "Foundation",
-        "printedName": "Foundation",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "StarburstSdk",
-        "printedName": "StarburstSdk",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk"
-      },
-      {
-        "kind": "TypeDecl",
-        "name": "DCSdk",
-        "printedName": "DCSdk",
-        "children": [
           {
             "kind": "Var",
-            "name": "shared",
-            "printedName": "shared",
+            "name": "toLanguage",
+            "printedName": "toLanguage",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCSdk",
-                "printedName": "DeepChordsSdk.DCSdk",
-                "usr": "s:13DeepChordsSdk5DCSdkC"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk5DCSdkC6sharedACvpZ",
-            "mangledName": "$s13DeepChordsSdk5DCSdkC6sharedACvpZ",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC10toLanguageSSvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC10toLanguageSSvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
-            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCSdk",
-                    "printedName": "DeepChordsSdk.DCSdk",
-                    "usr": "s:13DeepChordsSdk5DCSdkC"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk5DCSdkC6sharedACvgZ",
-                "mangledName": "$s13DeepChordsSdk5DCSdkC6sharedACvgZ",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC10toLanguageSSvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC10toLanguageSSvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "get"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "authCallback",
-            "printedName": "authCallback",
-            "children": [
+              },
               {
-                "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.Int, Swift.String) -> ())?",
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
                 "children": [
                   {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.Int, Swift.String) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Tuple",
-                        "printedName": "(Swift.Int, Swift.String)",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ]
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
-                "usr": "s:Sq"
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC10toLanguageSSvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC10toLanguageSSvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC10toLanguageSSvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC10toLanguageSSvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
+              }
+            ]
+          },
+          {
+            "kind": "Var",
+            "name": "isTranslate",
+            "printedName": "isTranslate",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvp",
-            "mangledName": "$s13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvp",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC11isTranslateSbvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC11isTranslateSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.Int, Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.Int, Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Tuple",
-                            "printedName": "(Swift.Int, Swift.String)",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              }
-                            ]
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvg",
-                "mangledName": "$s13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvg",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC11isTranslateSbvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11isTranslateSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.Int, Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.Int, Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Tuple",
-                            "printedName": "(Swift.Int, Swift.String)",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              }
-                            ]
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvs",
-                "mangledName": "$s13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvs",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC11isTranslateSbvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11isTranslateSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvM",
-                "mangledName": "$s13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvM",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC11isTranslateSbvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11isTranslateSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ]
           },
-          {
-            "kind": "Function",
-            "name": "initSDK",
-            "printedName": "initSDK()",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk5DCSdkC7initSDKyyF",
-            "mangledName": "$s13DeepChordsSdk5DCSdkC7initSDKyyF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "funcSelfKind": "NonMutating"
-          }
-        ],
-        "declKind": "Class",
-        "usr": "s:13DeepChordsSdk5DCSdkC",
-        "mangledName": "$s13DeepChordsSdk5DCSdkC",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "AccessControl"
-        ],
-        "hasMissingDesignatedInitializers": true,
-        "conformances": [
-          {
-            "kind": "Conformance",
-            "name": "Copyable",
-            "printedName": "Copyable",
-            "usr": "s:s8CopyableP",
-            "mangledName": "$ss8CopyableP"
-          },
-          {
-            "kind": "Conformance",
-            "name": "Escapable",
-            "printedName": "Escapable",
-            "usr": "s:s9EscapableP",
-            "mangledName": "$ss9EscapableP"
-          }
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "Foundation",
-        "printedName": "Foundation",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "TypeDecl",
-        "name": "DCDevice",
-        "printedName": "DCDevice",
-        "children": [
           {
             "kind": "Var",
-            "name": "shared",
-            "printedName": "shared",
+            "name": "isTTs",
+            "printedName": "isTTs",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCDevice",
-                "printedName": "DeepChordsSdk.DCDevice",
-                "usr": "s:13DeepChordsSdk8DCDeviceC"
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk8DCDeviceC6sharedACvpZ",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC6sharedACvpZ",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC5isTTsSbvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC5isTTsSbvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
-            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCDevice",
-                    "printedName": "DeepChordsSdk.DCDevice",
-                    "usr": "s:13DeepChordsSdk8DCDeviceC"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCDeviceC6sharedACvgZ",
-                "mangledName": "$s13DeepChordsSdk8DCDeviceC6sharedACvgZ",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC5isTTsSbvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC5isTTsSbvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
+                "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC5isTTsSbvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC5isTTsSbvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC5isTTsSbvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC5isTTsSbvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
+              }
+            ]
+          },
+          {
+            "kind": "Var",
+            "name": "ttsFormat",
+            "printedName": "ttsFormat",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
+              }
+            ],
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC9ttsFormatSSvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC9ttsFormatSSvp",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "hasStorage": true,
+            "accessors": [
+              {
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
                 ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC9ttsFormatSSvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC9ttsFormatSSvg",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
                 "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC9ttsFormatSSvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC9ttsFormatSSvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC9ttsFormatSSvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC9ttsFormatSSvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "eventCallback",
-            "printedName": "eventCallback",
+            "name": "asrCallback",
+            "printedName": "asrCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.UInt8) -> ())?",
+                "printedName": "((Swift.String) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.UInt8) -> ()",
+                    "printedName": "(Swift.String) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "UInt8",
-                        "printedName": "Swift.UInt8",
-                        "usr": "s:s5UInt8V"
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvp",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvp",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.UInt8) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.UInt8) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "UInt8",
-                            "printedName": "Swift.UInt8",
-                            "usr": "s:s5UInt8V"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvg",
-                "mangledName": "$s13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvg",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.UInt8) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.UInt8) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "UInt8",
-                            "printedName": "Swift.UInt8",
-                            "usr": "s:s5UInt8V"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvs",
-                "mangledName": "$s13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvs",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvM",
-                "mangledName": "$s13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvM",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "muiscPlayCallback",
-            "printedName": "muiscPlayCallback",
+            "name": "asrOtherCallback",
+            "printedName": "asrOtherCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ())?",
+                "printedName": "((Swift.String) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ()",
+                    "printedName": "(Swift.String) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "Tuple",
-                        "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16)",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "UInt16",
-                            "printedName": "Swift.UInt16",
-                            "usr": "s:s6UInt16V"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "UInt16",
-                            "printedName": "Swift.UInt16",
-                            "usr": "s:s6UInt16V"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "UInt16",
-                            "printedName": "Swift.UInt16",
-                            "usr": "s:s6UInt16V"
-                          }
-                        ]
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvp",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvp",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Tuple",
-                            "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16)",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "UInt16",
-                                "printedName": "Swift.UInt16",
-                                "usr": "s:s6UInt16V"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "UInt16",
-                                "printedName": "Swift.UInt16",
-                                "usr": "s:s6UInt16V"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "UInt16",
-                                "printedName": "Swift.UInt16",
-                                "usr": "s:s6UInt16V"
-                              }
-                            ]
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvg",
-                "mangledName": "$s13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvg",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Tuple",
-                            "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16)",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "UInt16",
-                                "printedName": "Swift.UInt16",
-                                "usr": "s:s6UInt16V"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "UInt16",
-                                "printedName": "Swift.UInt16",
-                                "usr": "s:s6UInt16V"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "UInt16",
-                                "printedName": "Swift.UInt16",
-                                "usr": "s:s6UInt16V"
-                              }
-                            ]
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvs",
-                "mangledName": "$s13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvs",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvM",
-                "mangledName": "$s13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvM",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
             ]
           },
           {
-            "kind": "Function",
-            "name": "handShake",
-            "printedName": "handShake(finished:)",
+            "kind": "Var",
+            "name": "codeCallback",
+            "printedName": "codeCallback",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.Bool?) -> ()",
+                "name": "Optional",
+                "printedName": "((Swift.Int) -> ())?",
                 "children": [
                   {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "Swift.Bool?",
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.Int) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
-                        "name": "Bool",
-                        "printedName": "Swift.Bool",
-                        "usr": "s:Sb"
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Int",
+                        "printedName": "Swift.Int",
+                        "usr": "s:Si"
                       }
-                    ],
-                    "usr": "s:Sq"
+                    ]
                   }
-                ]
+                ],
+                "usr": "s:Sq"
               }
             ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC9handShake8finishedyySbSgc_tF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC9handShake8finishedyySbSgc_tF",
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "getBatery",
-            "printedName": "getBatery(finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
+            "hasStorage": true,
+            "accessors": [
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "((Swift.Int, Swift.Int)?) -> ()",
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
                 "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "(Swift.Int, Swift.Int)?",
+                    "printedName": "((Swift.Int) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "Tuple",
-                        "printedName": "(Swift.Int, Swift.Int)",
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.Int) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
+                            "name": "Void",
+                            "printedName": "()"
                           },
                           {
                             "kind": "TypeNominal",
                     ],
                     "usr": "s:Sq"
                   }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC9getBatery8finishedyySi_SitSgc_tF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC9getBatery8finishedyySi_SitSgc_tF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "getSoftVersion",
-            "printedName": "getSoftVersion(finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvg",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "get"
               },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.String?) -> ()",
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "Swift.String?",
+                    "printedName": "((Swift.Int) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.Int) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
+                          }
+                        ]
                       }
                     ],
                     "usr": "s:Sq"
                   }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC14getSoftVersion8finishedyySSSgc_tF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC14getSoftVersion8finishedyySSSgc_tF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "getHardVersion",
-            "printedName": "getHardVersion(finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
               },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.String?) -> ()",
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                     "name": "Void",
                     "printedName": "()"
-                  },
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
+              }
+            ]
+          },
+          {
+            "kind": "Var",
+            "name": "filePathCallBack",
+            "printedName": "filePathCallBack",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Optional",
+                "printedName": "((Swift.String) -> ())?",
+                "children": [
                   {
-                    "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "Swift.String?",
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.String) -> ()",
                     "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
                       {
                         "kind": "TypeNominal",
                         "name": "String",
                         "printedName": "Swift.String",
                         "usr": "s:SS"
                       }
-                    ],
-                    "usr": "s:Sq"
+                    ]
                   }
-                ]
+                ],
+                "usr": "s:Sq"
               }
             ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC14getHardVersion8finishedyySSSgc_tF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC14getHardVersion8finishedyySSSgc_tF",
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "findDevice",
-            "printedName": "findDevice(state:finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
+            "hasStorage": true,
+            "accessors": [
               {
-                "kind": "TypeNominal",
-                "name": "UInt8",
-                "printedName": "Swift.UInt8",
-                "usr": "s:s5UInt8V"
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Optional",
+                    "printedName": "((Swift.String) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvg",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "get"
               },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.Bool) -> ()",
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "Optional",
+                    "printedName": "((Swift.String) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC10findDevice5state8finishedys5UInt8V_ySbctF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC10findDevice5state8finishedys5UInt8V_ySbctF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "setEQ",
-            "printedName": "setEQ(type:finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "UInt8",
-                "printedName": "Swift.UInt8",
-                "usr": "s:s5UInt8V"
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
               },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.Bool) -> ()",
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                     "name": "Void",
                     "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
                   }
-                ]
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC5setEQ4type8finishedys5UInt8V_ySbctF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC5setEQ4type8finishedys5UInt8V_ySbctF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
+            ]
           },
           {
-            "kind": "Function",
-            "name": "setCustomEQ",
-            "printedName": "setCustomEQ(index:value:finished:)",
+            "kind": "Var",
+            "name": "opusCallBack",
+            "printedName": "opusCallBack",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "UInt8",
-                "printedName": "Swift.UInt8",
-                "usr": "s:s5UInt8V"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Int",
-                "printedName": "Swift.Int",
-                "usr": "s:Si"
-              },
-              {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.Bool) -> ()",
+                "name": "Optional",
+                "printedName": "((Foundation.Data) -> ())?",
                 "children": [
                   {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Foundation.Data) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Data",
+                        "printedName": "Foundation.Data",
+                        "usr": "s:10Foundation4DataV"
+                      }
+                    ]
                   }
-                ]
+                ],
+                "usr": "s:Sq"
               }
             ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC11setCustomEQ5index5value8finishedys5UInt8V_SiySbctF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC11setCustomEQ5index5value8finishedys5UInt8V_SiySbctF",
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvp",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "getEQ",
-            "printedName": "getEQ(finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
+            "hasStorage": true,
+            "accessors": [
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "((type: Swift.UInt8, value: [Swift.Int])?, Swift.Bool) -> ()",
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Tuple",
-                    "printedName": "((type: Swift.UInt8, value: [Swift.Int])?, Swift.Bool)",
+                    "name": "Optional",
+                    "printedName": "((Foundation.Data) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "Optional",
-                        "printedName": "(type: Swift.UInt8, value: [Swift.Int])?",
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Foundation.Data) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
-                            "name": "Tuple",
-                            "printedName": "(type: Swift.UInt8, value: [Swift.Int])",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "UInt8",
-                                "printedName": "Swift.UInt8",
-                                "usr": "s:s5UInt8V"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Array",
-                                "printedName": "[Swift.Int]",
-                                "children": [
-                                  {
-                                    "kind": "TypeNominal",
-                                    "name": "Int",
-                                    "printedName": "Swift.Int",
-                                    "usr": "s:Si"
-                                  }
-                                ],
-                                "usr": "s:Sa"
-                              }
-                            ]
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Data",
+                            "printedName": "Foundation.Data",
+                            "usr": "s:10Foundation4DataV"
                           }
-                        ],
-                        "usr": "s:Sq"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Bool",
-                        "printedName": "Swift.Bool",
-                        "usr": "s:Sb"
+                        ]
                       }
-                    ]
+                    ],
+                    "usr": "s:Sq"
                   }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC5getEQ8finishedyys5UInt8V4type_SaySiG5valuetSg_Sbtc_tF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC5getEQ8finishedyys5UInt8V4type_SaySiG5valuetSg_Sbtc_tF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "getTotalMusic",
-            "printedName": "getTotalMusic(finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvg",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvg",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "get"
               },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.Int?) -> ()",
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "Swift.Int?",
+                    "printedName": "((Foundation.Data) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "Int",
-                        "printedName": "Swift.Int",
-                        "usr": "s:Si"
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Foundation.Data) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Data",
+                            "printedName": "Foundation.Data",
+                            "usr": "s:10Foundation4DataV"
+                          }
+                        ]
                       }
                     ],
                     "usr": "s:Sq"
                   }
-                ]
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvs",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvM",
+                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC13getTotalMusic8finishedyySiSgc_tF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC13getTotalMusic8finishedyySiSgc_tF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
+            ]
           },
           {
             "kind": "Function",
-            "name": "getMusicList",
-            "printedName": "getMusicList(size:index:finished:)",
+            "name": "inputPcm",
+            "printedName": "inputPcm(data:)",
             "children": [
               {
                 "kind": "TypeNominal",
               },
               {
                 "kind": "TypeNominal",
-                "name": "UInt8",
-                "printedName": "Swift.UInt8",
-                "usr": "s:s5UInt8V"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "UInt16",
-                "printedName": "Swift.UInt16",
-                "usr": "s:s6UInt16V"
-              },
-              {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "([DeepChordsSdk.DCMusic]?, Swift.Bool) -> ()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Tuple",
-                    "printedName": "([DeepChordsSdk.DCMusic]?, Swift.Bool)",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Optional",
-                        "printedName": "[DeepChordsSdk.DCMusic]?",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Array",
-                            "printedName": "[DeepChordsSdk.DCMusic]",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "DCMusic",
-                                "printedName": "DeepChordsSdk.DCMusic",
-                                "usr": "s:13DeepChordsSdk7DCMusicC"
-                              }
-                            ],
-                            "usr": "s:Sa"
-                          }
-                        ],
-                        "usr": "s:Sq"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Bool",
-                        "printedName": "Swift.Bool",
-                        "usr": "s:Sb"
-                      }
-                    ]
-                  }
-                ]
+                "name": "Data",
+                "printedName": "Foundation.Data",
+                "usr": "s:10Foundation4DataV"
               }
             ],
             "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC12getMusicList4size5index8finishedys5UInt8V_s6UInt16VySayAA7DCMusicCGSg_SbtctF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC12getMusicList4size5index8finishedys5UInt8V_s6UInt16VySayAA7DCMusicCGSg_SbtctF",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC8inputPcm4datay10Foundation4DataV_tF",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC8inputPcm4datay10Foundation4DataV_tF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
+              "AccessControl"
             ],
-            "isFromExtension": true,
             "funcSelfKind": "NonMutating"
           },
           {
             "kind": "Function",
-            "name": "setMusicPlayMode",
-            "printedName": "setMusicPlayMode(mode:finished:)",
+            "name": "start",
+            "printedName": "start()",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Void",
                 "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "UInt8",
-                "printedName": "Swift.UInt8",
-                "usr": "s:s5UInt8V"
-              },
-              {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.Bool) -> ()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
-                  }
-                ]
               }
             ],
             "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC16setMusicPlayMode4mode8finishedys5UInt8V_ySbctF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC16setMusicPlayMode4mode8finishedys5UInt8V_ySbctF",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC5startyyF",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC5startyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "AccessControl",
               "RawDocComment"
             ],
-            "isFromExtension": true,
             "funcSelfKind": "NonMutating"
           },
           {
             "kind": "Function",
-            "name": "getMusicPlayMode",
-            "printedName": "getMusicPlayMode(finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.UInt8?, Swift.Bool) -> ()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Tuple",
-                    "printedName": "(Swift.UInt8?, Swift.Bool)",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Optional",
-                        "printedName": "Swift.UInt8?",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "UInt8",
-                            "printedName": "Swift.UInt8",
-                            "usr": "s:s5UInt8V"
-                          }
-                        ],
-                        "usr": "s:Sq"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Bool",
-                        "printedName": "Swift.Bool",
-                        "usr": "s:Sb"
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC16getMusicPlayMode8finishedyys5UInt8VSg_Sbtc_tF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC16getMusicPlayMode8finishedyys5UInt8VSg_Sbtc_tF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "musicPlay",
-            "printedName": "musicPlay(index:finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "Swift.UInt16?",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "UInt16",
-                    "printedName": "Swift.UInt16",
-                    "usr": "s:s6UInt16V"
-                  }
-                ],
-                "usr": "s:Sq"
-              },
-              {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.UInt16?, Swift.Bool) -> ()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Tuple",
-                    "printedName": "(Swift.UInt16?, Swift.Bool)",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Optional",
-                        "printedName": "Swift.UInt16?",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "UInt16",
-                            "printedName": "Swift.UInt16",
-                            "usr": "s:s6UInt16V"
-                          }
-                        ],
-                        "usr": "s:Sq"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Bool",
-                        "printedName": "Swift.Bool",
-                        "usr": "s:Sb"
-                      }
-                    ]
-                  }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC9musicPlay5index8finishedys6UInt16VSg_yAI_SbtctF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC9musicPlay5index8finishedys6UInt16VSg_yAI_SbtctF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "musicPause",
-            "printedName": "musicPause(finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.Bool) -> ()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
-                  }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC10musicPause8finishedyySbc_tF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC10musicPause8finishedyySbc_tF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "musicDelete",
-            "printedName": "musicDelete(list:finished:)",
+            "name": "stop",
+            "printedName": "stop()",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Void",
                 "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Array",
-                "printedName": "[Swift.UInt16]",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "UInt16",
-                    "printedName": "Swift.UInt16",
-                    "usr": "s:s6UInt16V"
-                  }
-                ],
-                "usr": "s:Sa"
-              },
-              {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "(Swift.Bool) -> ()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
-                  }
-                ]
               }
             ],
             "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCDeviceC11musicDelete4list8finishedySays6UInt16VG_ySbctF",
-            "mangledName": "$s13DeepChordsSdk8DCDeviceC11musicDelete4list8finishedySays6UInt16VG_ySbctF",
+            "usr": "s:13DeepChordsSdk12DCCallRecordC4stopyyF",
+            "mangledName": "$s13DeepChordsSdk12DCCallRecordC4stopyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "AccessControl",
               "RawDocComment"
             ],
-            "isFromExtension": true,
             "funcSelfKind": "NonMutating"
           }
         ],
         "declKind": "Class",
-        "usr": "s:13DeepChordsSdk8DCDeviceC",
-        "mangledName": "$s13DeepChordsSdk8DCDeviceC",
+        "usr": "s:13DeepChordsSdk12DCCallRecordC",
+        "mangledName": "$s13DeepChordsSdk12DCCallRecordC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
-          "AccessControl"
+          "AccessControl",
+          "RawDocComment"
         ],
         "hasMissingDesignatedInitializers": true,
         "conformances": [
       },
       {
         "kind": "Import",
-        "name": "Foundation",
-        "printedName": "Foundation",
+        "name": "StarburstSdk",
+        "printedName": "StarburstSdk",
         "declKind": "Import",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "RawDocComment"
         ]
       },
-      {
-        "kind": "Import",
-        "name": "CoreBluetooth",
-        "printedName": "CoreBluetooth",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk"
-      },
-      {
-        "kind": "Import",
-        "name": "StarburstSdk",
-        "printedName": "StarburstSdk",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk"
-      },
       {
         "kind": "TypeDecl",
-        "name": "DCBleManager",
-        "printedName": "DCBleManager",
+        "name": "DCRole",
+        "printedName": "DCRole",
         "children": [
           {
             "kind": "Var",
-            "name": "serviceUUID",
-            "printedName": "serviceUUID",
+            "name": "sid",
+            "printedName": "sid",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCBleManagerC11serviceUUIDSSvpZ",
-            "mangledName": "$s13DeepChordsSdk12DCBleManagerC11serviceUUIDSSvpZ",
+            "usr": "s:13DeepChordsSdk6DCRoleC3sidSSvp",
+            "mangledName": "$s13DeepChordsSdk6DCRoleC3sidSSvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCBleManagerC11serviceUUIDSSvgZ",
-                "mangledName": "$s13DeepChordsSdk12DCBleManagerC11serviceUUIDSSvgZ",
+                "usr": "s:13DeepChordsSdk6DCRoleC3sidSSvg",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC3sidSSvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk6DCRoleC3sidSSvs",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC3sidSSvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk6DCRoleC3sidSSvM",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC3sidSSvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "writeUUID",
-            "printedName": "writeUUID",
+            "name": "name",
+            "printedName": "name",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCBleManagerC9writeUUIDSSvpZ",
-            "mangledName": "$s13DeepChordsSdk12DCBleManagerC9writeUUIDSSvpZ",
+            "usr": "s:13DeepChordsSdk6DCRoleC4nameSSvp",
+            "mangledName": "$s13DeepChordsSdk6DCRoleC4nameSSvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCBleManagerC9writeUUIDSSvgZ",
-                "mangledName": "$s13DeepChordsSdk12DCBleManagerC9writeUUIDSSvgZ",
+                "usr": "s:13DeepChordsSdk6DCRoleC4nameSSvg",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4nameSSvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk6DCRoleC4nameSSvs",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4nameSSvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk6DCRoleC4nameSSvM",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4nameSSvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "notifyUUID",
-            "printedName": "notifyUUID",
+            "name": "type",
+            "printedName": "type",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCBleManagerC10notifyUUIDSSvpZ",
-            "mangledName": "$s13DeepChordsSdk12DCBleManagerC10notifyUUIDSSvpZ",
+            "usr": "s:13DeepChordsSdk6DCRoleC4typeSSvp",
+            "mangledName": "$s13DeepChordsSdk6DCRoleC4typeSSvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCBleManagerC10notifyUUIDSSvgZ",
-                "mangledName": "$s13DeepChordsSdk12DCBleManagerC10notifyUUIDSSvgZ",
+                "usr": "s:13DeepChordsSdk6DCRoleC4typeSSvg",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4typeSSvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk6DCRoleC4typeSSvs",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4typeSSvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk6DCRoleC4typeSSvM",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4typeSSvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "shared",
-            "printedName": "shared",
+            "name": "role",
+            "printedName": "role",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCBleManager",
-                "printedName": "DeepChordsSdk.DCBleManager",
-                "usr": "s:13DeepChordsSdk12DCBleManagerC"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCBleManagerC6sharedACvpZ",
-            "mangledName": "$s13DeepChordsSdk12DCBleManagerC6sharedACvpZ",
+            "usr": "s:13DeepChordsSdk6DCRoleC4roleSSvp",
+            "mangledName": "$s13DeepChordsSdk6DCRoleC4roleSSvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCBleManager",
-                    "printedName": "DeepChordsSdk.DCBleManager",
-                    "usr": "s:13DeepChordsSdk12DCBleManagerC"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCBleManagerC6sharedACvgZ",
-                "mangledName": "$s13DeepChordsSdk12DCBleManagerC6sharedACvgZ",
+                "usr": "s:13DeepChordsSdk6DCRoleC4roleSSvg",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4roleSSvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk6DCRoleC4roleSSvs",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4roleSSvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk6DCRoleC4roleSSvM",
+                "mangledName": "$s13DeepChordsSdk6DCRoleC4roleSSvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
             ]
           },
           {
-            "kind": "Function",
-            "name": "centralManager",
-            "printedName": "centralManager(_:didConnect:)",
+            "kind": "Constructor",
+            "name": "init",
+            "printedName": "init()",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "CBCentralManager",
-                "printedName": "CoreBluetooth.CBCentralManager",
-                "usr": "c:objc(cs)CBCentralManager"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "CBPeripheral",
-                "printedName": "CoreBluetooth.CBPeripheral",
-                "usr": "c:objc(cs)CBPeripheral"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk12DCBleManagerC07centralE0_10didConnectySo09CBCentralE0C_So12CBPeripheralCtF",
-            "mangledName": "$s13DeepChordsSdk12DCBleManagerC07centralE0_10didConnectySo09CBCentralE0C_So12CBPeripheralCtF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "centralManager",
-            "printedName": "centralManager(_:didDisconnectPeripheral:error:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "CBCentralManager",
-                "printedName": "CoreBluetooth.CBCentralManager",
-                "usr": "c:objc(cs)CBCentralManager"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "CBPeripheral",
-                "printedName": "CoreBluetooth.CBPeripheral",
-                "usr": "c:objc(cs)CBPeripheral"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "(any Swift.Error)?",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Error",
-                    "printedName": "any Swift.Error",
-                    "usr": "s:s5ErrorP"
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "DCRole",
+                "printedName": "DeepChordsSdk.DCRole",
+                "usr": "s:13DeepChordsSdk6DCRoleC"
               }
             ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk12DCBleManagerC07centralE0_23didDisconnectPeripheral5errorySo09CBCentralE0C_So12CBPeripheralCs5Error_pSgtF",
-            "mangledName": "$s13DeepChordsSdk12DCBleManagerC07centralE0_23didDisconnectPeripheral5errorySo09CBCentralE0C_So12CBPeripheralCs5Error_pSgtF",
+            "declKind": "Constructor",
+            "usr": "s:13DeepChordsSdk6DCRoleCACycfc",
+            "mangledName": "$s13DeepChordsSdk6DCRoleCACycfc",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
+              "AccessControl"
             ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
+            "init_kind": "Designated"
           },
           {
-            "kind": "Function",
-            "name": "peripheral",
-            "printedName": "peripheral(_:didDiscoverCharacteristicsFor:error:)",
+            "kind": "Constructor",
+            "name": "init",
+            "printedName": "init(sid:name:type:role:)",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "CBPeripheral",
-                "printedName": "CoreBluetooth.CBPeripheral",
-                "usr": "c:objc(cs)CBPeripheral"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "CBService",
-                "printedName": "CoreBluetooth.CBService",
-                "usr": "c:objc(cs)CBService"
+                "name": "DCRole",
+                "printedName": "DeepChordsSdk.DCRole",
+                "usr": "s:13DeepChordsSdk6DCRoleC"
               },
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "(any Swift.Error)?",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Error",
-                    "printedName": "any Swift.Error",
-                    "usr": "s:s5ErrorP"
-                  }
-                ],
-                "usr": "s:Sq"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk12DCBleManagerC10peripheral_29didDiscoverCharacteristicsFor5errorySo12CBPeripheralC_So9CBServiceCs5Error_pSgtF",
-            "mangledName": "$s13DeepChordsSdk12DCBleManagerC10peripheral_29didDiscoverCharacteristicsFor5errorySo12CBPeripheralC_So9CBServiceCs5Error_pSgtF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "peripheral",
-            "printedName": "peripheral(_:didUpdateValueFor:error:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               },
               {
                 "kind": "TypeNominal",
-                "name": "CBPeripheral",
-                "printedName": "CoreBluetooth.CBPeripheral",
-                "usr": "c:objc(cs)CBPeripheral"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               },
               {
                 "kind": "TypeNominal",
-                "name": "CBCharacteristic",
-                "printedName": "CoreBluetooth.CBCharacteristic",
-                "usr": "c:objc(cs)CBCharacteristic"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               },
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "(any Swift.Error)?",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Error",
-                    "printedName": "any Swift.Error",
-                    "usr": "s:s5ErrorP"
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk12DCBleManagerC10peripheral_17didUpdateValueFor5errorySo12CBPeripheralC_So16CBCharacteristicCs5Error_pSgtF",
-            "mangledName": "$s13DeepChordsSdk12DCBleManagerC10peripheral_17didUpdateValueFor5errorySo12CBPeripheralC_So16CBCharacteristicCs5Error_pSgtF",
+            "declKind": "Constructor",
+            "usr": "s:13DeepChordsSdk6DCRoleC3sid4name4type4roleACSS_S3Stcfc",
+            "mangledName": "$s13DeepChordsSdk6DCRoleC3sid4name4type4roleACSS_S3Stcfc",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
+              "AccessControl"
             ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
+            "init_kind": "Designated"
           }
         ],
         "declKind": "Class",
-        "usr": "s:13DeepChordsSdk12DCBleManagerC",
-        "mangledName": "$s13DeepChordsSdk12DCBleManagerC",
+        "usr": "s:13DeepChordsSdk6DCRoleC",
+        "mangledName": "$s13DeepChordsSdk6DCRoleC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "AccessControl",
           "RawDocComment"
         ],
-        "hasMissingDesignatedInitializers": true,
         "conformances": [
           {
             "kind": "Conformance",
           }
         ]
       },
-      {
-        "kind": "Import",
-        "name": "Foundation",
-        "printedName": "Foundation",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "StarburstSdk",
-        "printedName": "StarburstSdk",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
       {
         "kind": "TypeDecl",
-        "name": "DCPhoneRecord",
-        "printedName": "DCPhoneRecord",
+        "name": "DCChat",
+        "printedName": "DCChat",
         "children": [
           {
             "kind": "Var",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCPhoneRecord",
-                "printedName": "DeepChordsSdk.DCPhoneRecord",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC"
+                "name": "DCChat",
+                "printedName": "DeepChordsSdk.DCChat",
+                "usr": "s:13DeepChordsSdk6DCChatC"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC6sharedACvpZ",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC6sharedACvpZ",
+            "usr": "s:13DeepChordsSdk6DCChatC6sharedACvpZ",
+            "mangledName": "$s13DeepChordsSdk6DCChatC6sharedACvpZ",
             "moduleName": "DeepChordsSdk",
             "static": true,
             "declAttributes": [
               "HasInitialValue",
               "Final",
               "HasStorage",
-              "AccessControl",
-              "RawDocComment"
+              "AccessControl"
             ],
             "isLet": true,
             "hasStorage": true,
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCPhoneRecord",
-                    "printedName": "DeepChordsSdk.DCPhoneRecord",
-                    "usr": "s:13DeepChordsSdk13DCPhoneRecordC"
+                    "name": "DCChat",
+                    "printedName": "DeepChordsSdk.DCChat",
+                    "usr": "s:13DeepChordsSdk6DCChatC"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC6sharedACvgZ",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC6sharedACvgZ",
+                "usr": "s:13DeepChordsSdk6DCChatC6sharedACvgZ",
+                "mangledName": "$s13DeepChordsSdk6DCChatC6sharedACvgZ",
                 "moduleName": "DeepChordsSdk",
                 "static": true,
                 "implicit": true,
           },
           {
             "kind": "Var",
-            "name": "fromLanguage",
-            "printedName": "fromLanguage",
+            "name": "dialogId",
+            "printedName": "dialogId",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Int",
+                "printedName": "Swift.Int",
+                "usr": "s:Si"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvp",
+            "usr": "s:13DeepChordsSdk6DCChatC8dialogIdSivp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC8dialogIdSivp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
               "HasStorage",
-              "AccessControl",
-              "RawDocComment"
+              "AccessControl"
             ],
             "hasStorage": true,
             "accessors": [
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Int",
+                    "printedName": "Swift.Int",
+                    "usr": "s:Si"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvg",
+                "usr": "s:13DeepChordsSdk6DCChatC8dialogIdSivg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC8dialogIdSivg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Int",
+                    "printedName": "Swift.Int",
+                    "usr": "s:Si"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvs",
+                "usr": "s:13DeepChordsSdk6DCChatC8dialogIdSivs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC8dialogIdSivs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvM",
+                "usr": "s:13DeepChordsSdk6DCChatC8dialogIdSivM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC8dialogIdSivM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "toLanguage",
-            "printedName": "toLanguage",
+            "name": "asrCallback",
+            "printedName": "asrCallback",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Optional",
+                "printedName": "((Swift.String, Swift.Int) -> ())?",
+                "children": [
+                  {
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.String, Swift.Int) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Tuple",
+                        "printedName": "(Swift.String, Swift.Int)",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "usr": "s:Sq"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvp",
+            "usr": "s:13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Optional",
+                    "printedName": "((Swift.String, Swift.Int) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String, Swift.Int) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Tuple",
+                            "printedName": "(Swift.String, Swift.Int)",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              }
+                            ]
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvg",
+                "usr": "s:13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Optional",
+                    "printedName": "((Swift.String, Swift.Int) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String, Swift.Int) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Tuple",
+                            "printedName": "(Swift.String, Swift.Int)",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              }
+                            ]
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvs",
+                "usr": "s:13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvM",
+                "usr": "s:13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "isTranslate",
-            "printedName": "isTranslate",
+            "name": "responseCallback",
+            "printedName": "responseCallback",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
+                "name": "Optional",
+                "printedName": "((Swift.String, Swift.Int) -> ())?",
+                "children": [
+                  {
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.String, Swift.Int) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Tuple",
+                        "printedName": "(Swift.String, Swift.Int)",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "usr": "s:Sq"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvp",
+            "usr": "s:13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "Optional",
+                    "printedName": "((Swift.String, Swift.Int) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String, Swift.Int) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Tuple",
+                            "printedName": "(Swift.String, Swift.Int)",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              }
+                            ]
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvg",
+                "usr": "s:13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "isTTs",
-            "printedName": "isTTs",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
-              }
-            ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC5isTTsSbvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5isTTsSbvp",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "hasStorage": true,
-            "accessors": [
-              {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC5isTTsSbvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5isTTsSbvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC5isTTsSbvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5isTTsSbvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC5isTTsSbvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5isTTsSbvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "ttsFormat",
-            "printedName": "ttsFormat",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              }
-            ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvp",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "hasStorage": true,
-            "accessors": [
-              {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Optional",
+                    "printedName": "((Swift.String, Swift.Int) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String, Swift.Int) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Tuple",
+                            "printedName": "(Swift.String, Swift.Int)",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              }
+                            ]
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvs",
+                "usr": "s:13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvM",
+                "usr": "s:13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "asrCallback",
-            "printedName": "asrCallback",
+            "name": "responseDataCallback",
+            "printedName": "responseDataCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.String) -> ())?",
+                "printedName": "((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.String) -> ()",
+                    "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
+                        "name": "Tuple",
+                        "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int)",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Optional",
+                            "printedName": "Foundation.Data?",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Data",
+                                "printedName": "Foundation.Data",
+                                "usr": "s:10Foundation4DataV"
+                              }
+                            ],
+                            "usr": "s:Sq"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Bool",
+                            "printedName": "Swift.Bool",
+                            "usr": "s:Sb"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
+                          }
+                        ]
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvp",
+            "usr": "s:13DeepChordsSdk6DCChatC20responseDataCallbackySi_10Foundation0F0VSgSbSitcSgvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC20responseDataCallbackySi_10Foundation0F0VSgSbSitcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
+                    "printedName": "((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
+                        "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
-                  }
+                            "name": "Tuple",
+                            "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int)",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Optional",
+                                "printedName": "Foundation.Data?",
+                                "children": [
+                                  {
+                                    "kind": "TypeNominal",
+                                    "name": "Data",
+                                    "printedName": "Foundation.Data",
+                                    "usr": "s:10Foundation4DataV"
+                                  }
+                                ],
+                                "usr": "s:Sq"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Bool",
+                                "printedName": "Swift.Bool",
+                                "usr": "s:Sb"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              }
+                            ]
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
+                  }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvg",
+                "usr": "s:13DeepChordsSdk6DCChatC20responseDataCallbackySi_10Foundation0F0VSgSbSitcSgvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC20responseDataCallbackySi_10Foundation0F0VSgSbSitcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
+                    "printedName": "((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
+                        "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "Tuple",
+                            "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int)",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Optional",
+                                "printedName": "Foundation.Data?",
+                                "children": [
+                                  {
+                                    "kind": "TypeNominal",
+                                    "name": "Data",
+                                    "printedName": "Foundation.Data",
+                                    "usr": "s:10Foundation4DataV"
+                                  }
+                                ],
+                                "usr": "s:Sq"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Bool",
+                                "printedName": "Swift.Bool",
+                                "usr": "s:Sb"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              }
+                            ]
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvs",
+                "usr": "s:13DeepChordsSdk6DCChatC20responseDataCallbackySi_10Foundation0F0VSgSbSitcSgvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC20responseDataCallbackySi_10Foundation0F0VSgSbSitcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvM",
+                "usr": "s:13DeepChordsSdk6DCChatC20responseDataCallbackySi_10Foundation0F0VSgSbSitcSgvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC20responseDataCallbackySi_10Foundation0F0VSgSbSitcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "translateCallback",
-            "printedName": "translateCallback",
+            "name": "codeCallback",
+            "printedName": "codeCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.String) -> ())?",
+                "printedName": "((Swift.Int) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.String) -> ()",
+                    "printedName": "(Swift.Int) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
+                        "name": "Int",
+                        "printedName": "Swift.Int",
+                        "usr": "s:Si"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvp",
+            "usr": "s:13DeepChordsSdk6DCChatC12codeCallbackySicSgvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC12codeCallbackySicSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
+                    "printedName": "((Swift.Int) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
+                        "printedName": "(Swift.Int) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvg",
+                "usr": "s:13DeepChordsSdk6DCChatC12codeCallbackySicSgvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC12codeCallbackySicSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
+                    "printedName": "((Swift.Int) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
+                        "printedName": "(Swift.Int) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvs",
+                "usr": "s:13DeepChordsSdk6DCChatC12codeCallbackySicSgvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC12codeCallbackySicSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvM",
+                "usr": "s:13DeepChordsSdk6DCChatC12codeCallbackySicSgvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC12codeCallbackySicSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "translateDataCallback",
-            "printedName": "translateDataCallback",
+            "name": "finishCallback",
+            "printedName": "finishCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Foundation.Data) -> ())?",
+                "printedName": "((Swift.String?) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Foundation.Data) -> ()",
+                    "printedName": "(Swift.String?) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "Data",
-                        "printedName": "Foundation.Data",
-                        "usr": "s:10Foundation4DataV"
+                        "name": "Optional",
+                        "printedName": "Swift.String?",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          }
+                        ],
+                        "usr": "s:Sq"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvp",
+            "usr": "s:13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Foundation.Data) -> ())?",
+                    "printedName": "((Swift.String?) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Foundation.Data) -> ()",
+                        "printedName": "(Swift.String?) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Data",
-                            "printedName": "Foundation.Data",
-                            "usr": "s:10Foundation4DataV"
+                            "name": "Optional",
+                            "printedName": "Swift.String?",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              }
+                            ],
+                            "usr": "s:Sq"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvg",
+                "usr": "s:13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Foundation.Data) -> ())?",
+                    "printedName": "((Swift.String?) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Foundation.Data) -> ()",
+                        "printedName": "(Swift.String?) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Data",
-                            "printedName": "Foundation.Data",
-                            "usr": "s:10Foundation4DataV"
+                            "name": "Optional",
+                            "printedName": "Swift.String?",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              }
+                            ],
+                            "usr": "s:Sq"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvs",
+                "usr": "s:13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvM",
+                "usr": "s:13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "codeCallback",
-            "printedName": "codeCallback",
+            "name": "role",
+            "printedName": "role",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.Int) -> ())?",
+                "printedName": "DeepChordsSdk.DCRole?",
                 "children": [
                   {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.Int) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Int",
-                        "printedName": "Swift.Int",
-                        "usr": "s:Si"
-                      }
-                    ]
+                    "kind": "TypeNominal",
+                    "name": "DCRole",
+                    "printedName": "DeepChordsSdk.DCRole",
+                    "usr": "s:13DeepChordsSdk6DCRoleC"
                   }
                 ],
                 "usr": "s:Sq"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvp",
+            "usr": "s:13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.Int) -> ())?",
+                    "printedName": "DeepChordsSdk.DCRole?",
                     "children": [
                       {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.Int) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
-                          }
-                        ]
+                        "kind": "TypeNominal",
+                        "name": "DCRole",
+                        "printedName": "DeepChordsSdk.DCRole",
+                        "usr": "s:13DeepChordsSdk6DCRoleC"
                       }
                     ],
                     "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvg",
+                "usr": "s:13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.Int) -> ())?",
+                    "printedName": "DeepChordsSdk.DCRole?",
                     "children": [
                       {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.Int) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
-                          }
-                        ]
+                        "kind": "TypeNominal",
+                        "name": "DCRole",
+                        "printedName": "DeepChordsSdk.DCRole",
+                        "usr": "s:13DeepChordsSdk6DCRoleC"
                       }
                     ],
                     "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvs",
+                "usr": "s:13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvM",
+                "usr": "s:13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "interruptionCallBack",
-            "printedName": "interruptionCallBack",
+            "name": "tts",
+            "printedName": "tts",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "(() -> ())?",
-                "children": [
-                  {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "() -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      }
-                    ]
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvp",
+            "usr": "s:13DeepChordsSdk6DCChatC3ttsSbvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC3ttsSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "(() -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "() -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvg",
+                "usr": "s:13DeepChordsSdk6DCChatC3ttsSbvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC3ttsSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "(() -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "() -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvs",
+                "usr": "s:13DeepChordsSdk6DCChatC3ttsSbvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC3ttsSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvM",
+                "usr": "s:13DeepChordsSdk6DCChatC3ttsSbvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC3ttsSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "filePathCallBack",
-            "printedName": "filePathCallBack",
+            "name": "ttsAudioFormat",
+            "printedName": "ttsAudioFormat",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.String?) -> ())?",
-                "children": [
-                  {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.String?) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Optional",
-                        "printedName": "Swift.String?",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ],
-                        "usr": "s:Sq"
-                      }
-                    ]
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvp",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvp",
+            "usr": "s:13DeepChordsSdk6DCChatC14ttsAudioFormatSSvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC14ttsAudioFormatSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String?) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String?) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Optional",
-                            "printedName": "Swift.String?",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              }
-                            ],
-                            "usr": "s:Sq"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvg",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvg",
+                "usr": "s:13DeepChordsSdk6DCChatC14ttsAudioFormatSSvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC14ttsAudioFormatSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String?) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String?) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Optional",
-                            "printedName": "Swift.String?",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              }
-                            ],
-                            "usr": "s:Sq"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvs",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvs",
+                "usr": "s:13DeepChordsSdk6DCChatC14ttsAudioFormatSSvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC14ttsAudioFormatSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvM",
-                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvM",
+                "usr": "s:13DeepChordsSdk6DCChatC14ttsAudioFormatSSvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC14ttsAudioFormatSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ]
           },
-          {
-            "kind": "Function",
-            "name": "start",
-            "printedName": "start()",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC5startyyF",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5startyyF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "stop",
-            "printedName": "stop()",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk13DCPhoneRecordC4stopyyF",
-            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC4stopyyF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "funcSelfKind": "NonMutating"
-          }
-        ],
-        "declKind": "Class",
-        "usr": "s:13DeepChordsSdk13DCPhoneRecordC",
-        "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "AccessControl"
-        ],
-        "hasMissingDesignatedInitializers": true,
-        "conformances": [
-          {
-            "kind": "Conformance",
-            "name": "Copyable",
-            "printedName": "Copyable",
-            "usr": "s:s8CopyableP",
-            "mangledName": "$ss8CopyableP"
-          },
-          {
-            "kind": "Conformance",
-            "name": "Escapable",
-            "printedName": "Escapable",
-            "usr": "s:s9EscapableP",
-            "mangledName": "$ss9EscapableP"
-          }
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "StarburstSdk",
-        "printedName": "StarburstSdk",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "TypeDecl",
-        "name": "DCRole",
-        "printedName": "DCRole",
-        "children": [
           {
             "kind": "Var",
-            "name": "sid",
-            "printedName": "sid",
+            "name": "language",
+            "printedName": "language",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCRoleC3sidSSvp",
-            "mangledName": "$s13DeepChordsSdk6DCRoleC3sidSSvp",
+            "usr": "s:13DeepChordsSdk6DCChatC8languageSSvp",
+            "mangledName": "$s13DeepChordsSdk6DCChatC8languageSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC3sidSSvg",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC3sidSSvg",
+                "usr": "s:13DeepChordsSdk6DCChatC8languageSSvg",
+                "mangledName": "$s13DeepChordsSdk6DCChatC8languageSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC3sidSSvs",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC3sidSSvs",
+                "usr": "s:13DeepChordsSdk6DCChatC8languageSSvs",
+                "mangledName": "$s13DeepChordsSdk6DCChatC8languageSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC3sidSSvM",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC3sidSSvM",
+                "usr": "s:13DeepChordsSdk6DCChatC8languageSSvM",
+                "mangledName": "$s13DeepChordsSdk6DCChatC8languageSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
             ]
           },
           {
-            "kind": "Var",
-            "name": "name",
-            "printedName": "name",
+            "kind": "Function",
+            "name": "getVcSpeekerList",
+            "printedName": "getVcSpeekerList(finished:)",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              }
-            ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCRoleC4nameSSvp",
-            "mangledName": "$s13DeepChordsSdk6DCRoleC4nameSSvp",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "hasStorage": true,
-            "accessors": [
-              {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4nameSSvg",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4nameSSvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "([DeepChordsSdk.DCRole]?, Swift.Bool) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4nameSSvs",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4nameSSvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
+                    "name": "Tuple",
+                    "printedName": "([DeepChordsSdk.DCRole]?, Swift.Bool)",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Optional",
+                        "printedName": "[DeepChordsSdk.DCRole]?",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Array",
+                            "printedName": "[DeepChordsSdk.DCRole]",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "DCRole",
+                                "printedName": "DeepChordsSdk.DCRole",
+                                "usr": "s:13DeepChordsSdk6DCRoleC"
+                              }
+                            ],
+                            "usr": "s:Sa"
+                          }
+                        ],
+                        "usr": "s:Sq"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Bool",
+                        "printedName": "Swift.Bool",
+                        "usr": "s:Sb"
+                      }
+                    ]
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4nameSSvM",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4nameSSvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                ]
               }
-            ]
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCChatC16getVcSpeekerList8finishedyySayAA6DCRoleCGSg_Sbtc_tF",
+            "mangledName": "$s13DeepChordsSdk6DCChatC16getVcSpeekerList8finishedyySayAA6DCRoleCGSg_Sbtc_tF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
           },
           {
-            "kind": "Var",
-            "name": "type",
-            "printedName": "type",
+            "kind": "Function",
+            "name": "startChat",
+            "printedName": "startChat()",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCRoleC4typeSSvp",
-            "mangledName": "$s13DeepChordsSdk6DCRoleC4typeSSvp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCChatC9startChatyyF",
+            "mangledName": "$s13DeepChordsSdk6DCChatC9startChatyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "hasStorage": true,
-            "accessors": [
-              {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4typeSSvg",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4typeSSvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4typeSSvs",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4typeSSvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4typeSSvM",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4typeSSvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
-              }
-            ]
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
           },
           {
-            "kind": "Var",
-            "name": "role",
-            "printedName": "role",
+            "kind": "Function",
+            "name": "stopChat",
+            "printedName": "stopChat()",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCRoleC4roleSSvp",
-            "mangledName": "$s13DeepChordsSdk6DCRoleC4roleSSvp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCChatC8stopChatyyF",
+            "mangledName": "$s13DeepChordsSdk6DCChatC8stopChatyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "hasStorage": true,
-            "accessors": [
-              {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4roleSSvg",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4roleSSvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4roleSSvs",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4roleSSvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCRoleC4roleSSvM",
-                "mangledName": "$s13DeepChordsSdk6DCRoleC4roleSSvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
-              }
-            ]
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
           },
           {
-            "kind": "Constructor",
-            "name": "init",
-            "printedName": "init()",
+            "kind": "Function",
+            "name": "startPlayTtsAudio",
+            "printedName": "startPlayTtsAudio()",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCRole",
-                "printedName": "DeepChordsSdk.DCRole",
-                "usr": "s:13DeepChordsSdk6DCRoleC"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
-            "declKind": "Constructor",
-            "usr": "s:13DeepChordsSdk6DCRoleCACycfc",
-            "mangledName": "$s13DeepChordsSdk6DCRoleCACycfc",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCChatC17startPlayTtsAudioyyF",
+            "mangledName": "$s13DeepChordsSdk6DCChatC17startPlayTtsAudioyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
-            "init_kind": "Designated"
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
           },
           {
-            "kind": "Constructor",
-            "name": "init",
-            "printedName": "init(sid:name:type:role:)",
+            "kind": "Function",
+            "name": "stopPlayTtsAudio",
+            "printedName": "stopPlayTtsAudio()",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCRole",
-                "printedName": "DeepChordsSdk.DCRole",
-                "usr": "s:13DeepChordsSdk6DCRoleC"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
-            "declKind": "Constructor",
-            "usr": "s:13DeepChordsSdk6DCRoleC3sid4name4type4roleACSS_S3Stcfc",
-            "mangledName": "$s13DeepChordsSdk6DCRoleC3sid4name4type4roleACSS_S3Stcfc",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCChatC16stopPlayTtsAudioyyF",
+            "mangledName": "$s13DeepChordsSdk6DCChatC16stopPlayTtsAudioyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
-            "init_kind": "Designated"
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
           }
         ],
         "declKind": "Class",
-        "usr": "s:13DeepChordsSdk6DCRoleC",
-        "mangledName": "$s13DeepChordsSdk6DCRoleC",
+        "usr": "s:13DeepChordsSdk6DCChatC",
+        "mangledName": "$s13DeepChordsSdk6DCChatC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "AccessControl",
           "RawDocComment"
         ],
+        "hasMissingDesignatedInitializers": true,
         "conformances": [
           {
             "kind": "Conformance",
           }
         ]
       },
+      {
+        "kind": "Import",
+        "name": "Foundation",
+        "printedName": "Foundation",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
       {
         "kind": "TypeDecl",
-        "name": "DCChat",
-        "printedName": "DCChat",
+        "name": "DCDevice",
+        "printedName": "DCDevice",
         "children": [
           {
             "kind": "Var",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCChat",
-                "printedName": "DeepChordsSdk.DCChat",
-                "usr": "s:13DeepChordsSdk6DCChatC"
+                "name": "DCDevice",
+                "printedName": "DeepChordsSdk.DCDevice",
+                "usr": "s:13DeepChordsSdk8DCDeviceC"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC6sharedACvpZ",
-            "mangledName": "$s13DeepChordsSdk6DCChatC6sharedACvpZ",
+            "usr": "s:13DeepChordsSdk8DCDeviceC6sharedACvpZ",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC6sharedACvpZ",
             "moduleName": "DeepChordsSdk",
             "static": true,
             "declAttributes": [
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCChat",
-                    "printedName": "DeepChordsSdk.DCChat",
-                    "usr": "s:13DeepChordsSdk6DCChatC"
+                    "name": "DCDevice",
+                    "printedName": "DeepChordsSdk.DCDevice",
+                    "usr": "s:13DeepChordsSdk8DCDeviceC"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC6sharedACvgZ",
-                "mangledName": "$s13DeepChordsSdk6DCChatC6sharedACvgZ",
+                "usr": "s:13DeepChordsSdk8DCDeviceC6sharedACvgZ",
+                "mangledName": "$s13DeepChordsSdk8DCDeviceC6sharedACvgZ",
                 "moduleName": "DeepChordsSdk",
                 "static": true,
                 "implicit": true,
           },
           {
             "kind": "Var",
-            "name": "dialogId",
-            "printedName": "dialogId",
+            "name": "eventCallback",
+            "printedName": "eventCallback",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Int",
-                "printedName": "Swift.Int",
-                "usr": "s:Si"
+                "name": "Optional",
+                "printedName": "((Swift.UInt8) -> ())?",
+                "children": [
+                  {
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.UInt8) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "UInt8",
+                        "printedName": "Swift.UInt8",
+                        "usr": "s:s5UInt8V"
+                      }
+                    ]
+                  }
+                ],
+                "usr": "s:Sq"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC8dialogIdSivp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC8dialogIdSivp",
+            "usr": "s:13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvp",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
               "HasStorage",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
             "hasStorage": true,
             "accessors": [
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Int",
-                    "printedName": "Swift.Int",
-                    "usr": "s:Si"
+                    "name": "Optional",
+                    "printedName": "((Swift.UInt8) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.UInt8) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "UInt8",
+                            "printedName": "Swift.UInt8",
+                            "usr": "s:s5UInt8V"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC8dialogIdSivg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC8dialogIdSivg",
+                "usr": "s:13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvg",
+                "mangledName": "$s13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Int",
-                    "printedName": "Swift.Int",
-                    "usr": "s:Si"
+                    "name": "Optional",
+                    "printedName": "((Swift.UInt8) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.UInt8) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "UInt8",
+                            "printedName": "Swift.UInt8",
+                            "usr": "s:s5UInt8V"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC8dialogIdSivs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC8dialogIdSivs",
+                "usr": "s:13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvs",
+                "mangledName": "$s13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC8dialogIdSivM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC8dialogIdSivM",
+                "usr": "s:13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvM",
+                "mangledName": "$s13DeepChordsSdk8DCDeviceC13eventCallbackys5UInt8VcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "asrCallback",
-            "printedName": "asrCallback",
+            "name": "muiscPlayCallback",
+            "printedName": "muiscPlayCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.String, Swift.Int) -> ())?",
+                "printedName": "((Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.String, Swift.Int) -> ()",
+                    "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       {
                         "kind": "TypeNominal",
                         "name": "Tuple",
-                        "printedName": "(Swift.String, Swift.Int)",
+                        "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16)",
                         "children": [
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "UInt16",
+                            "printedName": "Swift.UInt16",
+                            "usr": "s:s6UInt16V"
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
+                            "name": "UInt16",
+                            "printedName": "Swift.UInt16",
+                            "usr": "s:s6UInt16V"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "UInt16",
+                            "printedName": "Swift.UInt16",
+                            "usr": "s:s6UInt16V"
                           }
                         ]
                       }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvp",
+            "usr": "s:13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvp",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String, Swift.Int) -> ())?",
+                    "printedName": "((Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String, Swift.Int) -> ()",
+                        "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           {
                             "kind": "TypeNominal",
                             "name": "Tuple",
-                            "printedName": "(Swift.String, Swift.Int)",
+                            "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16)",
                             "children": [
                               {
                                 "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
+                                "name": "UInt16",
+                                "printedName": "Swift.UInt16",
+                                "usr": "s:s6UInt16V"
                               },
                               {
                                 "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
+                                "name": "UInt16",
+                                "printedName": "Swift.UInt16",
+                                "usr": "s:s6UInt16V"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "UInt16",
+                                "printedName": "Swift.UInt16",
+                                "usr": "s:s6UInt16V"
                               }
                             ]
                           }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvg",
+                "usr": "s:13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvg",
+                "mangledName": "$s13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String, Swift.Int) -> ())?",
+                    "printedName": "((Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String, Swift.Int) -> ()",
+                        "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           {
                             "kind": "TypeNominal",
                             "name": "Tuple",
-                            "printedName": "(Swift.String, Swift.Int)",
+                            "printedName": "(Swift.UInt16, Swift.UInt16, Swift.UInt16)",
                             "children": [
                               {
                                 "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
+                                "name": "UInt16",
+                                "printedName": "Swift.UInt16",
+                                "usr": "s:s6UInt16V"
                               },
                               {
                                 "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
+                                "name": "UInt16",
+                                "printedName": "Swift.UInt16",
+                                "usr": "s:s6UInt16V"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "UInt16",
+                                "printedName": "Swift.UInt16",
+                                "usr": "s:s6UInt16V"
                               }
                             ]
                           }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvs",
+                "usr": "s:13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvs",
+                "mangledName": "$s13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC11asrCallbackySS_SitcSgvM",
+                "usr": "s:13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvM",
+                "mangledName": "$s13DeepChordsSdk8DCDeviceC17muiscPlayCallbackys6UInt16V_A2FtcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
             ]
           },
           {
-            "kind": "Var",
-            "name": "responseCallback",
-            "printedName": "responseCallback",
+            "kind": "Function",
+            "name": "getBatery",
+            "printedName": "getBatery(finished:)",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.String, Swift.Int) -> ())?",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "((Swift.Int, Swift.Int)?) -> ()",
                 "children": [
                   {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.String, Swift.Int) -> ()",
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Optional",
+                    "printedName": "(Swift.Int, Swift.Int)?",
                     "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
                       {
                         "kind": "TypeNominal",
                         "name": "Tuple",
-                        "printedName": "(Swift.String, Swift.Int)",
+                        "printedName": "(Swift.Int, Swift.Int)",
                         "children": [
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
                           },
                           {
                             "kind": "TypeNominal",
                           }
                         ]
                       }
-                    ]
+                    ],
+                    "usr": "s:Sq"
                   }
-                ],
-                "usr": "s:Sq"
+                ]
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC9getBatery8finishedyySi_SitSgc_tF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC9getBatery8finishedyySi_SitSgc_tF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "hasStorage": true,
-            "accessors": [
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "getSoftVersion",
+            "printedName": "getSoftVersion(finished:)",
+            "children": [
               {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.String?) -> ()",
                 "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String, Swift.Int) -> ())?",
+                    "printedName": "Swift.String?",
                     "children": [
                       {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String, Swift.Int) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Tuple",
-                            "printedName": "(Swift.String, Swift.Int)",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
-                              }
-                            ]
-                          }
-                        ]
+                        "kind": "TypeNominal",
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ],
                     "usr": "s:Sq"
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
+                ]
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC14getSoftVersion8finishedyySSSgc_tF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC14getSoftVersion8finishedyySSSgc_tF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "getHardVersion",
+            "printedName": "getHardVersion(finished:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.String?) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String, Swift.Int) -> ())?",
+                    "printedName": "Swift.String?",
                     "children": [
                       {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String, Swift.Int) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Tuple",
-                            "printedName": "(Swift.String, Swift.Int)",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
-                              }
-                            ]
-                          }
-                        ]
+                        "kind": "TypeNominal",
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ],
                     "usr": "s:Sq"
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
+                ]
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC14getHardVersion8finishedyySSSgc_tF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC14getHardVersion8finishedyySSSgc_tF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "findDevice",
+            "printedName": "findDevice(state:finished:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
+                "kind": "TypeNominal",
+                "name": "UInt8",
+                "printedName": "Swift.UInt8",
+                "usr": "s:s5UInt8V"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.Bool) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                     "name": "Void",
                     "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC16responseCallbackySS_SitcSgvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                ]
               }
-            ]
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC10findDevice5state8finishedys5UInt8V_ySbctF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC10findDevice5state8finishedys5UInt8V_ySbctF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
           },
           {
-            "kind": "Var",
-            "name": "dataCallback",
-            "printedName": "dataCallback",
+            "kind": "Function",
+            "name": "setEQ",
+            "printedName": "setEQ(type:finished:)",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ())?",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "UInt8",
+                "printedName": "Swift.UInt8",
+                "usr": "s:s5UInt8V"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.Bool) -> ()",
                 "children": [
                   {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Tuple",
-                        "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int)",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Optional",
-                            "printedName": "Foundation.Data?",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Data",
-                                "printedName": "Foundation.Data",
-                                "usr": "s:10Foundation4DataV"
-                              }
-                            ],
-                            "usr": "s:Sq"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Bool",
-                            "printedName": "Swift.Bool",
-                            "usr": "s:Sb"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
-                          }
-                        ]
-                      }
-                    ]
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
+                  }
+                ]
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC5setEQ4type8finishedys5UInt8V_ySbctF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC5setEQ4type8finishedys5UInt8V_ySbctF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "setCustomEQ",
+            "printedName": "setCustomEQ(index:value:finished:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "UInt8",
+                "printedName": "Swift.UInt8",
+                "usr": "s:s5UInt8V"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "Int",
+                "printedName": "Swift.Int",
+                "usr": "s:Si"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.Bool) -> ()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
-                ],
-                "usr": "s:Sq"
+                ]
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC12dataCallbackySi_10Foundation4DataVSgSbSitcSgvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC12dataCallbackySi_10Foundation4DataVSgSbSitcSgvp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC11setCustomEQ5index5value8finishedys5UInt8V_SiySbctF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC11setCustomEQ5index5value8finishedys5UInt8V_SiySbctF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "hasStorage": true,
-            "accessors": [
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "getEQ",
+            "printedName": "getEQ(finished:)",
+            "children": [
               {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "((type: Swift.UInt8, value: [Swift.Int])?, Swift.Bool) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ())?",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Tuple",
+                    "printedName": "((type: Swift.UInt8, value: [Swift.Int])?, Swift.Bool)",
                     "children": [
                       {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ()",
+                        "kind": "TypeNominal",
+                        "name": "Optional",
+                        "printedName": "(type: Swift.UInt8, value: [Swift.Int])?",
                         "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
                           {
                             "kind": "TypeNominal",
                             "name": "Tuple",
-                            "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int)",
+                            "printedName": "(type: Swift.UInt8, value: [Swift.Int])",
                             "children": [
                               {
                                 "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
+                                "name": "UInt8",
+                                "printedName": "Swift.UInt8",
+                                "usr": "s:s5UInt8V"
                               },
                               {
                                 "kind": "TypeNominal",
-                                "name": "Optional",
-                                "printedName": "Foundation.Data?",
+                                "name": "Array",
+                                "printedName": "[Swift.Int]",
                                 "children": [
                                   {
                                     "kind": "TypeNominal",
-                                    "name": "Data",
-                                    "printedName": "Foundation.Data",
-                                    "usr": "s:10Foundation4DataV"
+                                    "name": "Int",
+                                    "printedName": "Swift.Int",
+                                    "usr": "s:Si"
                                   }
                                 ],
-                                "usr": "s:Sq"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Bool",
-                                "printedName": "Swift.Bool",
-                                "usr": "s:Sb"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
+                                "usr": "s:Sa"
                               }
                             ]
                           }
-                        ]
+                        ],
+                        "usr": "s:Sq"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Bool",
+                        "printedName": "Swift.Bool",
+                        "usr": "s:Sb"
                       }
-                    ],
-                    "usr": "s:Sq"
+                    ]
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC12dataCallbackySi_10Foundation4DataVSgSbSitcSgvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC12dataCallbackySi_10Foundation4DataVSgSbSitcSgvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
+                ]
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC5getEQ8finishedyys5UInt8V4type_SaySiG5valuetSg_Sbtc_tF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC5getEQ8finishedyys5UInt8V4type_SaySiG5valuetSg_Sbtc_tF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "getTotalMusic",
+            "printedName": "getTotalMusic(finished:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.Int?) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ())?",
+                    "printedName": "Swift.Int?",
                     "children": [
                       {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Tuple",
-                            "printedName": "(Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int)",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Optional",
-                                "printedName": "Foundation.Data?",
-                                "children": [
-                                  {
-                                    "kind": "TypeNominal",
-                                    "name": "Data",
-                                    "printedName": "Foundation.Data",
-                                    "usr": "s:10Foundation4DataV"
-                                  }
-                                ],
-                                "usr": "s:Sq"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Bool",
-                                "printedName": "Swift.Bool",
-                                "usr": "s:Sb"
-                              },
-                              {
-                                "kind": "TypeNominal",
-                                "name": "Int",
-                                "printedName": "Swift.Int",
-                                "usr": "s:Si"
-                              }
-                            ]
-                          }
-                        ]
+                        "kind": "TypeNominal",
+                        "name": "Int",
+                        "printedName": "Swift.Int",
+                        "usr": "s:Si"
                       }
                     ],
                     "usr": "s:Sq"
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC12dataCallbackySi_10Foundation4DataVSgSbSitcSgvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC12dataCallbackySi_10Foundation4DataVSgSbSitcSgvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
+                ]
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC13getTotalMusic8finishedyySiSgc_tF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC13getTotalMusic8finishedyySiSgc_tF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "getMusicList",
+            "printedName": "getMusicList(size:index:finished:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
+                "kind": "TypeNominal",
+                "name": "UInt8",
+                "printedName": "Swift.UInt8",
+                "usr": "s:s5UInt8V"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "UInt16",
+                "printedName": "Swift.UInt16",
+                "usr": "s:s6UInt16V"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "([DeepChordsSdk.DCMusic]?, Swift.Bool) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                     "name": "Void",
                     "printedName": "()"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC12dataCallbackySi_10Foundation4DataVSgSbSitcSgvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC12dataCallbackySi_10Foundation4DataVSgSbSitcSgvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "codeCallback",
-            "printedName": "codeCallback",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.Int) -> ())?",
-                "children": [
+                  },
                   {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.Int) -> ()",
+                    "kind": "TypeNominal",
+                    "name": "Tuple",
+                    "printedName": "([DeepChordsSdk.DCMusic]?, Swift.Bool)",
                     "children": [
                       {
                         "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
+                        "name": "Optional",
+                        "printedName": "[DeepChordsSdk.DCMusic]?",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Array",
+                            "printedName": "[DeepChordsSdk.DCMusic]",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "DCMusic",
+                                "printedName": "DeepChordsSdk.DCMusic",
+                                "usr": "s:13DeepChordsSdk7DCMusicC"
+                              }
+                            ],
+                            "usr": "s:Sa"
+                          }
+                        ],
+                        "usr": "s:Sq"
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "Int",
-                        "printedName": "Swift.Int",
-                        "usr": "s:Si"
+                        "name": "Bool",
+                        "printedName": "Swift.Bool",
+                        "usr": "s:Sb"
                       }
                     ]
                   }
-                ],
-                "usr": "s:Sq"
+                ]
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC12codeCallbackySicSgvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC12codeCallbackySicSgvp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC12getMusicList4size5index8finishedys5UInt8V_s6UInt16VySayAA7DCMusicCGSg_SbtctF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC12getMusicList4size5index8finishedys5UInt8V_s6UInt16VySayAA7DCMusicCGSg_SbtctF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "hasStorage": true,
-            "accessors": [
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "setMusicPlayMode",
+            "printedName": "setMusicPlayMode(mode:finished:)",
+            "children": [
               {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "UInt8",
+                "printedName": "Swift.UInt8",
+                "usr": "s:s5UInt8V"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.Bool) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.Int) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.Int) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC12codeCallbackySicSgvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC12codeCallbackySicSgvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
+                ]
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC16setMusicPlayMode4mode8finishedys5UInt8V_ySbctF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC16setMusicPlayMode4mode8finishedys5UInt8V_ySbctF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "getMusicPlayMode",
+            "printedName": "getMusicPlayMode(finished:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.UInt8?, Swift.Bool) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.Int) -> ())?",
+                    "name": "Tuple",
+                    "printedName": "(Swift.UInt8?, Swift.Bool)",
                     "children": [
                       {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.Int) -> ()",
+                        "kind": "TypeNominal",
+                        "name": "Optional",
+                        "printedName": "Swift.UInt8?",
                         "children": [
                           {
                             "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
+                            "name": "UInt8",
+                            "printedName": "Swift.UInt8",
+                            "usr": "s:s5UInt8V"
                           }
-                        ]
+                        ],
+                        "usr": "s:Sq"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Bool",
+                        "printedName": "Swift.Bool",
+                        "usr": "s:Sb"
                       }
-                    ],
-                    "usr": "s:Sq"
+                    ]
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC12codeCallbackySicSgvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC12codeCallbackySicSgvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
+                ]
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC16getMusicPlayMode8finishedyys5UInt8VSg_Sbtc_tF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC16getMusicPlayMode8finishedyys5UInt8VSg_Sbtc_tF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "musicPlay",
+            "printedName": "musicPlay(index:finished:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
+                "kind": "TypeNominal",
+                "name": "Optional",
+                "printedName": "Swift.UInt16?",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
+                    "name": "UInt16",
+                    "printedName": "Swift.UInt16",
+                    "usr": "s:s6UInt16V"
                   }
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC12codeCallbackySicSgvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC12codeCallbackySicSgvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "finishCallback",
-            "printedName": "finishCallback",
-            "children": [
+                "usr": "s:Sq"
+              },
               {
-                "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.String?) -> ())?",
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.UInt16?, Swift.Bool) -> ()",
                 "children": [
                   {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.String?) -> ()",
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Tuple",
+                    "printedName": "(Swift.UInt16?, Swift.Bool)",
                     "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
                       {
                         "kind": "TypeNominal",
                         "name": "Optional",
-                        "printedName": "Swift.String?",
+                        "printedName": "Swift.UInt16?",
                         "children": [
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "UInt16",
+                            "printedName": "Swift.UInt16",
+                            "usr": "s:s6UInt16V"
                           }
                         ],
                         "usr": "s:Sq"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Bool",
+                        "printedName": "Swift.Bool",
+                        "usr": "s:Sb"
                       }
                     ]
                   }
-                ],
-                "usr": "s:Sq"
+                ]
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC9musicPlay5index8finishedys6UInt16VSg_yAI_SbtctF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC9musicPlay5index8finishedys6UInt16VSg_yAI_SbtctF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "hasStorage": true,
-            "accessors": [
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "musicPause",
+            "printedName": "musicPause(finished:)",
+            "children": [
               {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String?) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String?) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Optional",
-                            "printedName": "Swift.String?",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              }
-                            ],
-                            "usr": "s:Sq"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.Bool) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String?) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String?) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Optional",
-                            "printedName": "Swift.String?",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "String",
-                                "printedName": "Swift.String",
-                                "usr": "s:SS"
-                              }
-                            ],
-                            "usr": "s:Sq"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
+                  }
+                ]
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC10musicPause8finishedyySbc_tF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC10musicPause8finishedyySbc_tF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "musicDelete",
+            "printedName": "musicDelete(list:finished:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "Array",
+                "printedName": "[Swift.UInt16]",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "UInt16",
+                    "printedName": "Swift.UInt16",
+                    "usr": "s:s6UInt16V"
                   }
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
+                "usr": "s:Sa"
               },
               {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "(Swift.Bool) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                     "name": "Void",
                     "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC14finishCallbackySSSgcSgvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                ]
               }
-            ]
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk8DCDeviceC11musicDelete4list8finishedySays6UInt16VG_ySbctF",
+            "mangledName": "$s13DeepChordsSdk8DCDeviceC11musicDelete4list8finishedySays6UInt16VG_ySbctF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "isFromExtension": true,
+            "funcSelfKind": "NonMutating"
+          }
+        ],
+        "declKind": "Class",
+        "usr": "s:13DeepChordsSdk8DCDeviceC",
+        "mangledName": "$s13DeepChordsSdk8DCDeviceC",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "AccessControl"
+        ],
+        "hasMissingDesignatedInitializers": true,
+        "conformances": [
+          {
+            "kind": "Conformance",
+            "name": "Copyable",
+            "printedName": "Copyable",
+            "usr": "s:s8CopyableP",
+            "mangledName": "$ss8CopyableP"
           },
+          {
+            "kind": "Conformance",
+            "name": "Escapable",
+            "printedName": "Escapable",
+            "usr": "s:s9EscapableP",
+            "mangledName": "$ss9EscapableP"
+          }
+        ]
+      },
+      {
+        "kind": "Import",
+        "name": "Foundation",
+        "printedName": "Foundation",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
+      {
+        "kind": "Import",
+        "name": "StarburstSdk",
+        "printedName": "StarburstSdk",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk"
+      },
+      {
+        "kind": "TypeDecl",
+        "name": "DCLogger",
+        "printedName": "DCLogger",
+        "children": [
           {
             "kind": "Var",
-            "name": "role",
-            "printedName": "role",
+            "name": "logs",
+            "printedName": "logs",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "DeepChordsSdk.DCRole?",
+                "name": "Array",
+                "printedName": "[Swift.String]",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCRole",
-                    "printedName": "DeepChordsSdk.DCRole",
-                    "usr": "s:13DeepChordsSdk6DCRoleC"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
-                "usr": "s:Sq"
+                "usr": "s:Sa"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvp",
+            "usr": "s:13DeepChordsSdk8DCLoggerC4logsSaySSGvpZ",
+            "mangledName": "$s13DeepChordsSdk8DCLoggerC4logsSaySSGvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
               "HasInitialValue",
+              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "DeepChordsSdk.DCRole?",
+                    "name": "Array",
+                    "printedName": "[Swift.String]",
                     "children": [
                       {
                         "kind": "TypeNominal",
-                        "name": "DCRole",
-                        "printedName": "DeepChordsSdk.DCRole",
-                        "usr": "s:13DeepChordsSdk6DCRoleC"
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ],
-                    "usr": "s:Sq"
+                    "usr": "s:Sa"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvg",
+                "usr": "s:13DeepChordsSdk8DCLoggerC4logsSaySSGvgZ",
+                "mangledName": "$s13DeepChordsSdk8DCLoggerC4logsSaySSGvgZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
                 "accessorKind": "get"
               },
               {
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "DeepChordsSdk.DCRole?",
+                    "name": "Array",
+                    "printedName": "[Swift.String]",
                     "children": [
                       {
                         "kind": "TypeNominal",
-                        "name": "DCRole",
-                        "printedName": "DeepChordsSdk.DCRole",
-                        "usr": "s:13DeepChordsSdk6DCRoleC"
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ],
-                    "usr": "s:Sq"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC4roleAA6DCRoleCSgvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "tts",
-            "printedName": "tts",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
-              }
-            ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC3ttsSbvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC3ttsSbvp",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "hasStorage": true,
-            "accessors": [
-              {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "usr": "s:Sa"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC3ttsSbvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC3ttsSbvg",
+                "usr": "s:13DeepChordsSdk8DCLoggerC4logsSaySSGvsZ",
+                "mangledName": "$s13DeepChordsSdk8DCLoggerC4logsSaySSGvsZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
-                  }
+                "declAttributes": [
+                  "Final"
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC3ttsSbvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC3ttsSbvs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
                 "accessorKind": "set"
               },
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC3ttsSbvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC3ttsSbvM",
+                "usr": "s:13DeepChordsSdk8DCLoggerC4logsSaySSGvMZ",
+                "mangledName": "$s13DeepChordsSdk8DCLoggerC4logsSaySSGvMZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
                 "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "ttsAudioFormat",
-            "printedName": "ttsAudioFormat",
+            "name": "starburstLogPath",
+            "printedName": "starburstLogPath",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC14ttsAudioFormatSSvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC14ttsAudioFormatSSvp",
+            "usr": "s:13DeepChordsSdk8DCLoggerC16starburstLogPathSSvpZ",
+            "mangledName": "$s13DeepChordsSdk8DCLoggerC16starburstLogPathSSvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
-              "AccessControl",
-              "RawDocComment"
+              "Final",
+              "AccessControl"
             ],
-            "hasStorage": true,
             "accessors": [
               {
                 "kind": "Accessor",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC14ttsAudioFormatSSvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC14ttsAudioFormatSSvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC14ttsAudioFormatSSvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC14ttsAudioFormatSSvs",
+                "usr": "s:13DeepChordsSdk8DCLoggerC16starburstLogPathSSvgZ",
+                "mangledName": "$s13DeepChordsSdk8DCLoggerC16starburstLogPathSSvgZ",
                 "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
+                "static": true,
+                "declAttributes": [
+                  "Final"
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC14ttsAudioFormatSSvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC14ttsAudioFormatSSvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                "accessorKind": "get"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "language",
-            "printedName": "language",
+            "name": "isDebug",
+            "printedName": "isDebug",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk6DCChatC8languageSSvp",
-            "mangledName": "$s13DeepChordsSdk6DCChatC8languageSSvp",
+            "usr": "s:13DeepChordsSdk8DCLoggerC7isDebugSbvpZ",
+            "mangledName": "$s13DeepChordsSdk8DCLoggerC7isDebugSbvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
               "HasInitialValue",
+              "Final",
               "HasStorage",
-              "AccessControl",
-              "RawDocComment"
+              "AccessControl"
             ],
             "hasStorage": true,
             "accessors": [
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC8languageSSvg",
-                "mangledName": "$s13DeepChordsSdk6DCChatC8languageSSvg",
+                "usr": "s:13DeepChordsSdk8DCLoggerC7isDebugSbvgZ",
+                "mangledName": "$s13DeepChordsSdk8DCLoggerC7isDebugSbvgZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
                 "accessorKind": "get"
               },
               {
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC8languageSSvs",
-                "mangledName": "$s13DeepChordsSdk6DCChatC8languageSSvs",
+                "usr": "s:13DeepChordsSdk8DCLoggerC7isDebugSbvsZ",
+                "mangledName": "$s13DeepChordsSdk8DCLoggerC7isDebugSbvsZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
                 "accessorKind": "set"
               },
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk6DCChatC8languageSSvM",
-                "mangledName": "$s13DeepChordsSdk6DCChatC8languageSSvM",
+                "usr": "s:13DeepChordsSdk8DCLoggerC7isDebugSbvMZ",
+                "mangledName": "$s13DeepChordsSdk8DCLoggerC7isDebugSbvMZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
                 "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Function",
-            "name": "getVcSpeekerList",
-            "printedName": "getVcSpeekerList(finished:)",
+            "name": "debug",
+            "printedName": "debug(_:line:separator:terminator:)",
             "children": [
               {
                 "kind": "TypeNominal",
                 "printedName": "()"
               },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "([DeepChordsSdk.DCRole]?, Swift.Bool) -> ()",
+                "kind": "TypeNominal",
+                "name": "Array",
+                "printedName": "[Any]",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Tuple",
-                    "printedName": "([DeepChordsSdk.DCRole]?, Swift.Bool)",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Optional",
-                        "printedName": "[DeepChordsSdk.DCRole]?",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Array",
-                            "printedName": "[DeepChordsSdk.DCRole]",
-                            "children": [
-                              {
-                                "kind": "TypeNominal",
-                                "name": "DCRole",
-                                "printedName": "DeepChordsSdk.DCRole",
-                                "usr": "s:13DeepChordsSdk6DCRoleC"
-                              }
-                            ],
-                            "usr": "s:Sa"
-                          }
-                        ],
-                        "usr": "s:Sq"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Bool",
-                        "printedName": "Swift.Bool",
-                        "usr": "s:Sb"
-                      }
-                    ]
+                    "name": "ProtocolComposition",
+                    "printedName": "Any"
                   }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCChatC16getVcSpeekerList8finishedyySayAA6DCRoleCGSg_Sbtc_tF",
-            "mangledName": "$s13DeepChordsSdk6DCChatC16getVcSpeekerList8finishedyySayAA6DCRoleCGSg_Sbtc_tF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "startChat",
-            "printedName": "startChat()",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCChatC9startChatyyF",
-            "mangledName": "$s13DeepChordsSdk6DCChatC9startChatyyF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "stopChat",
-            "printedName": "stopChat()",
-            "children": [
+                ],
+                "usr": "s:Sa"
+              },
               {
                 "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCChatC8stopChatyyF",
-            "mangledName": "$s13DeepChordsSdk6DCChatC8stopChatyyF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "startPlayTtsAudio",
-            "printedName": "startPlayTtsAudio()",
-            "children": [
+                "name": "Int",
+                "printedName": "Swift.Int",
+                "hasDefaultArg": true,
+                "usr": "s:Si"
+              },
               {
                 "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCChatC17startPlayTtsAudioyyF",
-            "mangledName": "$s13DeepChordsSdk6DCChatC17startPlayTtsAudioyyF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "isFromExtension": true,
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "stopPlayTtsAudio",
-            "printedName": "stopPlayTtsAudio()",
-            "children": [
+                "name": "String",
+                "printedName": "Swift.String",
+                "hasDefaultArg": true,
+                "usr": "s:SS"
+              },
               {
                 "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
+                "name": "String",
+                "printedName": "Swift.String",
+                "hasDefaultArg": true,
+                "usr": "s:SS"
               }
             ],
             "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCChatC16stopPlayTtsAudioyyF",
-            "mangledName": "$s13DeepChordsSdk6DCChatC16stopPlayTtsAudioyyF",
+            "usr": "s:13DeepChordsSdk8DCLoggerC5debug_4line9separator10terminatoryypd_SiS2StFZ",
+            "mangledName": "$s13DeepChordsSdk8DCLoggerC5debug_4line9separator10terminatoryypd_SiS2StFZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
+              "Final",
+              "AccessControl"
             ],
             "isFromExtension": true,
             "funcSelfKind": "NonMutating"
           }
         ],
         "declKind": "Class",
-        "usr": "s:13DeepChordsSdk6DCChatC",
-        "mangledName": "$s13DeepChordsSdk6DCChatC",
+        "usr": "s:13DeepChordsSdk8DCLoggerC",
+        "mangledName": "$s13DeepChordsSdk8DCLoggerC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "AccessControl",
           "RawDocComment"
         ]
       },
-      {
-        "kind": "Import",
-        "name": "StarburstSdk",
-        "printedName": "StarburstSdk",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
       {
         "kind": "TypeDecl",
-        "name": "DCResponseModel",
-        "printedName": "DCResponseModel",
+        "name": "DCMusic",
+        "printedName": "DCMusic",
         "children": [
           {
             "kind": "Var",
-            "name": "text",
-            "printedName": "text",
+            "name": "id",
+            "printedName": "id",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "UInt16",
+                "printedName": "Swift.UInt16",
+                "usr": "s:s6UInt16V"
+              }
+            ],
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk7DCMusicC2ids6UInt16Vvp",
+            "mangledName": "$s13DeepChordsSdk7DCMusicC2ids6UInt16Vvp",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "hasStorage": true,
+            "accessors": [
+              {
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "UInt16",
+                    "printedName": "Swift.UInt16",
+                    "usr": "s:s6UInt16V"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk7DCMusicC2ids6UInt16Vvg",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC2ids6UInt16Vvg",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "UInt16",
+                    "printedName": "Swift.UInt16",
+                    "usr": "s:s6UInt16V"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk7DCMusicC2ids6UInt16Vvs",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC2ids6UInt16Vvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk7DCMusicC2ids6UInt16VvM",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC2ids6UInt16VvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
+              }
+            ]
+          },
+          {
+            "kind": "Var",
+            "name": "name",
+            "printedName": "name",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk15DCResponseModelC4textSSvp",
-            "mangledName": "$s13DeepChordsSdk15DCResponseModelC4textSSvp",
+            "usr": "s:13DeepChordsSdk7DCMusicC4nameSSvp",
+            "mangledName": "$s13DeepChordsSdk7DCMusicC4nameSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC4textSSvg",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC4textSSvg",
+                "usr": "s:13DeepChordsSdk7DCMusicC4nameSSvg",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC4nameSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC4textSSvs",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC4textSSvs",
+                "usr": "s:13DeepChordsSdk7DCMusicC4nameSSvs",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC4nameSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC4textSSvM",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC4textSSvM",
+                "usr": "s:13DeepChordsSdk7DCMusicC4nameSSvM",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC4nameSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "index",
-            "printedName": "index",
+            "name": "size",
+            "printedName": "size",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk15DCResponseModelC5indexSivp",
-            "mangledName": "$s13DeepChordsSdk15DCResponseModelC5indexSivp",
+            "usr": "s:13DeepChordsSdk7DCMusicC4sizeSivp",
+            "mangledName": "$s13DeepChordsSdk7DCMusicC4sizeSivp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC5indexSivg",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC5indexSivg",
+                "usr": "s:13DeepChordsSdk7DCMusicC4sizeSivg",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC4sizeSivg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC5indexSivs",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC5indexSivs",
+                "usr": "s:13DeepChordsSdk7DCMusicC4sizeSivs",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC4sizeSivs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC5indexSivM",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC5indexSivM",
+                "usr": "s:13DeepChordsSdk7DCMusicC4sizeSivM",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC4sizeSivM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "definite",
-            "printedName": "definite",
+            "name": "dur",
+            "printedName": "dur",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
+                "name": "Int",
+                "printedName": "Swift.Int",
+                "usr": "s:Si"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk15DCResponseModelC8definiteSbvp",
-            "mangledName": "$s13DeepChordsSdk15DCResponseModelC8definiteSbvp",
+            "usr": "s:13DeepChordsSdk7DCMusicC3durSivp",
+            "mangledName": "$s13DeepChordsSdk7DCMusicC3durSivp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "Int",
+                    "printedName": "Swift.Int",
+                    "usr": "s:Si"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC8definiteSbvg",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC8definiteSbvg",
+                "usr": "s:13DeepChordsSdk7DCMusicC3durSivg",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC3durSivg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "Int",
+                    "printedName": "Swift.Int",
+                    "usr": "s:Si"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC8definiteSbvs",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC8definiteSbvs",
+                "usr": "s:13DeepChordsSdk7DCMusicC3durSivs",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC3durSivs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk15DCResponseModelC8definiteSbvM",
-                "mangledName": "$s13DeepChordsSdk15DCResponseModelC8definiteSbvM",
+                "usr": "s:13DeepChordsSdk7DCMusicC3durSivM",
+                "mangledName": "$s13DeepChordsSdk7DCMusicC3durSivM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ]
+          },
+          {
+            "kind": "Constructor",
+            "name": "init",
+            "printedName": "init(from:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "DCMusic",
+                "printedName": "DeepChordsSdk.DCMusic",
+                "usr": "s:13DeepChordsSdk7DCMusicC"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "Decoder",
+                "printedName": "any Swift.Decoder",
+                "usr": "s:s7DecoderP"
+              }
+            ],
+            "declKind": "Constructor",
+            "usr": "s:13DeepChordsSdk7DCMusicC4fromACs7Decoder_p_tKcfc",
+            "mangledName": "$s13DeepChordsSdk7DCMusicC4fromACs7Decoder_p_tKcfc",
+            "moduleName": "DeepChordsSdk",
+            "implicit": true,
+            "declAttributes": [
+              "Required"
+            ],
+            "throwing": true,
+            "init_kind": "Designated"
+          },
+          {
+            "kind": "Function",
+            "name": "encode",
+            "printedName": "encode(to:)",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "Encoder",
+                "printedName": "any Swift.Encoder",
+                "usr": "s:s7EncoderP"
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk7DCMusicC6encode2toys7Encoder_p_tKF",
+            "mangledName": "$s13DeepChordsSdk7DCMusicC6encode2toys7Encoder_p_tKF",
+            "moduleName": "DeepChordsSdk",
+            "implicit": true,
+            "throwing": true,
+            "funcSelfKind": "NonMutating"
           }
         ],
         "declKind": "Class",
-        "usr": "s:13DeepChordsSdk15DCResponseModelC",
-        "mangledName": "$s13DeepChordsSdk15DCResponseModelC",
+        "usr": "s:13DeepChordsSdk7DCMusicC",
+        "mangledName": "$s13DeepChordsSdk7DCMusicC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "AccessControl",
             "printedName": "Escapable",
             "usr": "s:s9EscapableP",
             "mangledName": "$ss9EscapableP"
+          },
+          {
+            "kind": "Conformance",
+            "name": "Decodable",
+            "printedName": "Decodable",
+            "usr": "s:Se",
+            "mangledName": "$sSe"
+          },
+          {
+            "kind": "Conformance",
+            "name": "Encodable",
+            "printedName": "Encodable",
+            "usr": "s:SE",
+            "mangledName": "$sSE"
           }
         ]
       },
+      {
+        "kind": "Import",
+        "name": "StarburstSdk",
+        "printedName": "StarburstSdk",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
       {
         "kind": "TypeDecl",
-        "name": "DCZh2En",
-        "printedName": "DCZh2En",
+        "name": "DCPhoneRecord",
+        "printedName": "DCPhoneRecord",
         "children": [
           {
             "kind": "Var",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCZh2En",
-                "printedName": "DeepChordsSdk.DCZh2En",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC"
+                "name": "DCPhoneRecord",
+                "printedName": "DeepChordsSdk.DCPhoneRecord",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC6sharedACvpZ",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC6sharedACvpZ",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC6sharedACvpZ",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC6sharedACvpZ",
             "moduleName": "DeepChordsSdk",
             "static": true,
             "declAttributes": [
               "HasInitialValue",
               "Final",
               "HasStorage",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
             "isLet": true,
             "hasStorage": true,
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCZh2En",
-                    "printedName": "DeepChordsSdk.DCZh2En",
-                    "usr": "s:13DeepChordsSdk7DCZh2EnC"
+                    "name": "DCPhoneRecord",
+                    "printedName": "DeepChordsSdk.DCPhoneRecord",
+                    "usr": "s:13DeepChordsSdk13DCPhoneRecordC"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC6sharedACvgZ",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC6sharedACvgZ",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC6sharedACvgZ",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC6sharedACvgZ",
                 "moduleName": "DeepChordsSdk",
                 "static": true,
                 "implicit": true,
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC12fromLanguageSSvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC12fromLanguageSSvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC12fromLanguageSSvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12fromLanguageSSvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC12fromLanguageSSvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12fromLanguageSSvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC12fromLanguageSSvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12fromLanguageSSvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12fromLanguageSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC10toLanguageSSvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC10toLanguageSSvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC10toLanguageSSvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC10toLanguageSSvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC10toLanguageSSvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC10toLanguageSSvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC10toLanguageSSvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC10toLanguageSSvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC10toLanguageSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC11isTranslateSbvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC11isTranslateSbvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC11isTranslateSbvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11isTranslateSbvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC11isTranslateSbvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11isTranslateSbvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC11isTranslateSbvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11isTranslateSbvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11isTranslateSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC5isTTsSbvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC5isTTsSbvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC5isTTsSbvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5isTTsSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC5isTTsSbvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC5isTTsSbvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC5isTTsSbvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5isTTsSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC5isTTsSbvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC5isTTsSbvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC5isTTsSbvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5isTTsSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC5isTTsSbvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC5isTTsSbvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC5isTTsSbvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5isTTsSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC9ttsFormatSSvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC9ttsFormatSSvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC9ttsFormatSSvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC9ttsFormatSSvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC9ttsFormatSSvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC9ttsFormatSSvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC9ttsFormatSSvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC9ttsFormatSSvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC9ttsFormatSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                "printedName": "((Swift.String) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                    "printedName": "(Swift.String) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "DCResponseModel",
-                        "printedName": "DeepChordsSdk.DCResponseModel",
-                        "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC11asrCallbackyAA15DCResponseModelCcSgvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC11asrCallbackyAA15DCResponseModelCcSgvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "DCResponseModel",
-                            "printedName": "DeepChordsSdk.DCResponseModel",
-                            "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC11asrCallbackyAA15DCResponseModelCcSgvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11asrCallbackyAA15DCResponseModelCcSgvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "DCResponseModel",
-                            "printedName": "DeepChordsSdk.DCResponseModel",
-                            "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC11asrCallbackyAA15DCResponseModelCcSgvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11asrCallbackyAA15DCResponseModelCcSgvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC11asrCallbackyAA15DCResponseModelCcSgvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11asrCallbackyAA15DCResponseModelCcSgvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC11asrCallbackySScSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                "printedName": "((Swift.String) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                    "printedName": "(Swift.String) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "DCResponseModel",
-                        "printedName": "DeepChordsSdk.DCResponseModel",
-                        "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                        "name": "String",
+                        "printedName": "Swift.String",
+                        "usr": "s:SS"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC17translateCallbackyAA15DCResponseModelCcSgvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC17translateCallbackyAA15DCResponseModelCcSgvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "DCResponseModel",
-                            "printedName": "DeepChordsSdk.DCResponseModel",
-                            "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC17translateCallbackyAA15DCResponseModelCcSgvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC17translateCallbackyAA15DCResponseModelCcSgvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((DeepChordsSdk.DCResponseModel) -> ())?",
+                    "printedName": "((Swift.String) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(DeepChordsSdk.DCResponseModel) -> ()",
+                        "printedName": "(Swift.String) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "DCResponseModel",
-                            "printedName": "DeepChordsSdk.DCResponseModel",
-                            "usr": "s:13DeepChordsSdk15DCResponseModelC"
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC17translateCallbackyAA15DCResponseModelCcSgvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC17translateCallbackyAA15DCResponseModelCcSgvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC17translateCallbackyAA15DCResponseModelCcSgvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC17translateCallbackyAA15DCResponseModelCcSgvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC17translateCallbackySScSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC21translateDataCallbacky10Foundation0G0VcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC12codeCallbackySicSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC20interruptionCallBackyycSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvp",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvp",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvp",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvg",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvg",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvg",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvs",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvs",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvs",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvM",
-                "mangledName": "$s13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvM",
+                "usr": "s:13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvM",
+                "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC16filePathCallBackySSSgcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ],
             "declKind": "Func",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC5startyyF",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC5startyyF",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC5startyyF",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC5startyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "AccessControl",
               }
             ],
             "declKind": "Func",
-            "usr": "s:13DeepChordsSdk7DCZh2EnC4stopyyF",
-            "mangledName": "$s13DeepChordsSdk7DCZh2EnC4stopyyF",
+            "usr": "s:13DeepChordsSdk13DCPhoneRecordC4stopyyF",
+            "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC4stopyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "AccessControl",
           }
         ],
         "declKind": "Class",
-        "usr": "s:13DeepChordsSdk7DCZh2EnC",
-        "mangledName": "$s13DeepChordsSdk7DCZh2EnC",
+        "usr": "s:13DeepChordsSdk13DCPhoneRecordC",
+        "mangledName": "$s13DeepChordsSdk13DCPhoneRecordC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "AccessControl"
           "RawDocComment"
         ]
       },
+      {
+        "kind": "Import",
+        "name": "StarburstSdk",
+        "printedName": "StarburstSdk",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk"
+      },
       {
         "kind": "TypeDecl",
-        "name": "DCMusic",
-        "printedName": "DCMusic",
+        "name": "DCSdk",
+        "printedName": "DCSdk",
         "children": [
           {
             "kind": "Var",
-            "name": "id",
-            "printedName": "id",
+            "name": "shared",
+            "printedName": "shared",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "UInt16",
-                "printedName": "Swift.UInt16",
-                "usr": "s:s6UInt16V"
+                "name": "DCSdk",
+                "printedName": "DeepChordsSdk.DCSdk",
+                "usr": "s:13DeepChordsSdk5DCSdkC"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCMusicC2ids6UInt16Vvp",
-            "mangledName": "$s13DeepChordsSdk7DCMusicC2ids6UInt16Vvp",
+            "usr": "s:13DeepChordsSdk5DCSdkC6sharedACvpZ",
+            "mangledName": "$s13DeepChordsSdk5DCSdkC6sharedACvpZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
               "HasInitialValue",
+              "Final",
               "HasStorage",
-              "AccessControl",
-              "RawDocComment"
+              "AccessControl"
             ],
+            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "UInt16",
-                    "printedName": "Swift.UInt16",
-                    "usr": "s:s6UInt16V"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC2ids6UInt16Vvg",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC2ids6UInt16Vvg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
-                  {
-                    "kind": "TypeNominal",
-                    "name": "UInt16",
-                    "printedName": "Swift.UInt16",
-                    "usr": "s:s6UInt16V"
+                    "name": "DCSdk",
+                    "printedName": "DeepChordsSdk.DCSdk",
+                    "usr": "s:13DeepChordsSdk5DCSdkC"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC2ids6UInt16Vvs",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC2ids6UInt16Vvs",
+                "usr": "s:13DeepChordsSdk5DCSdkC6sharedACvgZ",
+                "mangledName": "$s13DeepChordsSdk5DCSdkC6sharedACvgZ",
                 "moduleName": "DeepChordsSdk",
+                "static": true,
                 "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  }
+                "declAttributes": [
+                  "Final"
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC2ids6UInt16VvM",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC2ids6UInt16VvM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                "accessorKind": "get"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "name",
-            "printedName": "name",
+            "name": "authCallback",
+            "printedName": "authCallback",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Optional",
+                "printedName": "((Swift.Int, Swift.String) -> ())?",
+                "children": [
+                  {
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.Int, Swift.String) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Tuple",
+                        "printedName": "(Swift.Int, Swift.String)",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "usr": "s:Sq"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCMusicC4nameSSvp",
-            "mangledName": "$s13DeepChordsSdk7DCMusicC4nameSSvp",
+            "usr": "s:13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvp",
+            "mangledName": "$s13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Optional",
+                    "printedName": "((Swift.Int, Swift.String) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.Int, Swift.String) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Tuple",
+                            "printedName": "(Swift.Int, Swift.String)",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              }
+                            ]
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC4nameSSvg",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC4nameSSvg",
+                "usr": "s:13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvg",
+                "mangledName": "$s13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Optional",
+                    "printedName": "((Swift.Int, Swift.String) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.Int, Swift.String) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Tuple",
+                            "printedName": "(Swift.Int, Swift.String)",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "Int",
+                                "printedName": "Swift.Int",
+                                "usr": "s:Si"
+                              },
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              }
+                            ]
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC4nameSSvs",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC4nameSSvs",
+                "usr": "s:13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvs",
+                "mangledName": "$s13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC4nameSSvM",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC4nameSSvM",
+                "usr": "s:13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvM",
+                "mangledName": "$s13DeepChordsSdk5DCSdkC12authCallbackySi_SStcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
             ]
           },
           {
-            "kind": "Var",
-            "name": "size",
-            "printedName": "size",
+            "kind": "Function",
+            "name": "initSDK",
+            "printedName": "initSDK()",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Int",
-                "printedName": "Swift.Int",
-                "usr": "s:Si"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCMusicC4sizeSivp",
-            "mangledName": "$s13DeepChordsSdk7DCMusicC4sizeSivp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk5DCSdkC7initSDKyyF",
+            "mangledName": "$s13DeepChordsSdk5DCSdkC7initSDKyyF",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "hasStorage": true,
-            "accessors": [
+            "funcSelfKind": "NonMutating"
+          }
+        ],
+        "declKind": "Class",
+        "usr": "s:13DeepChordsSdk5DCSdkC",
+        "mangledName": "$s13DeepChordsSdk5DCSdkC",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "AccessControl"
+        ],
+        "hasMissingDesignatedInitializers": true,
+        "conformances": [
+          {
+            "kind": "Conformance",
+            "name": "Copyable",
+            "printedName": "Copyable",
+            "usr": "s:s8CopyableP",
+            "mangledName": "$ss8CopyableP"
+          },
+          {
+            "kind": "Conformance",
+            "name": "Escapable",
+            "printedName": "Escapable",
+            "usr": "s:s9EscapableP",
+            "mangledName": "$ss9EscapableP"
+          }
+        ]
+      },
+      {
+        "kind": "Import",
+        "name": "StarburstSdk",
+        "printedName": "StarburstSdk",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
+      },
+      {
+        "kind": "TypeDecl",
+        "name": "DCText",
+        "printedName": "DCText",
+        "children": [
+          {
+            "kind": "Function",
+            "name": "translate",
+            "printedName": "translate(text:from:to:finished:)",
+            "children": [
               {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Int",
-                    "printedName": "Swift.Int",
-                    "usr": "s:Si"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC4sizeSivg",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC4sizeSivg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
+                "kind": "TypeNominal",
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
+              },
+              {
+                "kind": "TypeNominal",
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "((stream: Swift.String, finish: Swift.Bool)?) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Int",
-                    "printedName": "Swift.Int",
-                    "usr": "s:Si"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC4sizeSivs",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC4sizeSivs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
+                    "name": "Optional",
+                    "printedName": "(stream: Swift.String, finish: Swift.Bool)?",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Tuple",
+                        "printedName": "(stream: Swift.String, finish: Swift.Bool)",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Bool",
+                            "printedName": "Swift.Bool",
+                            "usr": "s:Sb"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC4sizeSivM",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC4sizeSivM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "dur",
-            "printedName": "dur",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Int",
-                "printedName": "Swift.Int",
-                "usr": "s:Si"
+                ]
               }
             ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk7DCMusicC3durSivp",
-            "mangledName": "$s13DeepChordsSdk7DCMusicC3durSivp",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCTextC9translate4text4from2to8finishedySS_S2SySS6stream_Sb6finishtSgctFZ",
+            "mangledName": "$s13DeepChordsSdk6DCTextC9translate4text4from2to8finishedySS_S2SySS6stream_Sb6finishtSgctFZ",
             "moduleName": "DeepChordsSdk",
+            "static": true,
             "declAttributes": [
-              "HasInitialValue",
-              "HasStorage",
+              "Final",
               "AccessControl",
               "RawDocComment"
             ],
-            "hasStorage": true,
-            "accessors": [
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "sumary",
+            "printedName": "sumary(text:finished:)",
+            "children": [
               {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Int",
-                    "printedName": "Swift.Int",
-                    "usr": "s:Si"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC3durSivg",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC3durSivg",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "get"
+                "kind": "TypeNominal",
+                "name": "Void",
+                "printedName": "()"
               },
               {
-                "kind": "Accessor",
-                "name": "Set",
-                "printedName": "Set()",
+                "kind": "TypeNominal",
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
+              },
+              {
+                "kind": "TypeFunc",
+                "name": "Function",
+                "printedName": "((stream: Swift.String, finish: Swift.Bool)?) -> ()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Int",
-                    "printedName": "Swift.Int",
-                    "usr": "s:Si"
-                  }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC3durSivs",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC3durSivs",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "set"
-              },
-              {
-                "kind": "Accessor",
-                "name": "Modify",
-                "printedName": "Modify()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
+                    "name": "Optional",
+                    "printedName": "(stream: Swift.String, finish: Swift.Bool)?",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Tuple",
+                        "printedName": "(stream: Swift.String, finish: Swift.Bool)",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Bool",
+                            "printedName": "Swift.Bool",
+                            "usr": "s:Sb"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
-                ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk7DCMusicC3durSivM",
-                "mangledName": "$s13DeepChordsSdk7DCMusicC3durSivM",
-                "moduleName": "DeepChordsSdk",
-                "implicit": true,
-                "accessorKind": "_modify"
+                ]
               }
-            ]
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCTextC6sumary4text8finishedySS_ySS6stream_Sb6finishtSgctFZ",
+            "mangledName": "$s13DeepChordsSdk6DCTextC6sumary4text8finishedySS_ySS6stream_Sb6finishtSgctFZ",
+            "moduleName": "DeepChordsSdk",
+            "static": true,
+            "declAttributes": [
+              "Final",
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "funcSelfKind": "NonMutating"
           },
           {
-            "kind": "Constructor",
-            "name": "init",
-            "printedName": "init(from:)",
+            "kind": "Function",
+            "name": "cancelTranslateByTextWithSplit",
+            "printedName": "cancelTranslateByTextWithSplit()",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCMusic",
-                "printedName": "DeepChordsSdk.DCMusic",
-                "usr": "s:13DeepChordsSdk7DCMusicC"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Decoder",
-                "printedName": "any Swift.Decoder",
-                "usr": "s:s7DecoderP"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
-            "declKind": "Constructor",
-            "usr": "s:13DeepChordsSdk7DCMusicC4fromACs7Decoder_p_tKcfc",
-            "mangledName": "$s13DeepChordsSdk7DCMusicC4fromACs7Decoder_p_tKcfc",
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCTextC30cancelTranslateByTextWithSplityyFZ",
+            "mangledName": "$s13DeepChordsSdk6DCTextC30cancelTranslateByTextWithSplityyFZ",
             "moduleName": "DeepChordsSdk",
-            "implicit": true,
+            "static": true,
             "declAttributes": [
-              "Required"
+              "Final",
+              "AccessControl",
+              "RawDocComment"
             ],
-            "throwing": true,
-            "init_kind": "Designated"
+            "funcSelfKind": "NonMutating"
           },
           {
             "kind": "Function",
-            "name": "encode",
-            "printedName": "encode(to:)",
+            "name": "cancelSummaryByTextWithSplit",
+            "printedName": "cancelSummaryByTextWithSplit()",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Void",
                 "printedName": "()"
-              },
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk6DCTextC28cancelSummaryByTextWithSplityyFZ",
+            "mangledName": "$s13DeepChordsSdk6DCTextC28cancelSummaryByTextWithSplityyFZ",
+            "moduleName": "DeepChordsSdk",
+            "static": true,
+            "declAttributes": [
+              "Final",
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "getDeviceName",
+            "printedName": "getDeviceName()",
+            "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Encoder",
-                "printedName": "any Swift.Encoder",
-                "usr": "s:s7EncoderP"
+                "name": "Optional",
+                "printedName": "Swift.String?",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
+                ],
+                "usr": "s:Sq"
               }
             ],
             "declKind": "Func",
-            "usr": "s:13DeepChordsSdk7DCMusicC6encode2toys7Encoder_p_tKF",
-            "mangledName": "$s13DeepChordsSdk7DCMusicC6encode2toys7Encoder_p_tKF",
+            "usr": "s:13DeepChordsSdk6DCTextC13getDeviceNameSSSgyFZ",
+            "mangledName": "$s13DeepChordsSdk6DCTextC13getDeviceNameSSSgyFZ",
             "moduleName": "DeepChordsSdk",
-            "implicit": true,
-            "throwing": true,
+            "static": true,
+            "declAttributes": [
+              "Final",
+              "AccessControl",
+              "RawDocComment"
+            ],
             "funcSelfKind": "NonMutating"
           }
         ],
         "declKind": "Class",
-        "usr": "s:13DeepChordsSdk7DCMusicC",
-        "mangledName": "$s13DeepChordsSdk7DCMusicC",
+        "usr": "s:13DeepChordsSdk6DCTextC",
+        "mangledName": "$s13DeepChordsSdk6DCTextC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
           "AccessControl",
             "printedName": "Escapable",
             "usr": "s:s9EscapableP",
             "mangledName": "$ss9EscapableP"
-          },
-          {
-            "kind": "Conformance",
-            "name": "Decodable",
-            "printedName": "Decodable",
-            "usr": "s:Se",
-            "mangledName": "$sSe"
-          },
-          {
-            "kind": "Conformance",
-            "name": "Encodable",
-            "printedName": "Encodable",
-            "usr": "s:SE",
-            "mangledName": "$sSE"
           }
         ]
       },
       },
       {
         "kind": "TypeDecl",
-        "name": "DCCallRecord",
-        "printedName": "DCCallRecord",
+        "name": "DCAsrModel",
+        "printedName": "DCAsrModel",
         "children": [
           {
             "kind": "Var",
-            "name": "shared",
-            "printedName": "shared",
+            "name": "text",
+            "printedName": "text",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "DCCallRecord",
-                "printedName": "DeepChordsSdk.DCCallRecord",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC6sharedACvpZ",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC6sharedACvpZ",
+            "usr": "s:13DeepChordsSdk10DCAsrModelC4textSSvp",
+            "mangledName": "$s13DeepChordsSdk10DCAsrModelC4textSSvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
-            "isLet": true,
             "hasStorage": true,
             "accessors": [
               {
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "DCCallRecord",
-                    "printedName": "DeepChordsSdk.DCCallRecord",
-                    "usr": "s:13DeepChordsSdk12DCCallRecordC"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC6sharedACvgZ",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC6sharedACvgZ",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC4textSSvg",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC4textSSvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "get"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  },
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC4textSSvs",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC4textSSvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
+              {
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "Void",
+                    "printedName": "()"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC4textSSvM",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC4textSSvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "fromLanguage",
-            "printedName": "fromLanguage",
+            "name": "index",
+            "printedName": "index",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Int",
+                "printedName": "Swift.Int",
+                "usr": "s:Si"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC12fromLanguageSSvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC12fromLanguageSSvp",
+            "usr": "s:13DeepChordsSdk10DCAsrModelC5indexSivp",
+            "mangledName": "$s13DeepChordsSdk10DCAsrModelC5indexSivp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Int",
+                    "printedName": "Swift.Int",
+                    "usr": "s:Si"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12fromLanguageSSvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12fromLanguageSSvg",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC5indexSivg",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC5indexSivg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Int",
+                    "printedName": "Swift.Int",
+                    "usr": "s:Si"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12fromLanguageSSvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12fromLanguageSSvs",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC5indexSivs",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC5indexSivs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12fromLanguageSSvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12fromLanguageSSvM",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC5indexSivM",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC5indexSivM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "toLanguage",
-            "printedName": "toLanguage",
+            "name": "definite",
+            "printedName": "definite",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC10toLanguageSSvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC10toLanguageSSvp",
+            "usr": "s:13DeepChordsSdk10DCAsrModelC8definiteSbvp",
+            "mangledName": "$s13DeepChordsSdk10DCAsrModelC8definiteSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC10toLanguageSSvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC10toLanguageSSvg",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC8definiteSbvg",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC8definiteSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC10toLanguageSSvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC10toLanguageSSvs",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC8definiteSbvs",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC8definiteSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC10toLanguageSSvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC10toLanguageSSvM",
+                "usr": "s:13DeepChordsSdk10DCAsrModelC8definiteSbvM",
+                "mangledName": "$s13DeepChordsSdk10DCAsrModelC8definiteSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
               }
             ]
+          }
+        ],
+        "declKind": "Class",
+        "usr": "s:13DeepChordsSdk10DCAsrModelC",
+        "mangledName": "$s13DeepChordsSdk10DCAsrModelC",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "AccessControl",
+          "RawDocComment"
+        ],
+        "hasMissingDesignatedInitializers": true,
+        "conformances": [
+          {
+            "kind": "Conformance",
+            "name": "Copyable",
+            "printedName": "Copyable",
+            "usr": "s:s8CopyableP",
+            "mangledName": "$ss8CopyableP"
+          },
+          {
+            "kind": "Conformance",
+            "name": "Escapable",
+            "printedName": "Escapable",
+            "usr": "s:s9EscapableP",
+            "mangledName": "$ss9EscapableP"
+          }
+        ]
+      },
+      {
+        "kind": "TypeDecl",
+        "name": "DCZh2En",
+        "printedName": "DCZh2En",
+        "children": [
+          {
+            "kind": "Var",
+            "name": "shared",
+            "printedName": "shared",
+            "children": [
+              {
+                "kind": "TypeNominal",
+                "name": "DCZh2En",
+                "printedName": "DeepChordsSdk.DCZh2En",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC"
+              }
+            ],
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC6sharedACvpZ",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC6sharedACvpZ",
+            "moduleName": "DeepChordsSdk",
+            "static": true,
+            "declAttributes": [
+              "HasInitialValue",
+              "Final",
+              "HasStorage",
+              "AccessControl"
+            ],
+            "isLet": true,
+            "hasStorage": true,
+            "accessors": [
+              {
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
+                "children": [
+                  {
+                    "kind": "TypeNominal",
+                    "name": "DCZh2En",
+                    "printedName": "DeepChordsSdk.DCZh2En",
+                    "usr": "s:13DeepChordsSdk7DCZh2EnC"
+                  }
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC6sharedACvgZ",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC6sharedACvgZ",
+                "moduleName": "DeepChordsSdk",
+                "static": true,
+                "implicit": true,
+                "declAttributes": [
+                  "Final"
+                ],
+                "accessorKind": "get"
+              }
+            ]
           },
           {
             "kind": "Var",
-            "name": "isTranslate",
-            "printedName": "isTranslate",
+            "name": "fromLanguage",
+            "printedName": "fromLanguage",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC11isTranslateSbvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC11isTranslateSbvp",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC12fromLanguageSSvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC12fromLanguageSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC11isTranslateSbvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11isTranslateSbvg",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC12fromLanguageSSvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12fromLanguageSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC11isTranslateSbvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11isTranslateSbvs",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC12fromLanguageSSvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12fromLanguageSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC11isTranslateSbvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11isTranslateSbvM",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC12fromLanguageSSvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12fromLanguageSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "isTTs",
-            "printedName": "isTTs",
+            "name": "toLanguage",
+            "printedName": "toLanguage",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC5isTTsSbvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC5isTTsSbvp",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC10toLanguageSSvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC10toLanguageSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "name": "Get",
                 "printedName": "Get()",
                 "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                  {
+                    "kind": "TypeNominal",
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC5isTTsSbvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC5isTTsSbvg",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC10toLanguageSSvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC10toLanguageSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC5isTTsSbvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC5isTTsSbvs",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC10toLanguageSSvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC10toLanguageSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC5isTTsSbvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC5isTTsSbvM",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC10toLanguageSSvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC10toLanguageSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "ttsFormat",
-            "printedName": "ttsFormat",
+            "name": "isTranslate",
+            "printedName": "isTranslate",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC9ttsFormatSSvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC9ttsFormatSSvp",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC11isTranslateSbvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC11isTranslateSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC9ttsFormatSSvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC9ttsFormatSSvg",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC11isTranslateSbvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11isTranslateSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC9ttsFormatSSvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC9ttsFormatSSvs",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC11isTranslateSbvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11isTranslateSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC9ttsFormatSSvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC9ttsFormatSSvM",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC11isTranslateSbvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11isTranslateSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "asrCallback",
-            "printedName": "asrCallback",
+            "name": "isTTs",
+            "printedName": "isTTs",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.String) -> ())?",
-                "children": [
-                  {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.String) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
-                      }
-                    ]
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "Bool",
+                "printedName": "Swift.Bool",
+                "usr": "s:Sb"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvp",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC5isTTsSbvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC5isTTsSbvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvg",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC5isTTsSbvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC5isTTsSbvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "Bool",
+                    "printedName": "Swift.Bool",
+                    "usr": "s:Sb"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvs",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC5isTTsSbvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC5isTTsSbvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC11asrCallbackySScSgvM",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC5isTTsSbvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC5isTTsSbvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "asrOtherCallback",
-            "printedName": "asrOtherCallback",
+            "name": "ttsFormat",
+            "printedName": "ttsFormat",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "((Swift.String) -> ())?",
-                "children": [
-                  {
-                    "kind": "TypeFunc",
-                    "name": "Function",
-                    "printedName": "(Swift.String) -> ()",
-                    "children": [
-                      {
-                        "kind": "TypeNominal",
-                        "name": "Void",
-                        "printedName": "()"
-                      },
-                      {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
-                      }
-                    ]
-                  }
-                ],
-                "usr": "s:Sq"
+                "name": "String",
+                "printedName": "Swift.String",
+                "usr": "s:SS"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvp",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC9ttsFormatSSvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC9ttsFormatSSvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvg",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC9ttsFormatSSvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC9ttsFormatSSvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
-                    "children": [
-                      {
-                        "kind": "TypeFunc",
-                        "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
-                        "children": [
-                          {
-                            "kind": "TypeNominal",
-                            "name": "Void",
-                            "printedName": "()"
-                          },
-                          {
-                            "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
-                          }
-                        ]
-                      }
-                    ],
-                    "usr": "s:Sq"
+                    "name": "String",
+                    "printedName": "Swift.String",
+                    "usr": "s:SS"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvs",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC9ttsFormatSSvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC9ttsFormatSSvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                     "printedName": "()"
                   }
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16asrOtherCallbackySScSgvM",
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC9ttsFormatSSvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC9ttsFormatSSvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "codeCallback",
-            "printedName": "codeCallback",
+            "name": "asrCallback",
+            "printedName": "asrCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.Int) -> ())?",
+                "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.Int) -> ()",
+                    "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "Int",
-                        "printedName": "Swift.Int",
-                        "usr": "s:Si"
+                        "name": "DCAsrModel",
+                        "printedName": "DeepChordsSdk.DCAsrModel",
+                        "usr": "s:13DeepChordsSdk10DCAsrModelC"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvp",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC11asrCallbackyAA10DCAsrModelCcSgvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC11asrCallbackyAA10DCAsrModelCcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.Int) -> ())?",
+                    "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.Int) -> ()",
+                        "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
+                            "name": "DCAsrModel",
+                            "printedName": "DeepChordsSdk.DCAsrModel",
+                            "usr": "s:13DeepChordsSdk10DCAsrModelC"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvg",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC11asrCallbackyAA10DCAsrModelCcSgvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11asrCallbackyAA10DCAsrModelCcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.Int) -> ())?",
+                    "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.Int) -> ()",
+                        "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Int",
-                            "printedName": "Swift.Int",
-                            "usr": "s:Si"
+                            "name": "DCAsrModel",
+                            "printedName": "DeepChordsSdk.DCAsrModel",
+                            "usr": "s:13DeepChordsSdk10DCAsrModelC"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvs",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC11asrCallbackyAA10DCAsrModelCcSgvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11asrCallbackyAA10DCAsrModelCcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12codeCallbackySicSgvM",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC11asrCallbackyAA10DCAsrModelCcSgvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC11asrCallbackyAA10DCAsrModelCcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "filePathCallBack",
-            "printedName": "filePathCallBack",
+            "name": "translateCallback",
+            "printedName": "translateCallback",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Optional",
-                "printedName": "((Swift.String) -> ())?",
+                "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                 "children": [
                   {
                     "kind": "TypeFunc",
                     "name": "Function",
-                    "printedName": "(Swift.String) -> ()",
+                    "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                     "children": [
                       {
                         "kind": "TypeNominal",
                       },
                       {
                         "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
+                        "name": "DCAsrModel",
+                        "printedName": "DeepChordsSdk.DCAsrModel",
+                        "usr": "s:13DeepChordsSdk10DCAsrModelC"
                       }
                     ]
                   }
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvp",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC17translateCallbackyAA10DCAsrModelCcSgvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC17translateCallbackyAA10DCAsrModelCcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
+                    "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
+                        "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "DCAsrModel",
+                            "printedName": "DeepChordsSdk.DCAsrModel",
+                            "usr": "s:13DeepChordsSdk10DCAsrModelC"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvg",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC17translateCallbackyAA10DCAsrModelCcSgvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC17translateCallbackyAA10DCAsrModelCcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "((Swift.String) -> ())?",
+                    "printedName": "((DeepChordsSdk.DCAsrModel) -> ())?",
                     "children": [
                       {
                         "kind": "TypeFunc",
                         "name": "Function",
-                        "printedName": "(Swift.String) -> ()",
+                        "printedName": "(DeepChordsSdk.DCAsrModel) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "DCAsrModel",
+                            "printedName": "DeepChordsSdk.DCAsrModel",
+                            "usr": "s:13DeepChordsSdk10DCAsrModelC"
                           }
                         ]
                       }
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvs",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC17translateCallbackyAA10DCAsrModelCcSgvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC17translateCallbackyAA10DCAsrModelCcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC16filePathCallBackySScSgvM",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC17translateCallbackyAA10DCAsrModelCcSgvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC17translateCallbackyAA10DCAsrModelCcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
           },
           {
             "kind": "Var",
-            "name": "opusCallBack",
-            "printedName": "opusCallBack",
+            "name": "translateDataCallback",
+            "printedName": "translateDataCallback",
             "children": [
               {
                 "kind": "TypeNominal",
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvp",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvp",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
               "HasInitialValue",
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvg",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvg",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvg",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "get"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvs",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvs",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvs",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "set"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvM",
-                "mangledName": "$s13DeepChordsSdk12DCCallRecordC12opusCallBacky10Foundation4DataVcSgvM",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC21translateDataCallbacky10Foundation0G0VcSgvM",
                 "moduleName": "DeepChordsSdk",
                 "implicit": true,
                 "accessorKind": "_modify"
             ]
           },
           {
-            "kind": "Function",
-            "name": "inputPcm",
-            "printedName": "inputPcm(data:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Data",
-                "printedName": "Foundation.Data",
-                "usr": "s:10Foundation4DataV"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC8inputPcm4datay10Foundation4DataV_tF",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC8inputPcm4datay10Foundation4DataV_tF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl"
-            ],
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "start",
-            "printedName": "start()",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC5startyyF",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC5startyyF",
-            "moduleName": "DeepChordsSdk",
-            "declAttributes": [
-              "AccessControl",
-              "RawDocComment"
-            ],
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "stop",
-            "printedName": "stop()",
+            "kind": "Var",
+            "name": "codeCallback",
+            "printedName": "codeCallback",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
+                "name": "Optional",
+                "printedName": "((Swift.Int) -> ())?",
+                "children": [
+                  {
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.Int) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Int",
+                        "printedName": "Swift.Int",
+                        "usr": "s:Si"
+                      }
+                    ]
+                  }
+                ],
+                "usr": "s:Sq"
               }
             ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk12DCCallRecordC4stopyyF",
-            "mangledName": "$s13DeepChordsSdk12DCCallRecordC4stopyyF",
+            "declKind": "Var",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvp",
             "moduleName": "DeepChordsSdk",
             "declAttributes": [
+              "HasInitialValue",
+              "HasStorage",
               "AccessControl",
               "RawDocComment"
             ],
-            "funcSelfKind": "NonMutating"
-          }
-        ],
-        "declKind": "Class",
-        "usr": "s:13DeepChordsSdk12DCCallRecordC",
-        "mangledName": "$s13DeepChordsSdk12DCCallRecordC",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "AccessControl",
-          "RawDocComment"
-        ],
-        "hasMissingDesignatedInitializers": true,
-        "conformances": [
-          {
-            "kind": "Conformance",
-            "name": "Copyable",
-            "printedName": "Copyable",
-            "usr": "s:s8CopyableP",
-            "mangledName": "$ss8CopyableP"
-          },
-          {
-            "kind": "Conformance",
-            "name": "Escapable",
-            "printedName": "Escapable",
-            "usr": "s:s9EscapableP",
-            "mangledName": "$ss9EscapableP"
-          }
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "Foundation",
-        "printedName": "Foundation",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "StarburstSdk",
-        "printedName": "StarburstSdk",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "TypeDecl",
-        "name": "DCText",
-        "printedName": "DCText",
-        "children": [
-          {
-            "kind": "Function",
-            "name": "translate",
-            "printedName": "translate(text:from:to:finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              },
+            "hasStorage": true,
+            "accessors": [
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "((stream: Swift.String, finish: Swift.Bool)?) -> ()",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "Void",
-                    "printedName": "()"
-                  },
+                "kind": "Accessor",
+                "name": "Get",
+                "printedName": "Get()",
+                "children": [
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "(stream: Swift.String, finish: Swift.Bool)?",
+                    "printedName": "((Swift.Int) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "Tuple",
-                        "printedName": "(stream: Swift.String, finish: Swift.Bool)",
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.Int) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "Void",
+                            "printedName": "()"
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Bool",
-                            "printedName": "Swift.Bool",
-                            "usr": "s:Sb"
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
                           }
                         ]
                       }
                     ],
                     "usr": "s:Sq"
                   }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCTextC9translate4text4from2to8finishedySS_S2SySS6stream_Sb6finishtSgctFZ",
-            "mangledName": "$s13DeepChordsSdk6DCTextC9translate4text4from2to8finishedySS_S2SySS6stream_Sb6finishtSgctFZ",
-            "moduleName": "DeepChordsSdk",
-            "static": true,
-            "declAttributes": [
-              "Final",
-              "AccessControl"
-            ],
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "sumary",
-            "printedName": "sumary(text:finished:)",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvg",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "get"
               },
               {
-                "kind": "TypeFunc",
-                "name": "Function",
-                "printedName": "((stream: Swift.String, finish: Swift.Bool)?) -> ()",
+                "kind": "Accessor",
+                "name": "Set",
+                "printedName": "Set()",
                 "children": [
                   {
                     "kind": "TypeNominal",
                   {
                     "kind": "TypeNominal",
                     "name": "Optional",
-                    "printedName": "(stream: Swift.String, finish: Swift.Bool)?",
+                    "printedName": "((Swift.Int) -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "Tuple",
-                        "printedName": "(stream: Swift.String, finish: Swift.Bool)",
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.Int) -> ()",
                         "children": [
                           {
                             "kind": "TypeNominal",
-                            "name": "String",
-                            "printedName": "Swift.String",
-                            "usr": "s:SS"
+                            "name": "Void",
+                            "printedName": "()"
                           },
                           {
                             "kind": "TypeNominal",
-                            "name": "Bool",
-                            "printedName": "Swift.Bool",
-                            "usr": "s:Sb"
+                            "name": "Int",
+                            "printedName": "Swift.Int",
+                            "usr": "s:Si"
                           }
                         ]
                       }
                     ],
                     "usr": "s:Sq"
                   }
-                ]
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCTextC6sumary4text8finishedySS_ySS6stream_Sb6finishtSgctFZ",
-            "mangledName": "$s13DeepChordsSdk6DCTextC6sumary4text8finishedySS_ySS6stream_Sb6finishtSgctFZ",
-            "moduleName": "DeepChordsSdk",
-            "static": true,
-            "declAttributes": [
-              "Final",
-              "AccessControl"
-            ],
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "cancelTranslateByTextWithSplit",
-            "printedName": "cancelTranslateByTextWithSplit()",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCTextC30cancelTranslateByTextWithSplityyFZ",
-            "mangledName": "$s13DeepChordsSdk6DCTextC30cancelTranslateByTextWithSplityyFZ",
-            "moduleName": "DeepChordsSdk",
-            "static": true,
-            "declAttributes": [
-              "Final",
-              "AccessControl"
-            ],
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "cancelSummaryByTextWithSplit",
-            "printedName": "cancelSummaryByTextWithSplit()",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Void",
-                "printedName": "()"
-              }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCTextC28cancelSummaryByTextWithSplityyFZ",
-            "mangledName": "$s13DeepChordsSdk6DCTextC28cancelSummaryByTextWithSplityyFZ",
-            "moduleName": "DeepChordsSdk",
-            "static": true,
-            "declAttributes": [
-              "Final",
-              "AccessControl"
-            ],
-            "funcSelfKind": "NonMutating"
-          },
-          {
-            "kind": "Function",
-            "name": "getDeviceName",
-            "printedName": "getDeviceName()",
-            "children": [
+                ],
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvs",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "set"
+              },
               {
-                "kind": "TypeNominal",
-                "name": "Optional",
-                "printedName": "Swift.String?",
+                "kind": "Accessor",
+                "name": "Modify",
+                "printedName": "Modify()",
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "name": "Void",
+                    "printedName": "()"
                   }
                 ],
-                "usr": "s:Sq"
+                "declKind": "Accessor",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC12codeCallbackySicSgvM",
+                "moduleName": "DeepChordsSdk",
+                "implicit": true,
+                "accessorKind": "_modify"
               }
-            ],
-            "declKind": "Func",
-            "usr": "s:13DeepChordsSdk6DCTextC13getDeviceNameSSSgyFZ",
-            "mangledName": "$s13DeepChordsSdk6DCTextC13getDeviceNameSSSgyFZ",
-            "moduleName": "DeepChordsSdk",
-            "static": true,
-            "declAttributes": [
-              "Final",
-              "AccessControl"
-            ],
-            "funcSelfKind": "NonMutating"
-          }
-        ],
-        "declKind": "Class",
-        "usr": "s:13DeepChordsSdk6DCTextC",
-        "mangledName": "$s13DeepChordsSdk6DCTextC",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "AccessControl"
-        ],
-        "hasMissingDesignatedInitializers": true,
-        "conformances": [
-          {
-            "kind": "Conformance",
-            "name": "Copyable",
-            "printedName": "Copyable",
-            "usr": "s:s8CopyableP",
-            "mangledName": "$ss8CopyableP"
+            ]
           },
-          {
-            "kind": "Conformance",
-            "name": "Escapable",
-            "printedName": "Escapable",
-            "usr": "s:s9EscapableP",
-            "mangledName": "$ss9EscapableP"
-          }
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "Foundation",
-        "printedName": "Foundation",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk",
-        "declAttributes": [
-          "RawDocComment"
-        ]
-      },
-      {
-        "kind": "Import",
-        "name": "StarburstSdk",
-        "printedName": "StarburstSdk",
-        "declKind": "Import",
-        "moduleName": "DeepChordsSdk"
-      },
-      {
-        "kind": "TypeDecl",
-        "name": "DCLogger",
-        "printedName": "DCLogger",
-        "children": [
           {
             "kind": "Var",
-            "name": "logs",
-            "printedName": "logs",
+            "name": "interruptionCallBack",
+            "printedName": "interruptionCallBack",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "Array",
-                "printedName": "[Swift.String]",
+                "name": "Optional",
+                "printedName": "(() -> ())?",
                 "children": [
                   {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "() -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      }
+                    ]
                   }
                 ],
-                "usr": "s:Sa"
+                "usr": "s:Sq"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk8DCLoggerC4logsSaySSGvpZ",
-            "mangledName": "$s13DeepChordsSdk8DCLoggerC4logsSaySSGvpZ",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
               "AccessControl",
               "RawDocComment"
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Array",
-                    "printedName": "[Swift.String]",
+                    "name": "Optional",
+                    "printedName": "(() -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "() -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          }
+                        ]
                       }
                     ],
-                    "usr": "s:Sa"
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCLoggerC4logsSaySSGvgZ",
-                "mangledName": "$s13DeepChordsSdk8DCLoggerC4logsSaySSGvgZ",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "get"
               },
               {
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Array",
-                    "printedName": "[Swift.String]",
+                    "name": "Optional",
+                    "printedName": "(() -> ())?",
                     "children": [
                       {
-                        "kind": "TypeNominal",
-                        "name": "String",
-                        "printedName": "Swift.String",
-                        "usr": "s:SS"
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "() -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          }
+                        ]
                       }
                     ],
-                    "usr": "s:Sa"
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCLoggerC4logsSaySSGvsZ",
-                "mangledName": "$s13DeepChordsSdk8DCLoggerC4logsSaySSGvsZ",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvs",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "set"
               },
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCLoggerC4logsSaySSGvMZ",
-                "mangledName": "$s13DeepChordsSdk8DCLoggerC4logsSaySSGvMZ",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC20interruptionCallBackyycSgvM",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Var",
-            "name": "starburstLogPath",
-            "printedName": "starburstLogPath",
+            "name": "filePathCallBack",
+            "printedName": "filePathCallBack",
             "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "usr": "s:SS"
-              }
-            ],
-            "declKind": "Var",
-            "usr": "s:13DeepChordsSdk8DCLoggerC16starburstLogPathSSvpZ",
-            "mangledName": "$s13DeepChordsSdk8DCLoggerC16starburstLogPathSSvpZ",
-            "moduleName": "DeepChordsSdk",
-            "static": true,
-            "declAttributes": [
-              "Final",
-              "AccessControl"
-            ],
-            "accessors": [
-              {
-                "kind": "Accessor",
-                "name": "Get",
-                "printedName": "Get()",
+                "name": "Optional",
+                "printedName": "((Swift.String?) -> ())?",
                 "children": [
                   {
-                    "kind": "TypeNominal",
-                    "name": "String",
-                    "printedName": "Swift.String",
-                    "usr": "s:SS"
+                    "kind": "TypeFunc",
+                    "name": "Function",
+                    "printedName": "(Swift.String?) -> ()",
+                    "children": [
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Void",
+                        "printedName": "()"
+                      },
+                      {
+                        "kind": "TypeNominal",
+                        "name": "Optional",
+                        "printedName": "Swift.String?",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "String",
+                            "printedName": "Swift.String",
+                            "usr": "s:SS"
+                          }
+                        ],
+                        "usr": "s:Sq"
+                      }
+                    ]
                   }
                 ],
-                "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCLoggerC16starburstLogPathSSvgZ",
-                "mangledName": "$s13DeepChordsSdk8DCLoggerC16starburstLogPathSSvgZ",
-                "moduleName": "DeepChordsSdk",
-                "static": true,
-                "declAttributes": [
-                  "Final"
-                ],
-                "accessorKind": "get"
-              }
-            ]
-          },
-          {
-            "kind": "Var",
-            "name": "isDebug",
-            "printedName": "isDebug",
-            "children": [
-              {
-                "kind": "TypeNominal",
-                "name": "Bool",
-                "printedName": "Swift.Bool",
-                "usr": "s:Sb"
+                "usr": "s:Sq"
               }
             ],
             "declKind": "Var",
-            "usr": "s:13DeepChordsSdk8DCLoggerC7isDebugSbvpZ",
-            "mangledName": "$s13DeepChordsSdk8DCLoggerC7isDebugSbvpZ",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvp",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvp",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
               "HasInitialValue",
-              "Final",
               "HasStorage",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
             "hasStorage": true,
             "accessors": [
                 "children": [
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "Optional",
+                    "printedName": "((Swift.String?) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String?) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Optional",
+                            "printedName": "Swift.String?",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              }
+                            ],
+                            "usr": "s:Sq"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCLoggerC7isDebugSbvgZ",
-                "mangledName": "$s13DeepChordsSdk8DCLoggerC7isDebugSbvgZ",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvg",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvg",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "get"
               },
               {
                   },
                   {
                     "kind": "TypeNominal",
-                    "name": "Bool",
-                    "printedName": "Swift.Bool",
-                    "usr": "s:Sb"
+                    "name": "Optional",
+                    "printedName": "((Swift.String?) -> ())?",
+                    "children": [
+                      {
+                        "kind": "TypeFunc",
+                        "name": "Function",
+                        "printedName": "(Swift.String?) -> ()",
+                        "children": [
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Void",
+                            "printedName": "()"
+                          },
+                          {
+                            "kind": "TypeNominal",
+                            "name": "Optional",
+                            "printedName": "Swift.String?",
+                            "children": [
+                              {
+                                "kind": "TypeNominal",
+                                "name": "String",
+                                "printedName": "Swift.String",
+                                "usr": "s:SS"
+                              }
+                            ],
+                            "usr": "s:Sq"
+                          }
+                        ]
+                      }
+                    ],
+                    "usr": "s:Sq"
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCLoggerC7isDebugSbvsZ",
-                "mangledName": "$s13DeepChordsSdk8DCLoggerC7isDebugSbvsZ",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvs",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvs",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
-                "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
+                "implicit": true,
                 "accessorKind": "set"
               },
               {
                   }
                 ],
                 "declKind": "Accessor",
-                "usr": "s:13DeepChordsSdk8DCLoggerC7isDebugSbvMZ",
-                "mangledName": "$s13DeepChordsSdk8DCLoggerC7isDebugSbvMZ",
+                "usr": "s:13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvM",
+                "mangledName": "$s13DeepChordsSdk7DCZh2EnC16filePathCallBackySSSgcSgvM",
                 "moduleName": "DeepChordsSdk",
-                "static": true,
                 "implicit": true,
-                "declAttributes": [
-                  "Final"
-                ],
                 "accessorKind": "_modify"
               }
             ]
           },
           {
             "kind": "Function",
-            "name": "debug",
-            "printedName": "debug(_:line:separator:terminator:)",
+            "name": "start",
+            "printedName": "start()",
             "children": [
               {
                 "kind": "TypeNominal",
                 "name": "Void",
                 "printedName": "()"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Array",
-                "printedName": "[Any]",
-                "children": [
-                  {
-                    "kind": "TypeNominal",
-                    "name": "ProtocolComposition",
-                    "printedName": "Any"
-                  }
-                ],
-                "usr": "s:Sa"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "Int",
-                "printedName": "Swift.Int",
-                "hasDefaultArg": true,
-                "usr": "s:Si"
-              },
-              {
-                "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "hasDefaultArg": true,
-                "usr": "s:SS"
-              },
+              }
+            ],
+            "declKind": "Func",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC5startyyF",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC5startyyF",
+            "moduleName": "DeepChordsSdk",
+            "declAttributes": [
+              "AccessControl",
+              "RawDocComment"
+            ],
+            "funcSelfKind": "NonMutating"
+          },
+          {
+            "kind": "Function",
+            "name": "stop",
+            "printedName": "stop()",
+            "children": [
               {
                 "kind": "TypeNominal",
-                "name": "String",
-                "printedName": "Swift.String",
-                "hasDefaultArg": true,
-                "usr": "s:SS"
+                "name": "Void",
+                "printedName": "()"
               }
             ],
             "declKind": "Func",
-            "usr": "s:13DeepChordsSdk8DCLoggerC5debug_4line9separator10terminatoryypd_SiS2StFZ",
-            "mangledName": "$s13DeepChordsSdk8DCLoggerC5debug_4line9separator10terminatoryypd_SiS2StFZ",
+            "usr": "s:13DeepChordsSdk7DCZh2EnC4stopyyF",
+            "mangledName": "$s13DeepChordsSdk7DCZh2EnC4stopyyF",
             "moduleName": "DeepChordsSdk",
-            "static": true,
             "declAttributes": [
-              "Final",
-              "AccessControl"
+              "AccessControl",
+              "RawDocComment"
             ],
-            "isFromExtension": true,
             "funcSelfKind": "NonMutating"
           }
         ],
         "declKind": "Class",
-        "usr": "s:13DeepChordsSdk8DCLoggerC",
-        "mangledName": "$s13DeepChordsSdk8DCLoggerC",
+        "usr": "s:13DeepChordsSdk7DCZh2EnC",
+        "mangledName": "$s13DeepChordsSdk7DCZh2EnC",
         "moduleName": "DeepChordsSdk",
         "declAttributes": [
-          "AccessControl",
-          "RawDocComment"
+          "AccessControl"
         ],
         "hasMissingDesignatedInitializers": true,
         "conformances": [
             "mangledName": "$ss9EscapableP"
           }
         ]
+      },
+      {
+        "kind": "Import",
+        "name": "Foundation",
+        "printedName": "Foundation",
+        "declKind": "Import",
+        "moduleName": "DeepChordsSdk",
+        "declAttributes": [
+          "RawDocComment"
+        ]
       }
     ],
     "json_format_version": 8
   },
   "ConstValues": [
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
-      "kind": "StringLiteral",
-      "offset": 311,
-      "length": 7,
-      "value": "\"zh-CN\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
-      "kind": "StringLiteral",
-      "offset": 430,
-      "length": 7,
-      "value": "\"en-US\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
-      "kind": "BooleanLiteral",
-      "offset": 572,
-      "length": 5,
-      "value": "false"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
-      "kind": "BooleanLiteral",
-      "offset": 639,
-      "length": 5,
-      "value": "false"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
+      "kind": "IntegerLiteral",
+      "offset": 1394,
+      "length": 10,
+      "value": "0b11111111"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
       "kind": "StringLiteral",
-      "offset": 717,
-      "length": 5,
-      "value": "\"mp3\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
-      "kind": "Array",
-      "offset": 1357,
-      "length": 2,
-      "value": "[]"
+      "offset": 3330,
+      "length": 6,
+      "value": "\"%02x\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
       "kind": "StringLiteral",
-      "offset": 1378,
+      "offset": 3360,
       "length": 2,
       "value": "\"\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
-      "kind": "Array",
-      "offset": 1427,
-      "length": 2,
-      "value": "[]"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
+      "kind": "StringLiteral",
+      "offset": 3531,
+      "length": 6,
+      "value": "\"%02x\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
       "kind": "StringLiteral",
-      "offset": 1454,
+      "offset": 3561,
       "length": 2,
       "value": "\"\""
     },
     {
       "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/BleSender.swift",
       "kind": "IntegerLiteral",
-      "offset": 1751,
+      "offset": 1739,
       "length": 4,
       "value": "1000"
     },
     {
       "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/BleSender.swift",
       "kind": "IntegerLiteral",
-      "offset": 1796,
+      "offset": 1784,
       "length": 4,
       "value": "1001"
     },
     {
       "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/BleSender.swift",
       "kind": "IntegerLiteral",
-      "offset": 1841,
+      "offset": 1829,
       "length": 4,
       "value": "1004"
     },
     {
       "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/BleSender.swift",
       "kind": "IntegerLiteral",
-      "offset": 1885,
+      "offset": 1873,
       "length": 4,
       "value": "1005"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleManager.swift",
-      "kind": "StringLiteral",
-      "offset": 245,
-      "length": 6,
-      "value": "\"AE30\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleManager.swift",
-      "kind": "StringLiteral",
-      "offset": 298,
-      "length": 6,
-      "value": "\"AE03\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleManager.swift",
-      "kind": "StringLiteral",
-      "offset": 355,
-      "length": 6,
-      "value": "\"AE04\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
-      "kind": "IntegerLiteral",
-      "offset": 1394,
-      "length": 10,
-      "value": "0b11111111"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
-      "kind": "StringLiteral",
-      "offset": 3330,
-      "length": 6,
-      "value": "\"%02x\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
-      "kind": "StringLiteral",
-      "offset": 3360,
-      "length": 2,
-      "value": "\"\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
       "kind": "StringLiteral",
-      "offset": 3531,
-      "length": 6,
-      "value": "\"%02x\""
+      "offset": 239,
+      "length": 3,
+      "value": "\" \""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Any.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
       "kind": "StringLiteral",
-      "offset": 3561,
+      "offset": 250,
       "length": 2,
       "value": "\"\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "StringLiteral",
-      "offset": 294,
-      "length": 7,
-      "value": "\"zh-CN\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "StringLiteral",
-      "offset": 413,
-      "length": 7,
-      "value": "\"en-US\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "BooleanLiteral",
-      "offset": 555,
-      "length": 5,
-      "value": "false"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "BooleanLiteral",
-      "offset": 622,
-      "length": 5,
-      "value": "false"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "StringLiteral",
-      "offset": 700,
-      "length": 5,
-      "value": "\"pcm\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "Array",
-      "offset": 1178,
-      "length": 2,
-      "value": "[]"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 377,
+      "length": 1,
+      "value": "0"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "StringLiteral",
-      "offset": 1199,
-      "length": 2,
-      "value": "\"\""
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 573,
+      "length": 1,
+      "value": "0"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "Array",
-      "offset": 1248,
-      "length": 2,
-      "value": "[]"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 583,
+      "length": 1,
+      "value": "3"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
-      "kind": "StringLiteral",
-      "offset": 1275,
-      "length": 2,
-      "value": "\"\""
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 603,
+      "length": 1,
+      "value": "0"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
-      "kind": "StringLiteral",
-      "offset": 182,
-      "length": 2,
-      "value": "\"\""
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 613,
+      "length": 1,
+      "value": "2"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
-      "kind": "StringLiteral",
-      "offset": 229,
-      "length": 2,
-      "value": "\"\""
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 633,
+      "length": 1,
+      "value": "0"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
-      "kind": "StringLiteral",
-      "offset": 276,
-      "length": 2,
-      "value": "\"\""
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 705,
+      "length": 1,
+      "value": "2"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
-      "kind": "StringLiteral",
-      "offset": 323,
-      "length": 2,
-      "value": "\"\""
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 730,
+      "length": 1,
+      "value": "1"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
       "kind": "IntegerLiteral",
-      "offset": 684,
+      "offset": 802,
       "length": 1,
-      "value": "0"
+      "value": "2"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
-      "kind": "BooleanLiteral",
-      "offset": 1174,
-      "length": 4,
-      "value": "true"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 810,
+      "length": 1,
+      "value": "1"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
-      "kind": "StringLiteral",
-      "offset": 1265,
-      "length": 5,
-      "value": "\"pcm\""
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 859,
+      "length": 2,
+      "value": "16"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
-      "kind": "StringLiteral",
-      "offset": 1353,
-      "length": 7,
-      "value": "\"zh-CN\""
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "kind": "IntegerLiteral",
+      "offset": 905,
+      "length": 1,
+      "value": "1"
     },
     {
       "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Date.swift",
       "value": "6"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Date.swift",
-      "kind": "IntegerLiteral",
-      "offset": 2904,
-      "length": 3,
-      "value": "7"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Date.swift",
+      "kind": "IntegerLiteral",
+      "offset": 2904,
+      "length": 3,
+      "value": "7"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleManager.swift",
+      "kind": "StringLiteral",
+      "offset": 245,
+      "length": 6,
+      "value": "\"AE30\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleManager.swift",
+      "kind": "StringLiteral",
+      "offset": 298,
+      "length": 6,
+      "value": "\"AE03\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleManager.swift",
+      "kind": "StringLiteral",
+      "offset": 355,
+      "length": 6,
+      "value": "\"AE04\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 311,
+      "length": 7,
+      "value": "\"zh-CN\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 430,
+      "length": 7,
+      "value": "\"en-US\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "BooleanLiteral",
+      "offset": 572,
+      "length": 5,
+      "value": "false"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "BooleanLiteral",
+      "offset": 639,
+      "length": 5,
+      "value": "false"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 717,
+      "length": 5,
+      "value": "\"pcm\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "Array",
+      "offset": 1340,
+      "length": 2,
+      "value": "[]"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 1361,
+      "length": 2,
+      "value": "\"\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "Array",
+      "offset": 1410,
+      "length": 2,
+      "value": "[]"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCBleRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 1437,
+      "length": 2,
+      "value": "\"\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 306,
+      "length": 11,
+      "value": "\"auto_lang\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 429,
+      "length": 11,
+      "value": "\"auto_lang\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "BooleanLiteral",
+      "offset": 575,
+      "length": 5,
+      "value": "false"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "BooleanLiteral",
+      "offset": 642,
+      "length": 5,
+      "value": "false"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 720,
+      "length": 5,
+      "value": "\"pcm\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "Array",
+      "offset": 1117,
+      "length": 2,
+      "value": "[]"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 1138,
+      "length": 2,
+      "value": "\"\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "Array",
+      "offset": 1182,
+      "length": 2,
+      "value": "[]"
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "kind": "StringLiteral",
+      "offset": 1208,
+      "length": 2,
+      "value": "\"\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
+      "kind": "StringLiteral",
+      "offset": 182,
+      "length": 2,
+      "value": "\"\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
+      "kind": "StringLiteral",
+      "offset": 229,
+      "length": 2,
+      "value": "\"\""
+    },
+    {
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
+      "kind": "StringLiteral",
+      "offset": 276,
+      "length": 2,
+      "value": "\"\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
       "kind": "StringLiteral",
-      "offset": 194,
+      "offset": 323,
       "length": 2,
       "value": "\"\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
       "kind": "IntegerLiteral",
-      "offset": 244,
+      "offset": 684,
       "length": 1,
       "value": "0"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
       "kind": "BooleanLiteral",
-      "offset": 303,
-      "length": 5,
-      "value": "false"
+      "offset": 1182,
+      "length": 4,
+      "value": "true"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
       "kind": "StringLiteral",
-      "offset": 635,
-      "length": 7,
-      "value": "\"zh-CN\""
+      "offset": 1273,
+      "length": 5,
+      "value": "\"pcm\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCChat.swift",
       "kind": "StringLiteral",
-      "offset": 754,
+      "offset": 1361,
       "length": 7,
-      "value": "\"en-US\""
+      "value": "\"zh-CN\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
-      "kind": "BooleanLiteral",
-      "offset": 896,
-      "length": 5,
-      "value": "false"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCLogger.swift",
+      "kind": "Array",
+      "offset": 216,
+      "length": 2,
+      "value": "[]"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCLogger.swift",
       "kind": "BooleanLiteral",
-      "offset": 963,
+      "offset": 362,
       "length": 5,
       "value": "false"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
-      "kind": "StringLiteral",
-      "offset": 1041,
-      "length": 5,
-      "value": "\"pcm\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
-      "kind": "Array",
-      "offset": 1531,
-      "length": 2,
-      "value": "[]"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCLogger.swift",
       "kind": "StringLiteral",
-      "offset": 1552,
-      "length": 2,
-      "value": "\"\""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
-      "kind": "Array",
-      "offset": 1601,
-      "length": 2,
-      "value": "[]"
+      "offset": 1578,
+      "length": 3,
+      "value": "\" \""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCLogger.swift",
       "kind": "StringLiteral",
-      "offset": 1628,
-      "length": 2,
-      "value": "\"\""
+      "offset": 1604,
+      "length": 4,
+      "value": "\"\n\""
     },
     {
       "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCMusic.swift",
       "value": "0"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "StringLiteral",
-      "offset": 306,
-      "length": 11,
-      "value": "\"auto_lang\""
+      "offset": 294,
+      "length": 7,
+      "value": "\"zh-CN\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "StringLiteral",
-      "offset": 429,
-      "length": 11,
-      "value": "\"auto_lang\""
+      "offset": 413,
+      "length": 7,
+      "value": "\"en-US\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "BooleanLiteral",
-      "offset": 575,
+      "offset": 555,
       "length": 5,
       "value": "false"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "BooleanLiteral",
-      "offset": 642,
+      "offset": 622,
       "length": 5,
       "value": "false"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "StringLiteral",
-      "offset": 720,
+      "offset": 700,
       "length": 5,
-      "value": "\"mp3\""
+      "value": "\"pcm\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "Array",
-      "offset": 1117,
+      "offset": 1178,
       "length": 2,
       "value": "[]"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "StringLiteral",
-      "offset": 1138,
+      "offset": 1199,
       "length": 2,
       "value": "\"\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "Array",
-      "offset": 1182,
+      "offset": 1248,
       "length": 2,
       "value": "[]"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCCallRecord.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCPhoneRecord.swift",
       "kind": "StringLiteral",
-      "offset": 1208,
+      "offset": 1275,
       "length": 2,
       "value": "\"\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "StringLiteral",
-      "offset": 239,
-      "length": 3,
-      "value": "\" \""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
       "kind": "StringLiteral",
-      "offset": 250,
+      "offset": 189,
       "length": 2,
       "value": "\"\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 377,
-      "length": 1,
-      "value": "0"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 573,
-      "length": 1,
-      "value": "0"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 583,
-      "length": 1,
-      "value": "3"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
       "kind": "IntegerLiteral",
-      "offset": 603,
+      "offset": 239,
       "length": 1,
       "value": "0"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 613,
-      "length": 1,
-      "value": "2"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "kind": "BooleanLiteral",
+      "offset": 298,
+      "length": 5,
+      "value": "false"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 633,
-      "length": 1,
-      "value": "0"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "kind": "StringLiteral",
+      "offset": 630,
+      "length": 7,
+      "value": "\"zh-CN\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 705,
-      "length": 1,
-      "value": "2"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "kind": "StringLiteral",
+      "offset": 749,
+      "length": 7,
+      "value": "\"en-US\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 730,
-      "length": 1,
-      "value": "1"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "kind": "BooleanLiteral",
+      "offset": 891,
+      "length": 5,
+      "value": "false"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 802,
-      "length": 1,
-      "value": "2"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "kind": "BooleanLiteral",
+      "offset": 958,
+      "length": 5,
+      "value": "false"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 810,
-      "length": 1,
-      "value": "1"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "kind": "StringLiteral",
+      "offset": 1036,
+      "length": 5,
+      "value": "\"pcm\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 859,
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "kind": "Array",
+      "offset": 1516,
       "length": 2,
-      "value": "16"
+      "value": "[]"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/Data.swift",
-      "kind": "IntegerLiteral",
-      "offset": 905,
-      "length": 1,
-      "value": "1"
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
+      "kind": "StringLiteral",
+      "offset": 1537,
+      "length": 2,
+      "value": "\"\""
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCLogger.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
       "kind": "Array",
-      "offset": 216,
+      "offset": 1586,
       "length": 2,
       "value": "[]"
     },
     {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCLogger.swift",
-      "kind": "BooleanLiteral",
-      "offset": 362,
-      "length": 5,
-      "value": "false"
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCLogger.swift",
-      "kind": "StringLiteral",
-      "offset": 1578,
-      "length": 3,
-      "value": "\" \""
-    },
-    {
-      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCLogger.swift",
+      "filePath": "\/Users\/yaozuopan\/Documents\/code\/ShenYin\/ShenYin\/DeepChordsSdk\/DCZh2En.swift",
       "kind": "StringLiteral",
-      "offset": 1604,
-      "length": 4,
-      "value": "\"\n\""
+      "offset": 1613,
+      "length": 2,
+      "value": "\"\""
     }
   ]
 }
\ No newline at end of file
index 768688b..1a0bfd5 100644 (file)
@@ -1,7 +1,7 @@
 // swift-interface-format-version: 1.0
-// swift-compiler-version: Apple Swift version 6.1.2 effective-5.10 (swiftlang-6.1.2.1.2 clang-1700.0.13.5)
+// swift-compiler-version: Apple Swift version 6.2.1 effective-5.10 (swiftlang-6.2.1.4.8 clang-1700.4.4.1)
 // swift-module-flags: -target arm64-apple-ios13.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-experimental-feature DebugDescriptionMacro -enable-bare-slash-regex -module-name DeepChordsSdk
-// swift-module-flags-ignorable:  -interface-compiler-version 6.1.2
+// swift-module-flags-ignorable:  -formal-cxx-interoperability-mode=off -interface-compiler-version 6.2.1
 import CoreBluetooth
 import Foundation
 import StarburstSdk
@@ -9,74 +9,6 @@ import Swift
 import _Concurrency
 import _StringProcessing
 import _SwiftConcurrencyShims
-@_hasMissingDesignatedInitializers public class DCBleRecord {
-  public static let shared: DeepChordsSdk.DCBleRecord
-  public var fromLanguage: Swift.String
-  public var toLanguage: Swift.String
-  public var isTranslate: Swift.Bool
-  public var isTTs: Swift.Bool
-  public var ttsFormat: Swift.String
-  public var asrCallback: ((Swift.String) -> Swift.Void)?
-  public var translateCallback: ((Swift.String) -> Swift.Void)?
-  public var asrSplitCallback: ((DeepChordsSdk.DCResponseModel) -> Swift.Void)?
-  public var translateSplitCallback: ((DeepChordsSdk.DCResponseModel) -> Swift.Void)?
-  public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
-  public var codeCallback: ((Swift.Int) -> Swift.Void)?
-  public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
-  public var filePath: Swift.String?
-  public func start(type: Swift.Int, recordPath: Swift.String?)
-  public func stop()
-  @objc deinit
-}
-public typealias DCCompletionHandler = (_ result: DeepChordsSdk.DCResponse) -> Swift.Void
-public enum DCCode : Swift.Int, Swift.CustomStringConvertible {
-  public var description: Swift.String {
-    get
-  }
-  case success
-  case failure
-  case timeout
-  case unknow
-  public init?(rawValue: Swift.Int)
-  public typealias RawValue = Swift.Int
-  public var rawValue: Swift.Int {
-    get
-  }
-}
-@_hasMissingDesignatedInitializers public class DCResponse {
-  public var code: DeepChordsSdk.DCCode {
-    get
-  }
-  public var data: Foundation.Data {
-    get
-  }
-  public var description: Swift.String {
-    get
-  }
-  @objc deinit
-}
-@_hasMissingDesignatedInitializers public class DCSdk {
-  public static let shared: DeepChordsSdk.DCSdk
-  public var authCallback: ((_ code: Swift.Int, _ msg: Swift.String) -> Swift.Void)?
-  public func initSDK()
-  @objc deinit
-}
-@_hasMissingDesignatedInitializers public class DCDevice {
-  public static let shared: DeepChordsSdk.DCDevice
-  public var eventCallback: ((Swift.UInt8) -> Swift.Void)?
-  public var muiscPlayCallback: ((_ index: Swift.UInt16, _ pro: Swift.UInt16, _ duration: Swift.UInt16) -> Swift.Void)?
-  @objc deinit
-}
-extension DeepChordsSdk.DCDevice {
-  public func handShake(finished: @escaping (Swift.Bool?) -> Swift.Void)
-  public func getBatery(finished: @escaping ((Swift.Int, Swift.Int)?) -> Swift.Void)
-  public func getSoftVersion(finished: @escaping (Swift.String?) -> Swift.Void)
-  public func getHardVersion(finished: @escaping (Swift.String?) -> Swift.Void)
-  public func findDevice(state: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
-  public func setEQ(type: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
-  public func setCustomEQ(index: Swift.UInt8, value: Swift.Int, finished: @escaping (Swift.Bool) -> Swift.Void)
-  public func getEQ(finished: @escaping ((type: Swift.UInt8, value: [Swift.Int])?, Swift.Bool) -> Swift.Void)
-}
 @_hasMissingDesignatedInitializers public class DCBleManager {
   public static let serviceUUID: Swift.String
   public static let writeUUID: Swift.String
@@ -86,12 +18,18 @@ extension DeepChordsSdk.DCDevice {
 }
 extension DeepChordsSdk.DCBleManager {
   public func centralManager(_ central: CoreBluetooth.CBCentralManager, didConnect peripheral: CoreBluetooth.CBPeripheral)
+  #if compiler(>=5.3) && $NonescapableTypes
   public func centralManager(_ central: CoreBluetooth.CBCentralManager, didDisconnectPeripheral peripheral: CoreBluetooth.CBPeripheral, error: (any Swift.Error)?)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public func peripheral(_ peripheral: CoreBluetooth.CBPeripheral, didDiscoverCharacteristicsFor service: CoreBluetooth.CBService, error: (any Swift.Error)?)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public func peripheral(_ peripheral: CoreBluetooth.CBPeripheral, didUpdateValueFor characteristic: CoreBluetooth.CBCharacteristic, error: (any Swift.Error)?)
+  #endif
 }
-@_hasMissingDesignatedInitializers public class DCPhoneRecord {
-  public static let shared: DeepChordsSdk.DCPhoneRecord
+@_hasMissingDesignatedInitializers public class DCBleRecord {
+  public static let shared: DeepChordsSdk.DCBleRecord
   public var fromLanguage: Swift.String
   public var toLanguage: Swift.String
   public var isTranslate: Swift.Bool
@@ -99,14 +37,32 @@ extension DeepChordsSdk.DCBleManager {
   public var ttsFormat: Swift.String
   public var asrCallback: ((Swift.String) -> Swift.Void)?
   public var translateCallback: ((Swift.String) -> Swift.Void)?
+  public var asrSplitCallback: ((DeepChordsSdk.DCAsrModel) -> Swift.Void)?
+  public var translateSplitCallback: ((DeepChordsSdk.DCAsrModel) -> Swift.Void)?
   public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
   public var codeCallback: ((Swift.Int) -> Swift.Void)?
-  public var interruptionCallBack: (() -> Swift.Void)?
   public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
   public func start()
   public func stop()
   @objc deinit
 }
+@_hasMissingDesignatedInitializers public class DCCallRecord {
+  public static let shared: DeepChordsSdk.DCCallRecord
+  public var fromLanguage: Swift.String
+  public var toLanguage: Swift.String
+  public var isTranslate: Swift.Bool
+  public var isTTs: Swift.Bool
+  public var ttsFormat: Swift.String
+  public var asrCallback: ((Swift.String) -> Swift.Void)?
+  public var asrOtherCallback: ((Swift.String) -> Swift.Void)?
+  public var codeCallback: ((Swift.Int) -> Swift.Void)?
+  public var filePathCallBack: ((Swift.String) -> Swift.Void)?
+  public var opusCallBack: ((Foundation.Data) -> Swift.Void)?
+  public func inputPcm(data: Foundation.Data)
+  public func start()
+  public func stop()
+  @objc deinit
+}
 public class DCRole {
   public var sid: Swift.String
   public var name: Swift.String
@@ -121,7 +77,7 @@ public class DCRole {
   public var dialogId: Swift.Int
   public var asrCallback: ((Swift.String, Swift.Int) -> Swift.Void)?
   public var responseCallback: ((Swift.String, Swift.Int) -> Swift.Void)?
-  public var dataCallback: ((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> Swift.Void)?
+  public var responseDataCallback: ((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> Swift.Void)?
   public var codeCallback: ((Swift.Int) -> Swift.Void)?
   public var finishCallback: ((Swift.String?) -> Swift.Void)?
   public var role: DeepChordsSdk.DCRole?
@@ -131,35 +87,51 @@ public class DCRole {
   @objc deinit
 }
 extension DeepChordsSdk.DCChat {
+  #if compiler(>=5.3) && $NonescapableTypes
   public func getVcSpeekerList(finished: @escaping ([DeepChordsSdk.DCRole]?, Swift.Bool) -> Swift.Void)
+  #endif
   public func startChat()
   public func stopChat()
   public func startPlayTtsAudio()
   public func stopPlayTtsAudio()
 }
-@_hasMissingDesignatedInitializers public class DCResponseModel {
-  public var text: Swift.String
-  public var index: Swift.Int
-  public var definite: Swift.Bool
+@_hasMissingDesignatedInitializers public class DCDevice {
+  public static let shared: DeepChordsSdk.DCDevice
+  public var eventCallback: ((Swift.UInt8) -> Swift.Void)?
+  public var muiscPlayCallback: ((_ index: Swift.UInt16, _ pro: Swift.UInt16, _ duration: Swift.UInt16) -> Swift.Void)?
   @objc deinit
 }
-@_hasMissingDesignatedInitializers public class DCZh2En {
-  public static let shared: DeepChordsSdk.DCZh2En
-  public var fromLanguage: Swift.String
-  public var toLanguage: Swift.String
-  public var isTranslate: Swift.Bool
-  public var isTTs: Swift.Bool
-  public var ttsFormat: Swift.String
-  public var asrCallback: ((DeepChordsSdk.DCResponseModel) -> Swift.Void)?
-  public var translateCallback: ((DeepChordsSdk.DCResponseModel) -> Swift.Void)?
-  public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
-  public var codeCallback: ((Swift.Int) -> Swift.Void)?
-  public var interruptionCallBack: (() -> Swift.Void)?
-  public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
-  public func start()
-  public func stop()
+extension DeepChordsSdk.DCDevice {
+  #if compiler(>=5.3) && $NonescapableTypes
+  public func getBatery(finished: @escaping ((Swift.Int, Swift.Int)?) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
+  public func getSoftVersion(finished: @escaping (Swift.String?) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
+  public func getHardVersion(finished: @escaping (Swift.String?) -> Swift.Void)
+  #endif
+  public func findDevice(state: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
+  public func setEQ(type: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
+  public func setCustomEQ(index: Swift.UInt8, value: Swift.Int, finished: @escaping (Swift.Bool) -> Swift.Void)
+  #if compiler(>=5.3) && $NonescapableTypes
+  public func getEQ(finished: @escaping ((type: Swift.UInt8, value: [Swift.Int])?, Swift.Bool) -> Swift.Void)
+  #endif
+}
+@_hasMissingDesignatedInitializers public class DCLogger {
+  public static var logs: [Swift.String]
+  public static var starburstLogPath: Swift.String {
+    get
+  }
+  public static var isDebug: Swift.Bool {
+    get
+    set
+  }
   @objc deinit
 }
+extension DeepChordsSdk.DCLogger {
+  public static func debug(_ logs: Any..., line: Swift.Int = #line, separator: Swift.String = " ", terminator: Swift.String = "\n")
+}
 @_hasMissingDesignatedInitializers public class DCMusic : Swift.Codable {
   public var id: Swift.UInt16
   public var name: Swift.String
@@ -170,53 +142,79 @@ extension DeepChordsSdk.DCChat {
   required public init(from decoder: any Swift.Decoder) throws
 }
 extension DeepChordsSdk.DCDevice {
+  #if compiler(>=5.3) && $NonescapableTypes
   public func getTotalMusic(finished: @escaping (Swift.Int?) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public func getMusicList(size: Swift.UInt8, index: Swift.UInt16, finished: @escaping ([DeepChordsSdk.DCMusic]?, Swift.Bool) -> Swift.Void)
+  #endif
   public func setMusicPlayMode(mode: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
+  #if compiler(>=5.3) && $NonescapableTypes
   public func getMusicPlayMode(finished: @escaping (Swift.UInt8?, Swift.Bool) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public func musicPlay(index: Swift.UInt16?, finished: @escaping (Swift.UInt16?, Swift.Bool) -> Swift.Void)
+  #endif
   public func musicPause(finished: @escaping (Swift.Bool) -> Swift.Void)
   public func musicDelete(list: [Swift.UInt16], finished: @escaping (Swift.Bool) -> Swift.Void)
 }
-@_hasMissingDesignatedInitializers public class DCCallRecord {
-  public static let shared: DeepChordsSdk.DCCallRecord
+@_hasMissingDesignatedInitializers public class DCPhoneRecord {
+  public static let shared: DeepChordsSdk.DCPhoneRecord
   public var fromLanguage: Swift.String
   public var toLanguage: Swift.String
   public var isTranslate: Swift.Bool
   public var isTTs: Swift.Bool
   public var ttsFormat: Swift.String
   public var asrCallback: ((Swift.String) -> Swift.Void)?
-  public var asrOtherCallback: ((Swift.String) -> Swift.Void)?
+  public var translateCallback: ((Swift.String) -> Swift.Void)?
+  public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
   public var codeCallback: ((Swift.Int) -> Swift.Void)?
-  public var filePathCallBack: ((Swift.String) -> Swift.Void)?
-  public var opusCallBack: ((Foundation.Data) -> Swift.Void)?
-  public func inputPcm(data: Foundation.Data)
+  public var interruptionCallBack: (() -> Swift.Void)?
+  public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
   public func start()
   public func stop()
   @objc deinit
 }
+@_hasMissingDesignatedInitializers public class DCSdk {
+  public static let shared: DeepChordsSdk.DCSdk
+  public var authCallback: ((_ code: Swift.Int, _ msg: Swift.String) -> Swift.Void)?
+  public func initSDK()
+  @objc deinit
+}
 @_hasMissingDesignatedInitializers public class DCText {
+  #if compiler(>=5.3) && $NonescapableTypes
   public static func translate(text: Swift.String, from: Swift.String, to: Swift.String, finished: @escaping ((stream: Swift.String, finish: Swift.Bool)?) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public static func sumary(text: Swift.String, finished: @escaping ((stream: Swift.String, finish: Swift.Bool)?) -> Swift.Void)
+  #endif
   public static func cancelTranslateByTextWithSplit()
   public static func cancelSummaryByTextWithSplit()
+  #if compiler(>=5.3) && $NonescapableTypes
   public static func getDeviceName() -> Swift.String?
+  #endif
   @objc deinit
 }
-@_hasMissingDesignatedInitializers public class DCLogger {
-  public static var logs: [Swift.String]
-  public static var starburstLogPath: Swift.String {
-    get
-  }
-  public static var isDebug: Swift.Bool {
-    get
-    set
-  }
+@_hasMissingDesignatedInitializers public class DCAsrModel {
+  public var text: Swift.String
+  public var index: Swift.Int
+  public var definite: Swift.Bool
   @objc deinit
 }
-extension DeepChordsSdk.DCLogger {
-  public static func debug(_ logs: Any..., line: Swift.Int = #line, separator: Swift.String = " ", terminator: Swift.String = "\n")
+@_hasMissingDesignatedInitializers public class DCZh2En {
+  public static let shared: DeepChordsSdk.DCZh2En
+  public var fromLanguage: Swift.String
+  public var toLanguage: Swift.String
+  public var isTranslate: Swift.Bool
+  public var isTTs: Swift.Bool
+  public var ttsFormat: Swift.String
+  public var asrCallback: ((DeepChordsSdk.DCAsrModel) -> Swift.Void)?
+  public var translateCallback: ((DeepChordsSdk.DCAsrModel) -> Swift.Void)?
+  public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
+  public var codeCallback: ((Swift.Int) -> Swift.Void)?
+  public var interruptionCallBack: (() -> Swift.Void)?
+  public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
+  public func start()
+  public func stop()
+  @objc deinit
 }
-extension DeepChordsSdk.DCCode : Swift.Equatable {}
-extension DeepChordsSdk.DCCode : Swift.Hashable {}
-extension DeepChordsSdk.DCCode : Swift.RawRepresentable {}
index b2af6e5..4a79e2a 100644 (file)
Binary files a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftdoc and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftdoc differ
index 768688b..1a0bfd5 100644 (file)
@@ -1,7 +1,7 @@
 // swift-interface-format-version: 1.0
-// swift-compiler-version: Apple Swift version 6.1.2 effective-5.10 (swiftlang-6.1.2.1.2 clang-1700.0.13.5)
+// swift-compiler-version: Apple Swift version 6.2.1 effective-5.10 (swiftlang-6.2.1.4.8 clang-1700.4.4.1)
 // swift-module-flags: -target arm64-apple-ios13.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-experimental-feature DebugDescriptionMacro -enable-bare-slash-regex -module-name DeepChordsSdk
-// swift-module-flags-ignorable:  -interface-compiler-version 6.1.2
+// swift-module-flags-ignorable:  -formal-cxx-interoperability-mode=off -interface-compiler-version 6.2.1
 import CoreBluetooth
 import Foundation
 import StarburstSdk
@@ -9,74 +9,6 @@ import Swift
 import _Concurrency
 import _StringProcessing
 import _SwiftConcurrencyShims
-@_hasMissingDesignatedInitializers public class DCBleRecord {
-  public static let shared: DeepChordsSdk.DCBleRecord
-  public var fromLanguage: Swift.String
-  public var toLanguage: Swift.String
-  public var isTranslate: Swift.Bool
-  public var isTTs: Swift.Bool
-  public var ttsFormat: Swift.String
-  public var asrCallback: ((Swift.String) -> Swift.Void)?
-  public var translateCallback: ((Swift.String) -> Swift.Void)?
-  public var asrSplitCallback: ((DeepChordsSdk.DCResponseModel) -> Swift.Void)?
-  public var translateSplitCallback: ((DeepChordsSdk.DCResponseModel) -> Swift.Void)?
-  public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
-  public var codeCallback: ((Swift.Int) -> Swift.Void)?
-  public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
-  public var filePath: Swift.String?
-  public func start(type: Swift.Int, recordPath: Swift.String?)
-  public func stop()
-  @objc deinit
-}
-public typealias DCCompletionHandler = (_ result: DeepChordsSdk.DCResponse) -> Swift.Void
-public enum DCCode : Swift.Int, Swift.CustomStringConvertible {
-  public var description: Swift.String {
-    get
-  }
-  case success
-  case failure
-  case timeout
-  case unknow
-  public init?(rawValue: Swift.Int)
-  public typealias RawValue = Swift.Int
-  public var rawValue: Swift.Int {
-    get
-  }
-}
-@_hasMissingDesignatedInitializers public class DCResponse {
-  public var code: DeepChordsSdk.DCCode {
-    get
-  }
-  public var data: Foundation.Data {
-    get
-  }
-  public var description: Swift.String {
-    get
-  }
-  @objc deinit
-}
-@_hasMissingDesignatedInitializers public class DCSdk {
-  public static let shared: DeepChordsSdk.DCSdk
-  public var authCallback: ((_ code: Swift.Int, _ msg: Swift.String) -> Swift.Void)?
-  public func initSDK()
-  @objc deinit
-}
-@_hasMissingDesignatedInitializers public class DCDevice {
-  public static let shared: DeepChordsSdk.DCDevice
-  public var eventCallback: ((Swift.UInt8) -> Swift.Void)?
-  public var muiscPlayCallback: ((_ index: Swift.UInt16, _ pro: Swift.UInt16, _ duration: Swift.UInt16) -> Swift.Void)?
-  @objc deinit
-}
-extension DeepChordsSdk.DCDevice {
-  public func handShake(finished: @escaping (Swift.Bool?) -> Swift.Void)
-  public func getBatery(finished: @escaping ((Swift.Int, Swift.Int)?) -> Swift.Void)
-  public func getSoftVersion(finished: @escaping (Swift.String?) -> Swift.Void)
-  public func getHardVersion(finished: @escaping (Swift.String?) -> Swift.Void)
-  public func findDevice(state: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
-  public func setEQ(type: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
-  public func setCustomEQ(index: Swift.UInt8, value: Swift.Int, finished: @escaping (Swift.Bool) -> Swift.Void)
-  public func getEQ(finished: @escaping ((type: Swift.UInt8, value: [Swift.Int])?, Swift.Bool) -> Swift.Void)
-}
 @_hasMissingDesignatedInitializers public class DCBleManager {
   public static let serviceUUID: Swift.String
   public static let writeUUID: Swift.String
@@ -86,12 +18,18 @@ extension DeepChordsSdk.DCDevice {
 }
 extension DeepChordsSdk.DCBleManager {
   public func centralManager(_ central: CoreBluetooth.CBCentralManager, didConnect peripheral: CoreBluetooth.CBPeripheral)
+  #if compiler(>=5.3) && $NonescapableTypes
   public func centralManager(_ central: CoreBluetooth.CBCentralManager, didDisconnectPeripheral peripheral: CoreBluetooth.CBPeripheral, error: (any Swift.Error)?)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public func peripheral(_ peripheral: CoreBluetooth.CBPeripheral, didDiscoverCharacteristicsFor service: CoreBluetooth.CBService, error: (any Swift.Error)?)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public func peripheral(_ peripheral: CoreBluetooth.CBPeripheral, didUpdateValueFor characteristic: CoreBluetooth.CBCharacteristic, error: (any Swift.Error)?)
+  #endif
 }
-@_hasMissingDesignatedInitializers public class DCPhoneRecord {
-  public static let shared: DeepChordsSdk.DCPhoneRecord
+@_hasMissingDesignatedInitializers public class DCBleRecord {
+  public static let shared: DeepChordsSdk.DCBleRecord
   public var fromLanguage: Swift.String
   public var toLanguage: Swift.String
   public var isTranslate: Swift.Bool
@@ -99,14 +37,32 @@ extension DeepChordsSdk.DCBleManager {
   public var ttsFormat: Swift.String
   public var asrCallback: ((Swift.String) -> Swift.Void)?
   public var translateCallback: ((Swift.String) -> Swift.Void)?
+  public var asrSplitCallback: ((DeepChordsSdk.DCAsrModel) -> Swift.Void)?
+  public var translateSplitCallback: ((DeepChordsSdk.DCAsrModel) -> Swift.Void)?
   public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
   public var codeCallback: ((Swift.Int) -> Swift.Void)?
-  public var interruptionCallBack: (() -> Swift.Void)?
   public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
   public func start()
   public func stop()
   @objc deinit
 }
+@_hasMissingDesignatedInitializers public class DCCallRecord {
+  public static let shared: DeepChordsSdk.DCCallRecord
+  public var fromLanguage: Swift.String
+  public var toLanguage: Swift.String
+  public var isTranslate: Swift.Bool
+  public var isTTs: Swift.Bool
+  public var ttsFormat: Swift.String
+  public var asrCallback: ((Swift.String) -> Swift.Void)?
+  public var asrOtherCallback: ((Swift.String) -> Swift.Void)?
+  public var codeCallback: ((Swift.Int) -> Swift.Void)?
+  public var filePathCallBack: ((Swift.String) -> Swift.Void)?
+  public var opusCallBack: ((Foundation.Data) -> Swift.Void)?
+  public func inputPcm(data: Foundation.Data)
+  public func start()
+  public func stop()
+  @objc deinit
+}
 public class DCRole {
   public var sid: Swift.String
   public var name: Swift.String
@@ -121,7 +77,7 @@ public class DCRole {
   public var dialogId: Swift.Int
   public var asrCallback: ((Swift.String, Swift.Int) -> Swift.Void)?
   public var responseCallback: ((Swift.String, Swift.Int) -> Swift.Void)?
-  public var dataCallback: ((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> Swift.Void)?
+  public var responseDataCallback: ((Swift.Int, Foundation.Data?, Swift.Bool, Swift.Int) -> Swift.Void)?
   public var codeCallback: ((Swift.Int) -> Swift.Void)?
   public var finishCallback: ((Swift.String?) -> Swift.Void)?
   public var role: DeepChordsSdk.DCRole?
@@ -131,35 +87,51 @@ public class DCRole {
   @objc deinit
 }
 extension DeepChordsSdk.DCChat {
+  #if compiler(>=5.3) && $NonescapableTypes
   public func getVcSpeekerList(finished: @escaping ([DeepChordsSdk.DCRole]?, Swift.Bool) -> Swift.Void)
+  #endif
   public func startChat()
   public func stopChat()
   public func startPlayTtsAudio()
   public func stopPlayTtsAudio()
 }
-@_hasMissingDesignatedInitializers public class DCResponseModel {
-  public var text: Swift.String
-  public var index: Swift.Int
-  public var definite: Swift.Bool
+@_hasMissingDesignatedInitializers public class DCDevice {
+  public static let shared: DeepChordsSdk.DCDevice
+  public var eventCallback: ((Swift.UInt8) -> Swift.Void)?
+  public var muiscPlayCallback: ((_ index: Swift.UInt16, _ pro: Swift.UInt16, _ duration: Swift.UInt16) -> Swift.Void)?
   @objc deinit
 }
-@_hasMissingDesignatedInitializers public class DCZh2En {
-  public static let shared: DeepChordsSdk.DCZh2En
-  public var fromLanguage: Swift.String
-  public var toLanguage: Swift.String
-  public var isTranslate: Swift.Bool
-  public var isTTs: Swift.Bool
-  public var ttsFormat: Swift.String
-  public var asrCallback: ((DeepChordsSdk.DCResponseModel) -> Swift.Void)?
-  public var translateCallback: ((DeepChordsSdk.DCResponseModel) -> Swift.Void)?
-  public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
-  public var codeCallback: ((Swift.Int) -> Swift.Void)?
-  public var interruptionCallBack: (() -> Swift.Void)?
-  public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
-  public func start()
-  public func stop()
+extension DeepChordsSdk.DCDevice {
+  #if compiler(>=5.3) && $NonescapableTypes
+  public func getBatery(finished: @escaping ((Swift.Int, Swift.Int)?) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
+  public func getSoftVersion(finished: @escaping (Swift.String?) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
+  public func getHardVersion(finished: @escaping (Swift.String?) -> Swift.Void)
+  #endif
+  public func findDevice(state: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
+  public func setEQ(type: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
+  public func setCustomEQ(index: Swift.UInt8, value: Swift.Int, finished: @escaping (Swift.Bool) -> Swift.Void)
+  #if compiler(>=5.3) && $NonescapableTypes
+  public func getEQ(finished: @escaping ((type: Swift.UInt8, value: [Swift.Int])?, Swift.Bool) -> Swift.Void)
+  #endif
+}
+@_hasMissingDesignatedInitializers public class DCLogger {
+  public static var logs: [Swift.String]
+  public static var starburstLogPath: Swift.String {
+    get
+  }
+  public static var isDebug: Swift.Bool {
+    get
+    set
+  }
   @objc deinit
 }
+extension DeepChordsSdk.DCLogger {
+  public static func debug(_ logs: Any..., line: Swift.Int = #line, separator: Swift.String = " ", terminator: Swift.String = "\n")
+}
 @_hasMissingDesignatedInitializers public class DCMusic : Swift.Codable {
   public var id: Swift.UInt16
   public var name: Swift.String
@@ -170,53 +142,79 @@ extension DeepChordsSdk.DCChat {
   required public init(from decoder: any Swift.Decoder) throws
 }
 extension DeepChordsSdk.DCDevice {
+  #if compiler(>=5.3) && $NonescapableTypes
   public func getTotalMusic(finished: @escaping (Swift.Int?) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public func getMusicList(size: Swift.UInt8, index: Swift.UInt16, finished: @escaping ([DeepChordsSdk.DCMusic]?, Swift.Bool) -> Swift.Void)
+  #endif
   public func setMusicPlayMode(mode: Swift.UInt8, finished: @escaping (Swift.Bool) -> Swift.Void)
+  #if compiler(>=5.3) && $NonescapableTypes
   public func getMusicPlayMode(finished: @escaping (Swift.UInt8?, Swift.Bool) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public func musicPlay(index: Swift.UInt16?, finished: @escaping (Swift.UInt16?, Swift.Bool) -> Swift.Void)
+  #endif
   public func musicPause(finished: @escaping (Swift.Bool) -> Swift.Void)
   public func musicDelete(list: [Swift.UInt16], finished: @escaping (Swift.Bool) -> Swift.Void)
 }
-@_hasMissingDesignatedInitializers public class DCCallRecord {
-  public static let shared: DeepChordsSdk.DCCallRecord
+@_hasMissingDesignatedInitializers public class DCPhoneRecord {
+  public static let shared: DeepChordsSdk.DCPhoneRecord
   public var fromLanguage: Swift.String
   public var toLanguage: Swift.String
   public var isTranslate: Swift.Bool
   public var isTTs: Swift.Bool
   public var ttsFormat: Swift.String
   public var asrCallback: ((Swift.String) -> Swift.Void)?
-  public var asrOtherCallback: ((Swift.String) -> Swift.Void)?
+  public var translateCallback: ((Swift.String) -> Swift.Void)?
+  public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
   public var codeCallback: ((Swift.Int) -> Swift.Void)?
-  public var filePathCallBack: ((Swift.String) -> Swift.Void)?
-  public var opusCallBack: ((Foundation.Data) -> Swift.Void)?
-  public func inputPcm(data: Foundation.Data)
+  public var interruptionCallBack: (() -> Swift.Void)?
+  public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
   public func start()
   public func stop()
   @objc deinit
 }
+@_hasMissingDesignatedInitializers public class DCSdk {
+  public static let shared: DeepChordsSdk.DCSdk
+  public var authCallback: ((_ code: Swift.Int, _ msg: Swift.String) -> Swift.Void)?
+  public func initSDK()
+  @objc deinit
+}
 @_hasMissingDesignatedInitializers public class DCText {
+  #if compiler(>=5.3) && $NonescapableTypes
   public static func translate(text: Swift.String, from: Swift.String, to: Swift.String, finished: @escaping ((stream: Swift.String, finish: Swift.Bool)?) -> Swift.Void)
+  #endif
+  #if compiler(>=5.3) && $NonescapableTypes
   public static func sumary(text: Swift.String, finished: @escaping ((stream: Swift.String, finish: Swift.Bool)?) -> Swift.Void)
+  #endif
   public static func cancelTranslateByTextWithSplit()
   public static func cancelSummaryByTextWithSplit()
+  #if compiler(>=5.3) && $NonescapableTypes
   public static func getDeviceName() -> Swift.String?
+  #endif
   @objc deinit
 }
-@_hasMissingDesignatedInitializers public class DCLogger {
-  public static var logs: [Swift.String]
-  public static var starburstLogPath: Swift.String {
-    get
-  }
-  public static var isDebug: Swift.Bool {
-    get
-    set
-  }
+@_hasMissingDesignatedInitializers public class DCAsrModel {
+  public var text: Swift.String
+  public var index: Swift.Int
+  public var definite: Swift.Bool
   @objc deinit
 }
-extension DeepChordsSdk.DCLogger {
-  public static func debug(_ logs: Any..., line: Swift.Int = #line, separator: Swift.String = " ", terminator: Swift.String = "\n")
+@_hasMissingDesignatedInitializers public class DCZh2En {
+  public static let shared: DeepChordsSdk.DCZh2En
+  public var fromLanguage: Swift.String
+  public var toLanguage: Swift.String
+  public var isTranslate: Swift.Bool
+  public var isTTs: Swift.Bool
+  public var ttsFormat: Swift.String
+  public var asrCallback: ((DeepChordsSdk.DCAsrModel) -> Swift.Void)?
+  public var translateCallback: ((DeepChordsSdk.DCAsrModel) -> Swift.Void)?
+  public var translateDataCallback: ((Foundation.Data) -> Swift.Void)?
+  public var codeCallback: ((Swift.Int) -> Swift.Void)?
+  public var interruptionCallBack: (() -> Swift.Void)?
+  public var filePathCallBack: ((Swift.String?) -> Swift.Void)?
+  public func start()
+  public func stop()
+  @objc deinit
 }
-extension DeepChordsSdk.DCCode : Swift.Equatable {}
-extension DeepChordsSdk.DCCode : Swift.Hashable {}
-extension DeepChordsSdk.DCCode : Swift.RawRepresentable {}
index e058a7a..ccb4a7f 100644 (file)
Binary files a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftmodule and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftmodule differ
index 130c81d..08a83a2 100644 (file)
Binary files a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/_CodeSignature/CodeDirectory and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/_CodeSignature/CodeDirectory differ
index 038b474..0e22ab3 100644 (file)
@@ -14,7 +14,7 @@
                </data>
                <key>Frameworks/StarburstSdk.framework/StarburstSdk</key>
                <data>
-               LRKbPJ8wAUd7ggk+ANLu+fSYfw4=
+               MkQukbCj7SCh2eyrtZPo6Bqdf4A=
                </data>
                <key>Frameworks/StarburstSdk.framework/_CodeSignature/CodeResources</key>
                <data>
                </data>
                <key>Info.plist</key>
                <data>
-               NV2Qc9xISE7fgUH9KnQFJLHB70Y=
+               LB0epKpSO+itRLVv9ZwD6jE9n/M=
                </data>
                <key>Modules/DeepChordsSdk.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo</key>
                <data>
-               hElk5G9e2FyrQKyxp0/Cg3TzLm8=
+               O1x9BrZy7upg08bZqGU/Uc5etPM=
                </data>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.abi.json</key>
                <data>
-               Q8mFT1+vs+J5OlQJBv+Fy30BSEM=
+               aUGMYXcXkccmHGwFIdGWAK/ssp4=
                </data>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.private.swiftinterface</key>
                <data>
-               QQC6RRv9G4zEvdXhU0pKeYv7zBI=
+               JeZ5YqgGmHp+x5jgGMhrBfUV9k8=
                </data>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftdoc</key>
                <data>
-               ooox8Ekydjt3Fe9eijMDNoL0WbU=
+               RwV4schV+ulN1hfE1WMap8h1Dyo=
                </data>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftinterface</key>
                <data>
-               QQC6RRv9G4zEvdXhU0pKeYv7zBI=
+               JeZ5YqgGmHp+x5jgGMhrBfUV9k8=
                </data>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftmodule</key>
                <data>
-               kk7DtJNjzNj5L5gi9/fvu4zpABs=
+               OBgzCwKxBBU05kzKKphyiQKfLhs=
                </data>
        </dict>
        <key>files2</key>
@@ -69,7 +69,7 @@
                <dict>
                        <key>hash2</key>
                        <data>
-                       Xpz9vkf/wygpxbK0j2XvH3CTfyjFeKHB0amrGn1dvXY=
+                       xmw2ssE4+Oy+Ou293pFF8Wzmr6D0q15g35a8lDBSEbY=
                        </data>
                </dict>
                <key>Frameworks/StarburstSdk.framework/_CodeSignature/CodeResources</key>
                <dict>
                        <key>hash2</key>
                        <data>
-                       QilPSG2oy59S+0ze1lc77MOCX7d0Aihg61ihcODJUnw=
+                       jY0Vz9dnHqg9VkabsBTOyHmRQCzHAQpzx8qEVoDsZWI=
                        </data>
                </dict>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.abi.json</key>
                <dict>
                        <key>hash2</key>
                        <data>
-                       aq3W188HYhRZ0GUAfA100wXky3MsjIBs+yxzR0vQ87c=
+                       7UkzEof8Cs5MlhqxmmMbpwo8Czj4WWOkV/I2+hOGnPw=
                        </data>
                </dict>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.private.swiftinterface</key>
                <dict>
                        <key>hash2</key>
                        <data>
-                       LACpqZP2f6oTTij9v/Va8ALBeFEwok7+F7yJDTVx/gI=
+                       iBkxJGosz9xYCd/nNQT67iCHsrfW6jwDzZziqhq1Zkg=
                        </data>
                </dict>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftdoc</key>
                <dict>
                        <key>hash2</key>
                        <data>
-                       5KC2PBhoL1O63aZAymhuQEapFO0FkJpvFlPMjxbZXlA=
+                       yDz50hpel/xZm9kLUjAmH2J0M04SURrsa5jKdL2mqNQ=
                        </data>
                </dict>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftinterface</key>
                <dict>
                        <key>hash2</key>
                        <data>
-                       LACpqZP2f6oTTij9v/Va8ALBeFEwok7+F7yJDTVx/gI=
+                       iBkxJGosz9xYCd/nNQT67iCHsrfW6jwDzZziqhq1Zkg=
                        </data>
                </dict>
                <key>Modules/DeepChordsSdk.swiftmodule/arm64-apple-ios.swiftmodule</key>
                <dict>
                        <key>hash2</key>
                        <data>
-                       L6XFW6V6YKwdgwtYOkr57ZfLeFZXBchcWo5CgD6aWvY=
+                       zC8w+N3fQJvn5yPHUC4BD3zLCxrS8d0jiihXAN5ivYY=
                        </data>
                </dict>
        </dict>
index 7ad8528..1e463c2 100644 (file)
Binary files a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/_CodeSignature/CodeSignature and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/DeepChordsSdk.framework/_CodeSignature/CodeSignature differ
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/Info.plist b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/Info.plist
new file mode 100644 (file)
index 0000000..c989e87
--- /dev/null
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+       <key>AvailableLibraries</key>
+       <array>
+               <dict>
+                       <key>BinaryPath</key>
+                       <string>JLAudioUnitKit.framework/JLAudioUnitKit</string>
+                       <key>LibraryIdentifier</key>
+                       <string>ios-arm64</string>
+                       <key>LibraryPath</key>
+                       <string>JLAudioUnitKit.framework</string>
+                       <key>SupportedArchitectures</key>
+                       <array>
+                               <string>arm64</string>
+                       </array>
+                       <key>SupportedPlatform</key>
+                       <string>ios</string>
+               </dict>
+               <dict>
+                       <key>BinaryPath</key>
+                       <string>JLAudioUnitKit.framework/JLAudioUnitKit</string>
+                       <key>LibraryIdentifier</key>
+                       <string>ios-x86_64-simulator</string>
+                       <key>LibraryPath</key>
+                       <string>JLAudioUnitKit.framework</string>
+                       <key>SupportedArchitectures</key>
+                       <array>
+                               <string>x86_64</string>
+                       </array>
+                       <key>SupportedPlatform</key>
+                       <string>ios</string>
+                       <key>SupportedPlatformVariant</key>
+                       <string>simulator</string>
+               </dict>
+       </array>
+       <key>CFBundlePackageType</key>
+       <string>XFWK</string>
+       <key>XCFrameworkFormatVersion</key>
+       <string>1.0</string>
+</dict>
+</plist>
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h
new file mode 100644 (file)
index 0000000..e6b3af6
--- /dev/null
@@ -0,0 +1,26 @@
+//
+//  JLAudioUnitKit.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2024/11/14.
+//
+
+#import <Foundation/Foundation.h>
+
+//! 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 <JLAudioUnitKit/PublicHeader.h>
+
+#import <JLAudioUnitKit/JLSpeexDecoder.h>
+#import <JLAudioUnitKit/JLOpusDecoder.h>
+#import <JLAudioUnitKit/JLOpusEncoder.h>
+#import <JLAudioUnitKit/JLOpusFormat.h>
+#import <JLAudioUnitKit/JLOpusEncodeConfig.h>
+#import <JLAudioUnitKit/JLPcmToWtg.h>
+#import <JLAudioUnitKit/JLPcmToWav.h>
+#import <JLAudioUnitKit/JLAudioUnitPlayer.h>
+#import <JLAudioUnitKit/JLOpusToOgg.h>
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h
new file mode 100644 (file)
index 0000000..7da831c
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+#import <AudioToolbox/AudioToolbox.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, JLAudioUnitPlayerType) {
+    JLAudioUnitPlayerTypeFile,   // 支持 MP3/WAV/AAC 等文件格式(AVAudioPlayer)
+    JLAudioUnitPlayerTypePCM      // 支持 PCM 流式播放(Audio Queue)
+};
+
+@class JLAudioUnitPlayer;
+
+@protocol JLAudioPlayerDelegate <NSObject>
+@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<JLAudioPlayerDelegate> 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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h
new file mode 100644 (file)
index 0000000..711e2e9
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+#import <JLAudioUnitKit/JLOpusFormat.h>
+
+NS_ASSUME_NONNULL_BEGIN
+@class JLOpusDecoder;
+
+/// Opus 解码代理
+@protocol JLOpusDecoderDelegate <NSObject>
+
+/// 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<JLOpusDecoderDelegate> delegate;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/// 初始化
+/// - Parameters:
+///   - format: 解码格式
+///   - delegate: 代理
+- (instancetype)initDecoder:(JLOpusFormat *)format delegate:(id<JLOpusDecoderDelegate>)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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncodeConfig.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncodeConfig.h
new file mode 100644 (file)
index 0000000..037284e
--- /dev/null
@@ -0,0 +1,83 @@
+//
+//  JLOpusEncodeConfig.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2025/8/27.
+//  Copyright © 2025 ZhuHai JieLi Technology Co.,Ltd. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, JLOpusEncoderBandwidth) {
+    ///(4kHz bandpass)
+    JLOpusEncoderBandwidthNarrowband = 1101,   // 对应 OPUS_BANDWIDTH_NARROWBAND
+    /// (6kHz bandpass)
+    JLOpusEncoderBandwidthMediumband = 1102,   // 对应 OPUS_BANDWIDTH_MEDIUMBAND
+    /// (8kHz bandpass)
+    JLOpusEncoderBandwidthWideband   = 1103,     // 对应 OPUS_BANDWIDTH_WIDEBAND
+    /// (12kHz bandpass)
+    JLOpusEncoderBandwidthSuperwideband = 1104,// 对应 OPUS_BANDWIDTH_SUPERWIDEBAND
+    /// (20kHz bandpass)
+    JLOpusEncoderBandwidthFullband   = 1105      // 对应 OPUS_BANDWIDTH_FULLBAND
+};
+
+@interface JLOpusEncodeConfig : NSObject
+
+/// 采样率
+@property (nonatomic, assign) int sampleRate;
+
+/// 单/双声道
+@property (nonatomic, assign) int channels;
+
+/// 帧长度 20ms 默认值
+@property (nonatomic, assign) int frameDuration;
+
+/// 帧长度
+@property (nonatomic, assign) int frameSize;
+
+/// BitRate
+@property (nonatomic, assign) int bitRate;
+
+/// 可变比特率开关,默认 NO(使用 CBR)
+@property (nonatomic, assign) BOOL useVBR;
+
+/// VBR 限制模式,默认 NO
+@property (nonatomic, assign) BOOL constrainedVBR;
+
+/// 编码复杂度 0~10,默认 5
+@property (nonatomic, assign) int complexity;
+
+/// 强制输出声道数 -1: 自适应, 1: 单声道, 2: 双声道, 默认 -1
+@property (nonatomic, assign) int forceChannels;
+
+/// 是否启用 DTX(静音段不发送数据),默认 NO
+@property (nonatomic, assign) BOOL useDTX;
+
+/// 网络丢包百分比,默认 0
+@property (nonatomic, assign) int packetLossPercent;
+
+/// 最大带宽限制(OPUS_BANDWIDTH_*),默认 FULLBAND
+@property (nonatomic, assign) int bandwidth;
+
+/// PCM 输入有效位深,默认 16
+@property (nonatomic, assign) int lsbDepth;
+
+/// 专家模式下帧时长(ms),默认与 frameDuration 一致
+@property (nonatomic, assign) int expertFrameDuration;
+
+/// 是否启用数据头
+/// 默认是启用的
+@property (nonatomic, assign) BOOL hasDataHeader;
+
+/// 创建默认编码配置
++ (instancetype)defaultConfig;
+
+/// 获取默认配置
+/// 杰理的无头配置
++ (instancetype)defaultJL;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h
new file mode 100644 (file)
index 0000000..fbe5af7
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+#import <JLAudioUnitKit/JLOpusEncodeConfig.h>
+
+NS_ASSUME_NONNULL_BEGIN
+@class JLOpusEncoder;
+
+/// Opus 编码代理
+@protocol JLOpusEncoderDelegate <NSObject>
+
+/// 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) JLOpusEncodeConfig *opusFormat;
+
+/// 代理
+@property (nonatomic, weak) id<JLOpusEncoderDelegate> delegate;
+
+-(instancetype)init NS_UNAVAILABLE;
+
+/// 初始化
+/// - Parameters:
+///   - config: 音频格式
+///   - delegate: 代理
+-(instancetype)initFormat:(JLOpusEncodeConfig *)format delegate:(id<JLOpusEncoderDelegate>)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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusFormat.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusFormat.h
new file mode 100644 (file)
index 0000000..0165487
--- /dev/null
@@ -0,0 +1,59 @@
+//
+//  JLOpusOptions.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2024/11/14.
+//  Copyright © 2024 ZhuHai JieLi Technology Co.,Ltd. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+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;
+
+/// 是否开启slik语音优化
+@property (nonatomic, assign) BOOL usVoipSlik;
+
+
+-(instancetype)init NS_UNAVAILABLE;
+
+/// 默认配置
+/// sampleRate: 16000
+/// channels: 1
+/// frameDuration: 20
+/// dataSize: 40
+/// frameSize: 320
+/// hasDataHeader: YES
+/// bitRate: 16000
+/// usVoipSlik: false
++(JLOpusFormat*)defaultFormats;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusToOgg.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLOpusToOgg.h
new file mode 100644 (file)
index 0000000..27b919b
--- /dev/null
@@ -0,0 +1,67 @@
+//
+//  JLOpusToOgg.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2025/5/16.
+//  Copyright © 2025 ZhuHai JieLi Technology Co.,Ltd. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef void(^JLOpusToOggConvertBlock)(NSData *_Nullable oggData, BOOL isLast, NSError *_Nullable error);
+
+/// 将Opus数据转换为Ogg数据
+@interface JLOpusToOgg : NSObject
+
+/// 转码内容的回调
+@property(nonatomic,strong)JLOpusToOggConvertBlock _Nullable convertBlock;
+
+/// 帧长
+/// - Parameter frameLen: 帧长
+/// 默认值 40
+- (instancetype)initWithFrameLength:(uint32_t)frameLen;
+
+/// 开始流
+-(void)startStream;
+
+/// 添加Opus数据
+/// - Parameter opusData: 符合杰理的无头裸 opus 数据
+- (void)appendOpusData:(NSData *)opusData;
+
+/// 关闭流
+- (void)closeStream;
+
+
+/// 将Opus数据转换为Ogg数据
+/// opus 必须为 16000
+/// opus 必须是 单声道
+/// - Parameters:
+///   - opusData: 符合杰理的无头裸 opus 数据
+///   - frameLen: 帧长 公版默认帧长是 40
+///   - duration: 转换后的时长
+///   - error: 错误
++ (NSData *_Nullable)convertOpusDataToOgg:(NSData *)opusData
+                                 frameLen:(uint32_t)frameLen
+                                 duration:(double *)duration
+                                    error:(NSError *__autoreleasing _Nullable *)error ;
+
+/// 将Opus文件转换为Ogg文件
+/// 符合杰理的无头裸 opus 文件
+/// opus 必须为 16000
+/// opus 必须是 单声道
+/// - Parameters:
+///   - opusFilePath: opus文件路径
+///   - oggFilePath: ogg文件路径
+///   - frameLen: 帧长 公版默认帧长是 40
+///   - duration: 转换后的时长
++(void)convertOpusFileToOgg:(NSString *)opusFilePath
+                oggFilePath:(NSString *)oggFilePath
+                   frameLen:(uint32_t)frameLen
+                   duration:(double *)duration;
+
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWav.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWav.h
new file mode 100644 (file)
index 0000000..b32ecef
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+
+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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h
new file mode 100644 (file)
index 0000000..231b3e8
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface JLPcm2WtgModel : NSObject <NSCopying>
+
+/// 音频文件
+@property (nonatomic, copy) NSString *pcmPath;
+
+/// 输出文件
+@property (nonatomic, copy) NSString *wtgPath;
+
+@end
+
+
+/// JLPcmToWtgProtocol
+@protocol JLPcmToWtgDelegate <NSObject>
+
+/// 音频转码完成
+/// - Parameter model: 音频转码模型
+- (void)convertPcmToWtgDone:(JLPcm2WtgModel *)model;
+
+@end
+
+/// 音频转码
+/// PCM 转 WTG
+@interface JLPcmToWtg : NSObject
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/// 音频转码初始化
+/// - Parameter delegate: 音频转码代理
+- (instancetype)initWithDelegate:(id<JLPcmToWtgDelegate>)delegate;
+
+/// 音频转码
+/// 当前接口模型只限制 PCM 文件格式为:8k 16bit
+/// 输入的pcm文件(16bit,小端,8k采样率),wtg_filename:输出的wtg文件
+/// - Parameter model: 音频转码模型
+-(void)convertPcmToWtg:(JLPcm2WtgModel *)model;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h
new file mode 100644 (file)
index 0000000..ad223d0
--- /dev/null
@@ -0,0 +1,54 @@
+//
+//  JLSpeexUnit.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2024/11/14.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+@class JLSpeexDecoder;
+
+@protocol JLSpeexDelegate <NSObject>
+
+/// 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<JLSpeexDelegate>)delegate;
+
+/// 委托
+@property (nonatomic, weak) id<JLSpeexDelegate> 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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Info.plist b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Info.plist
new file mode 100644 (file)
index 0000000..8464456
Binary files /dev/null and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Info.plist differ
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/JLAudioUnitKit b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/JLAudioUnitKit
new file mode 100755 (executable)
index 0000000..10234ec
Binary files /dev/null and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/JLAudioUnitKit differ
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Modules/module.modulemap b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/Modules/module.modulemap
new file mode 100644 (file)
index 0000000..5e1ae1d
--- /dev/null
@@ -0,0 +1,6 @@
+framework module JLAudioUnitKit {
+  umbrella header "JLAudioUnitKit.h"
+  export *
+
+  module * { export * }
+}
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/readme.txt b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-arm64/JLAudioUnitKit.framework/readme.txt
new file mode 100644 (file)
index 0000000..6789fe6
--- /dev/null
@@ -0,0 +1,52 @@
+DESCRIPTION\r
+-----------\r
+This package includes the files needed to build the fixed point implementation\r
+of the ITU-T G.729 Appendix IV.\r
+\r
+DIFFERENCES WITH G.729B\r
+-----------------------\r
+The ANSI-C source code simulating the bit-exact, fixed point simulation \r
+software of enhanced VAD is integrated into the G.729B source code. \r
+The modification to the G.729B source code updated files of coder.c, \r
+cod_ld8k.c, bits.c, dec_sid.c, dtx.c, qsidgain.c, qsidlsf.c, tab_dtx.c, \r
+tab_dtx.h, ld8k.h, deleted vad.c/h and integrated the enhanced VAD functions\r
+into the G.729B project. The modification also replaced the original basic \r
+operators used in the original G.729B source code by the basic operators of \r
+ITU-T Software Tool Library STL2005.\r
+\r
+COMPILATION\r
+-----------\r
+For UNIX systems the following makefiles are provided\r
+\r
+   coder.mak\r
+   decoder.mak\r
+\r
+Edit the makefiles coder.mak and decoder.mak to set the proper options\r
+for your system.\r
+The command to compile and link all code on a UNIX system is\r
+\r
+   make -f coder.mak\r
+   make -f decoder.mak\r
+\r
+For other platforms, the *.mak files can be used to work out the\r
+compilation procedures.\r
+\r
+USAGE\r
+-----\r
+The command line instruction for the encoder is as follows:\r
+   coder inputfile bitstreamfile dtx_option mode x \r
+where:\r
+   inputfile    : 8 kHz sampled data file containing 16 bit linear PCM signal \r
+   bitstreamfile: binary file containing bitstream \r
+   dtx_option   : = 1 : DTX enabled   0 : DTX disabled\r
+   mode X       : Run encoder with enhanced VAD in operating point X, \r
+                  X=0 or 1 or 2 representing balanced or quality-preferred \r
+                  or bandwidth saving operating point, respectively  \r
+\r
+The command line for the decoder is as follows:\r
+   decoder bitstreamfile outputfile\r
+where:\r
+   bitstreamfile: binary file containing bitstream\r
+   outputfile   : 8 kHz sampled data file containing 16 bit linear PCM signal\r
+\r
+\r
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLAudioUnitKit.h
new file mode 100644 (file)
index 0000000..e6b3af6
--- /dev/null
@@ -0,0 +1,26 @@
+//
+//  JLAudioUnitKit.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2024/11/14.
+//
+
+#import <Foundation/Foundation.h>
+
+//! 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 <JLAudioUnitKit/PublicHeader.h>
+
+#import <JLAudioUnitKit/JLSpeexDecoder.h>
+#import <JLAudioUnitKit/JLOpusDecoder.h>
+#import <JLAudioUnitKit/JLOpusEncoder.h>
+#import <JLAudioUnitKit/JLOpusFormat.h>
+#import <JLAudioUnitKit/JLOpusEncodeConfig.h>
+#import <JLAudioUnitKit/JLPcmToWtg.h>
+#import <JLAudioUnitKit/JLPcmToWav.h>
+#import <JLAudioUnitKit/JLAudioUnitPlayer.h>
+#import <JLAudioUnitKit/JLOpusToOgg.h>
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLAudioUnitPlayer.h
new file mode 100644 (file)
index 0000000..7da831c
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+#import <AudioToolbox/AudioToolbox.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, JLAudioUnitPlayerType) {
+    JLAudioUnitPlayerTypeFile,   // 支持 MP3/WAV/AAC 等文件格式(AVAudioPlayer)
+    JLAudioUnitPlayerTypePCM      // 支持 PCM 流式播放(Audio Queue)
+};
+
+@class JLAudioUnitPlayer;
+
+@protocol JLAudioPlayerDelegate <NSObject>
+@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<JLAudioPlayerDelegate> 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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusDecoder.h
new file mode 100644 (file)
index 0000000..711e2e9
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+#import <JLAudioUnitKit/JLOpusFormat.h>
+
+NS_ASSUME_NONNULL_BEGIN
+@class JLOpusDecoder;
+
+/// Opus 解码代理
+@protocol JLOpusDecoderDelegate <NSObject>
+
+/// 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<JLOpusDecoderDelegate> delegate;
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/// 初始化
+/// - Parameters:
+///   - format: 解码格式
+///   - delegate: 代理
+- (instancetype)initDecoder:(JLOpusFormat *)format delegate:(id<JLOpusDecoderDelegate>)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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusEncodeConfig.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusEncodeConfig.h
new file mode 100644 (file)
index 0000000..037284e
--- /dev/null
@@ -0,0 +1,83 @@
+//
+//  JLOpusEncodeConfig.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2025/8/27.
+//  Copyright © 2025 ZhuHai JieLi Technology Co.,Ltd. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, JLOpusEncoderBandwidth) {
+    ///(4kHz bandpass)
+    JLOpusEncoderBandwidthNarrowband = 1101,   // 对应 OPUS_BANDWIDTH_NARROWBAND
+    /// (6kHz bandpass)
+    JLOpusEncoderBandwidthMediumband = 1102,   // 对应 OPUS_BANDWIDTH_MEDIUMBAND
+    /// (8kHz bandpass)
+    JLOpusEncoderBandwidthWideband   = 1103,     // 对应 OPUS_BANDWIDTH_WIDEBAND
+    /// (12kHz bandpass)
+    JLOpusEncoderBandwidthSuperwideband = 1104,// 对应 OPUS_BANDWIDTH_SUPERWIDEBAND
+    /// (20kHz bandpass)
+    JLOpusEncoderBandwidthFullband   = 1105      // 对应 OPUS_BANDWIDTH_FULLBAND
+};
+
+@interface JLOpusEncodeConfig : NSObject
+
+/// 采样率
+@property (nonatomic, assign) int sampleRate;
+
+/// 单/双声道
+@property (nonatomic, assign) int channels;
+
+/// 帧长度 20ms 默认值
+@property (nonatomic, assign) int frameDuration;
+
+/// 帧长度
+@property (nonatomic, assign) int frameSize;
+
+/// BitRate
+@property (nonatomic, assign) int bitRate;
+
+/// 可变比特率开关,默认 NO(使用 CBR)
+@property (nonatomic, assign) BOOL useVBR;
+
+/// VBR 限制模式,默认 NO
+@property (nonatomic, assign) BOOL constrainedVBR;
+
+/// 编码复杂度 0~10,默认 5
+@property (nonatomic, assign) int complexity;
+
+/// 强制输出声道数 -1: 自适应, 1: 单声道, 2: 双声道, 默认 -1
+@property (nonatomic, assign) int forceChannels;
+
+/// 是否启用 DTX(静音段不发送数据),默认 NO
+@property (nonatomic, assign) BOOL useDTX;
+
+/// 网络丢包百分比,默认 0
+@property (nonatomic, assign) int packetLossPercent;
+
+/// 最大带宽限制(OPUS_BANDWIDTH_*),默认 FULLBAND
+@property (nonatomic, assign) int bandwidth;
+
+/// PCM 输入有效位深,默认 16
+@property (nonatomic, assign) int lsbDepth;
+
+/// 专家模式下帧时长(ms),默认与 frameDuration 一致
+@property (nonatomic, assign) int expertFrameDuration;
+
+/// 是否启用数据头
+/// 默认是启用的
+@property (nonatomic, assign) BOOL hasDataHeader;
+
+/// 创建默认编码配置
++ (instancetype)defaultConfig;
+
+/// 获取默认配置
+/// 杰理的无头配置
++ (instancetype)defaultJL;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusEncoder.h
new file mode 100644 (file)
index 0000000..fbe5af7
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+#import <JLAudioUnitKit/JLOpusEncodeConfig.h>
+
+NS_ASSUME_NONNULL_BEGIN
+@class JLOpusEncoder;
+
+/// Opus 编码代理
+@protocol JLOpusEncoderDelegate <NSObject>
+
+/// 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) JLOpusEncodeConfig *opusFormat;
+
+/// 代理
+@property (nonatomic, weak) id<JLOpusEncoderDelegate> delegate;
+
+-(instancetype)init NS_UNAVAILABLE;
+
+/// 初始化
+/// - Parameters:
+///   - config: 音频格式
+///   - delegate: 代理
+-(instancetype)initFormat:(JLOpusEncodeConfig *)format delegate:(id<JLOpusEncoderDelegate>)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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusFormat.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusFormat.h
new file mode 100644 (file)
index 0000000..0165487
--- /dev/null
@@ -0,0 +1,59 @@
+//
+//  JLOpusOptions.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2024/11/14.
+//  Copyright © 2024 ZhuHai JieLi Technology Co.,Ltd. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+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;
+
+/// 是否开启slik语音优化
+@property (nonatomic, assign) BOOL usVoipSlik;
+
+
+-(instancetype)init NS_UNAVAILABLE;
+
+/// 默认配置
+/// sampleRate: 16000
+/// channels: 1
+/// frameDuration: 20
+/// dataSize: 40
+/// frameSize: 320
+/// hasDataHeader: YES
+/// bitRate: 16000
+/// usVoipSlik: false
++(JLOpusFormat*)defaultFormats;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusToOgg.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLOpusToOgg.h
new file mode 100644 (file)
index 0000000..27b919b
--- /dev/null
@@ -0,0 +1,67 @@
+//
+//  JLOpusToOgg.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2025/5/16.
+//  Copyright © 2025 ZhuHai JieLi Technology Co.,Ltd. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef void(^JLOpusToOggConvertBlock)(NSData *_Nullable oggData, BOOL isLast, NSError *_Nullable error);
+
+/// 将Opus数据转换为Ogg数据
+@interface JLOpusToOgg : NSObject
+
+/// 转码内容的回调
+@property(nonatomic,strong)JLOpusToOggConvertBlock _Nullable convertBlock;
+
+/// 帧长
+/// - Parameter frameLen: 帧长
+/// 默认值 40
+- (instancetype)initWithFrameLength:(uint32_t)frameLen;
+
+/// 开始流
+-(void)startStream;
+
+/// 添加Opus数据
+/// - Parameter opusData: 符合杰理的无头裸 opus 数据
+- (void)appendOpusData:(NSData *)opusData;
+
+/// 关闭流
+- (void)closeStream;
+
+
+/// 将Opus数据转换为Ogg数据
+/// opus 必须为 16000
+/// opus 必须是 单声道
+/// - Parameters:
+///   - opusData: 符合杰理的无头裸 opus 数据
+///   - frameLen: 帧长 公版默认帧长是 40
+///   - duration: 转换后的时长
+///   - error: 错误
++ (NSData *_Nullable)convertOpusDataToOgg:(NSData *)opusData
+                                 frameLen:(uint32_t)frameLen
+                                 duration:(double *)duration
+                                    error:(NSError *__autoreleasing _Nullable *)error ;
+
+/// 将Opus文件转换为Ogg文件
+/// 符合杰理的无头裸 opus 文件
+/// opus 必须为 16000
+/// opus 必须是 单声道
+/// - Parameters:
+///   - opusFilePath: opus文件路径
+///   - oggFilePath: ogg文件路径
+///   - frameLen: 帧长 公版默认帧长是 40
+///   - duration: 转换后的时长
++(void)convertOpusFileToOgg:(NSString *)opusFilePath
+                oggFilePath:(NSString *)oggFilePath
+                   frameLen:(uint32_t)frameLen
+                   duration:(double *)duration;
+
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLPcmToWav.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLPcmToWav.h
new file mode 100644 (file)
index 0000000..b32ecef
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+
+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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLPcmToWtg.h
new file mode 100644 (file)
index 0000000..231b3e8
--- /dev/null
@@ -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 <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface JLPcm2WtgModel : NSObject <NSCopying>
+
+/// 音频文件
+@property (nonatomic, copy) NSString *pcmPath;
+
+/// 输出文件
+@property (nonatomic, copy) NSString *wtgPath;
+
+@end
+
+
+/// JLPcmToWtgProtocol
+@protocol JLPcmToWtgDelegate <NSObject>
+
+/// 音频转码完成
+/// - Parameter model: 音频转码模型
+- (void)convertPcmToWtgDone:(JLPcm2WtgModel *)model;
+
+@end
+
+/// 音频转码
+/// PCM 转 WTG
+@interface JLPcmToWtg : NSObject
+
+- (instancetype)init NS_UNAVAILABLE;
+
+/// 音频转码初始化
+/// - Parameter delegate: 音频转码代理
+- (instancetype)initWithDelegate:(id<JLPcmToWtgDelegate>)delegate;
+
+/// 音频转码
+/// 当前接口模型只限制 PCM 文件格式为:8k 16bit
+/// 输入的pcm文件(16bit,小端,8k采样率),wtg_filename:输出的wtg文件
+/// - Parameter model: 音频转码模型
+-(void)convertPcmToWtg:(JLPcm2WtgModel *)model;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Headers/JLSpeexDecoder.h
new file mode 100644 (file)
index 0000000..ad223d0
--- /dev/null
@@ -0,0 +1,54 @@
+//
+//  JLSpeexUnit.h
+//  JLAudioUnitKit
+//
+//  Created by EzioChan on 2024/11/14.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+@class JLSpeexDecoder;
+
+@protocol JLSpeexDelegate <NSObject>
+
+/// 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<JLSpeexDelegate>)delegate;
+
+/// 委托
+@property (nonatomic, weak) id<JLSpeexDelegate> 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/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Info.plist b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Info.plist
new file mode 100644 (file)
index 0000000..6d387d3
Binary files /dev/null and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Info.plist differ
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/JLAudioUnitKit b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/JLAudioUnitKit
new file mode 100755 (executable)
index 0000000..61fc959
Binary files /dev/null and b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/JLAudioUnitKit differ
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Modules/module.modulemap b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/Modules/module.modulemap
new file mode 100644 (file)
index 0000000..5e1ae1d
--- /dev/null
@@ -0,0 +1,6 @@
+framework module JLAudioUnitKit {
+  umbrella header "JLAudioUnitKit.h"
+  export *
+
+  module * { export * }
+}
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/_CodeSignature/CodeResources b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/_CodeSignature/CodeResources
new file mode 100644 (file)
index 0000000..be9f00c
--- /dev/null
@@ -0,0 +1,234 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+       <key>files</key>
+       <dict>
+               <key>Headers/JLAudioUnitKit.h</key>
+               <data>
+               hE2nr+4q2/NdSgBaayJc7ZoOXb0=
+               </data>
+               <key>Headers/JLAudioUnitPlayer.h</key>
+               <data>
+               QPMLV/XA8hjk39d+vT+S57t0fDU=
+               </data>
+               <key>Headers/JLOpusDecoder.h</key>
+               <data>
+               K1bYcaJ67prImNlGuldy8csTRHc=
+               </data>
+               <key>Headers/JLOpusEncodeConfig.h</key>
+               <data>
+               NArAew5QxnSJGsD0tRzQ2V7bHrY=
+               </data>
+               <key>Headers/JLOpusEncoder.h</key>
+               <data>
+               BkgtVe9kCM4Fkc9oH1tC3BNh5Kw=
+               </data>
+               <key>Headers/JLOpusFormat.h</key>
+               <data>
+               Du1x3VNk87NstmspRk7ElijuZrk=
+               </data>
+               <key>Headers/JLOpusToOgg.h</key>
+               <data>
+               fSJT6LcyylJHTHX1wsN3JHG2FxU=
+               </data>
+               <key>Headers/JLPcmToWav.h</key>
+               <data>
+               /BbZmqmWpWVBusXqjnzbjaBNCNg=
+               </data>
+               <key>Headers/JLPcmToWtg.h</key>
+               <data>
+               zoOdOFpIulND0F1OrfIXR1H0kh0=
+               </data>
+               <key>Headers/JLSpeexDecoder.h</key>
+               <data>
+               5ecBKtD3BDGccLiKpTs0fS0CSgs=
+               </data>
+               <key>Info.plist</key>
+               <data>
+               Q2Tz1ljDQKvKxkn8afbgb/2RVnU=
+               </data>
+               <key>Modules/module.modulemap</key>
+               <data>
+               2vYf0m+hGTOTapX6sliv/F1E1VI=
+               </data>
+               <key>readme.txt</key>
+               <data>
+               wijZX0Dr2OlODWS6XYbpeKabb7g=
+               </data>
+       </dict>
+       <key>files2</key>
+       <dict>
+               <key>Headers/JLAudioUnitKit.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       J5pq6Ed3fR+cQ7CGPXDoPl7BZzix7Cjf5yJZFRRvxqs=
+                       </data>
+               </dict>
+               <key>Headers/JLAudioUnitPlayer.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       qBz0OA82HUH4kBtO8xiUw7Q4ohtiIvCSYfCqax5xjJY=
+                       </data>
+               </dict>
+               <key>Headers/JLOpusDecoder.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       cnAj6Nt6vgRLoEH6QY3Q+gYpjcxGPN1OLLZbCgdLymI=
+                       </data>
+               </dict>
+               <key>Headers/JLOpusEncodeConfig.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       qrPpsrXaNCvyxf0/gUZtvveL+ywsfgBUrMPFibjneOo=
+                       </data>
+               </dict>
+               <key>Headers/JLOpusEncoder.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       PK+jl5IacMxuDEKkBwsjwpnGYxj/6Th3ICW4YQ7aRPA=
+                       </data>
+               </dict>
+               <key>Headers/JLOpusFormat.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       Nm6vM9/EbFzyIWbsysu6EOO2S+vZVeplcop4NvoJaMA=
+                       </data>
+               </dict>
+               <key>Headers/JLOpusToOgg.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       dNSvJJnED/6E1p7TYZ4zBzUnLDVsZ8NovuNYjge6T/w=
+                       </data>
+               </dict>
+               <key>Headers/JLPcmToWav.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       l/SEQhSFh7ctq/pBV+Z7X+Z0/gz30eCw3s31otjMPho=
+                       </data>
+               </dict>
+               <key>Headers/JLPcmToWtg.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       MwtbX3Sa0nytA+m11x+1rDvP4WvJnZLljshuT5B3WD0=
+                       </data>
+               </dict>
+               <key>Headers/JLSpeexDecoder.h</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       pV0X3xn07Ps7wE+0EfL9Yu/08tp8Ug8s14iDigRU46o=
+                       </data>
+               </dict>
+               <key>Modules/module.modulemap</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       akFCUM59aSAaRM/ADWQ138YT9GD3oAjcaTvTUo24Ml8=
+                       </data>
+               </dict>
+               <key>readme.txt</key>
+               <dict>
+                       <key>hash2</key>
+                       <data>
+                       +2GG9ORrf2yJnBe2joKWtyBZL9p2sCH8EXqK1GIgW0E=
+                       </data>
+               </dict>
+       </dict>
+       <key>rules</key>
+       <dict>
+               <key>^.*</key>
+               <true/>
+               <key>^.*\.lproj/</key>
+               <dict>
+                       <key>optional</key>
+                       <true/>
+                       <key>weight</key>
+                       <real>1000</real>
+               </dict>
+               <key>^.*\.lproj/locversion.plist$</key>
+               <dict>
+                       <key>omit</key>
+                       <true/>
+                       <key>weight</key>
+                       <real>1100</real>
+               </dict>
+               <key>^Base\.lproj/</key>
+               <dict>
+                       <key>weight</key>
+                       <real>1010</real>
+               </dict>
+               <key>^version.plist$</key>
+               <true/>
+       </dict>
+       <key>rules2</key>
+       <dict>
+               <key>.*\.dSYM($|/)</key>
+               <dict>
+                       <key>weight</key>
+                       <real>11</real>
+               </dict>
+               <key>^(.*/)?\.DS_Store$</key>
+               <dict>
+                       <key>omit</key>
+                       <true/>
+                       <key>weight</key>
+                       <real>2000</real>
+               </dict>
+               <key>^.*</key>
+               <true/>
+               <key>^.*\.lproj/</key>
+               <dict>
+                       <key>optional</key>
+                       <true/>
+                       <key>weight</key>
+                       <real>1000</real>
+               </dict>
+               <key>^.*\.lproj/locversion.plist$</key>
+               <dict>
+                       <key>omit</key>
+                       <true/>
+                       <key>weight</key>
+                       <real>1100</real>
+               </dict>
+               <key>^Base\.lproj/</key>
+               <dict>
+                       <key>weight</key>
+                       <real>1010</real>
+               </dict>
+               <key>^Info\.plist$</key>
+               <dict>
+                       <key>omit</key>
+                       <true/>
+                       <key>weight</key>
+                       <real>20</real>
+               </dict>
+               <key>^PkgInfo$</key>
+               <dict>
+                       <key>omit</key>
+                       <true/>
+                       <key>weight</key>
+                       <real>20</real>
+               </dict>
+               <key>^embedded\.provisionprofile$</key>
+               <dict>
+                       <key>weight</key>
+                       <real>20</real>
+               </dict>
+               <key>^version\.plist$</key>
+               <dict>
+                       <key>weight</key>
+                       <real>20</real>
+               </dict>
+       </dict>
+</dict>
+</plist>
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/readme.txt b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/DeepChordsSdk/JLAudioUnitKit.xcframework/ios-x86_64-simulator/JLAudioUnitKit.framework/readme.txt
new file mode 100644 (file)
index 0000000..6789fe6
--- /dev/null
@@ -0,0 +1,52 @@
+DESCRIPTION\r
+-----------\r
+This package includes the files needed to build the fixed point implementation\r
+of the ITU-T G.729 Appendix IV.\r
+\r
+DIFFERENCES WITH G.729B\r
+-----------------------\r
+The ANSI-C source code simulating the bit-exact, fixed point simulation \r
+software of enhanced VAD is integrated into the G.729B source code. \r
+The modification to the G.729B source code updated files of coder.c, \r
+cod_ld8k.c, bits.c, dec_sid.c, dtx.c, qsidgain.c, qsidlsf.c, tab_dtx.c, \r
+tab_dtx.h, ld8k.h, deleted vad.c/h and integrated the enhanced VAD functions\r
+into the G.729B project. The modification also replaced the original basic \r
+operators used in the original G.729B source code by the basic operators of \r
+ITU-T Software Tool Library STL2005.\r
+\r
+COMPILATION\r
+-----------\r
+For UNIX systems the following makefiles are provided\r
+\r
+   coder.mak\r
+   decoder.mak\r
+\r
+Edit the makefiles coder.mak and decoder.mak to set the proper options\r
+for your system.\r
+The command to compile and link all code on a UNIX system is\r
+\r
+   make -f coder.mak\r
+   make -f decoder.mak\r
+\r
+For other platforms, the *.mak files can be used to work out the\r
+compilation procedures.\r
+\r
+USAGE\r
+-----\r
+The command line instruction for the encoder is as follows:\r
+   coder inputfile bitstreamfile dtx_option mode x \r
+where:\r
+   inputfile    : 8 kHz sampled data file containing 16 bit linear PCM signal \r
+   bitstreamfile: binary file containing bitstream \r
+   dtx_option   : = 1 : DTX enabled   0 : DTX disabled\r
+   mode X       : Run encoder with enhanced VAD in operating point X, \r
+                  X=0 or 1 or 2 representing balanced or quality-preferred \r
+                  or bandwidth saving operating point, respectively  \r
+\r
+The command line for the decoder is as follows:\r
+   decoder bitstreamfile outputfile\r
+where:\r
+   bitstreamfile: binary file containing bitstream\r
+   outputfile   : 8 kHz sampled data file containing 16 bit linear PCM signal\r
+\r
+\r
index 17a75bf..d745a62 100644 (file)
@@ -18,7 +18,7 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate {
         // This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead).
         guard let _ = (scene as? UIWindowScene) else { return }
         App.shared.window = window
-        window?.rootViewController = UINavigationController(rootViewController: DeviceListVC())
+        window?.rootViewController = UINavigationController(rootViewController: ScanVC())
         DcSdkManager.shared.initSdk()
     }
 
index 0143ef5..10c717c 100644 (file)
@@ -49,8 +49,6 @@ class BaseVC: UIViewController {
     }
     
     @objc func logAction(){
-        //        OpusDemo.shared.start()
-        //        return
         let vc = LogVC()
         navigationController?.pushViewController(vc, animated: true)
     }
@@ -8,13 +8,13 @@
 import UIKit
 import DeepChordsSdk
 
-class EarPhoneRecordVC: BaseVC {
+class BleRecordVC: BaseVC {
     var fromTextView =  UITextView()
     var toTextView =  UITextView()
     var recordBtn = UIButton(type: .custom)
     
-    var fromLanguage = "zh-CN"
-    var toLanguage = "en-US"
+    var fromLanguage = CCAiLanguage.chinse
+    var toLanguage = CCAiLanguage.english
     var fromItem:UIBarButtonItem!
     var toItem:UIBarButtonItem!
     
@@ -69,18 +69,31 @@ class EarPhoneRecordVC: BaseVC {
         }
     }
     func setupSdk(){
+        // 识别回调
         DCBleRecord.shared.asrCallback = { [weak self] text in
             guard let self = self else{return}
             self.fromTextView.text = text
             let range = NSMakeRange(fromTextView.text.count - 1, 1)
             self.fromTextView.scrollRangeToVisible(range)
         }
+        // 翻译回调
         DCBleRecord.shared.translateCallback = { [weak self] text in
             guard let self = self else{return}
             self.toTextView.text = text
             let range = NSMakeRange(toTextView.text.count - 1, 1)
             self.toTextView.scrollRangeToVisible(range)
         }
+        // 状态码回调
+        //20001,///开始录音
+        //20002,///停止录音
+        //20003,///录音出错
+        //20004,///蓝牙断开
+        //30001,///socket连上
+        //30002,///socket断开连接
+        //30003,///socket连接中...
+        //30004,///ping超时
+        //50000,///网络错误
+        //60000,///未鉴权
         DCBleRecord.shared.codeCallback = { [weak self] code in
             guard let self = self else{return}
             if code == 20001 {
@@ -89,28 +102,27 @@ class EarPhoneRecordVC: BaseVC {
             else if code == 20002 || code == 20003{
                 self.recordBtn.isSelected = false
             }
-            
         }
+        // 结束录音文件回调
         DCBleRecord.shared.filePathCallBack = { [weak self] path in
             guard let self = self else{return}
-//            self.recordBtn.isSelected = false
         }
     }
     
     @objc func fromLanguageAction(){
         let vc = LanuageVC()
-        vc.didSelectedCallback = { (name,value) in
-            self.fromLanguage = value
-            self.fromItem.title = name
+        vc.didSelectedCallback = { (lan) in
+            self.fromLanguage = lan
+            self.fromItem.title = lan.title
             
         }
         navigationController?.pushViewController(vc, animated: true)
     }
     @objc func toLanguageAction(){
         let vc = LanuageVC()
-        vc.didSelectedCallback = { (name,value) in
-            self.toLanguage = value
-            self.toItem.title = name
+        vc.didSelectedCallback = { (lan) in
+            self.toLanguage = lan
+            self.toItem.title = lan.title
             
         }
         navigationController?.pushViewController(vc, animated: true)
@@ -127,14 +139,14 @@ class EarPhoneRecordVC: BaseVC {
     }
 }
 
-extension EarPhoneRecordVC{
+extension BleRecordVC{
     func startAction(){
         fromTextView.text = ""
         toTextView.text = ""
-        DCBleRecord.shared.fromLanguage = fromLanguage
-        DCBleRecord.shared.toLanguage = toLanguage
+        DCBleRecord.shared.fromLanguage = fromLanguage.value
+        DCBleRecord.shared.toLanguage = toLanguage.value
         DCBleRecord.shared.isTranslate = true
-//        DCBleRecord.shared.start(type: 0x00)
+        DCBleRecord.shared.start()
     }
     
     func stopAction(){
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/CallRecordVC.swift b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/CallRecordVC.swift
new file mode 100644 (file)
index 0000000..e247ac5
--- /dev/null
@@ -0,0 +1,106 @@
+//
+//  CallRecordVC.swift
+//  Example
+//
+//  Created by liangshi on 2026/1/16.
+//
+
+
+import UIKit
+import DeepChordsSdk
+
+class CallRecordVC: BaseVC {
+    var fromTextView =  UITextView()
+    var toTextView =  UITextView()
+    var recordBtn = UIButton(type: .custom)
+    
+    override func viewDidLoad() {
+        super.viewDidLoad()
+        setupView()
+        setupSdk()
+    }
+    
+    override func viewWillDisappear(_ animated: Bool) {
+        super.viewWillDisappear(animated)
+        stopAction()
+    }
+    func setupView(){
+        title = "耳机录音"
+        view.backgroundColor = .white
+
+        
+        recordBtn.backgroundColor = .blue
+        recordBtn.setTitle("开始录音", for: .normal)
+        recordBtn.setTitle("停止录音", for: .selected)
+        recordBtn.addTarget(self, action:  #selector(recordAction), for: .touchUpInside)
+        view.addSubview(recordBtn)
+        recordBtn.snp.makeConstraints { make in
+            make.width.centerX.bottom.equalToSuperview()
+            make.height.equalTo(80)
+        }
+        
+        fromTextView.isEditable = false
+        fromTextView.layer.borderColor = UIColor.black.cgColor
+        fromTextView.layer.borderWidth = 1
+        view.addSubview(fromTextView)
+        fromTextView.snp.makeConstraints { make in
+            make.width.centerX.equalToSuperview()
+            make.top.equalToSuperview().inset(100)
+            make.height.equalTo((kScreenHei - 200)/2)
+        }
+        
+        toTextView.isEditable = false
+        toTextView.layer.borderColor = UIColor.black.cgColor
+        toTextView.layer.borderWidth = 1
+        view.addSubview(toTextView)
+        toTextView.snp.makeConstraints { make in
+            make.width.centerX.equalToSuperview()
+            make.top.equalTo(fromTextView.snp.bottom).offset(20)
+            make.bottom.equalTo(recordBtn.snp.top)
+        }
+    }
+    func setupSdk(){
+        CallRecordManager.shared.recordFinish = {[weak self] path in
+            guard let self = self else { return  }
+           
+        }
+        CallRecordManager.shared.stereoNeedReloadData = {[weak self] (text,index) in
+            guard let self = self else { return  }
+            if (index == 1) {
+                self.fromTextView.text = text
+                let range = NSMakeRange(fromTextView.text.count - 1, 1)
+                self.fromTextView.scrollRangeToVisible(range)
+            } else if (index == 2) {
+                self.toTextView.text = text
+                let range = NSMakeRange(toTextView.text.count - 1, 1)
+                self.toTextView.scrollRangeToVisible(range)
+            }
+        }
+        CallRecordManager.shared.callRecordNotOnCall = {[weak self]  in
+            guard let self = self else { return  }
+            self.recordBtn.isSelected = false
+        }
+    }
+    
+    @objc func recordAction() {
+        self.recordBtn.isSelected = !self.recordBtn.isSelected
+        if self.recordBtn.isSelected {
+            startAction()
+        }
+        else{
+            stopAction()
+        }
+    }
+}
+
+extension CallRecordVC{
+    func startAction(){
+        fromTextView.text = ""
+        toTextView.text = ""
+        CallRecordManager.shared.recordStart()
+    }
+    
+    func stopAction(){
+        CallRecordManager.shared.recordStop()
+    }
+}
index d7985be..3793cb0 100644 (file)
@@ -55,14 +55,14 @@ class ChatVC: BaseVC {
         }
     }
     func setupSDk(){
-        DcChatManager.shared.chatNeedReloadData = {[weak self]  in
+        ChatManager.shared.chatNeedReloadData = {[weak self]  in
             guard let self = self else{return}
             tableView.reloadData()
-            if DcChatManager.shared.dataList.count > 0 {
-                tableView.scrollToRow(at: IndexPath(row: DcChatManager.shared.dataList.count - 1, section: 0), at: .none, animated: true)
+            if ChatManager.shared.dataList.count > 0 {
+                tableView.scrollToRow(at: IndexPath(row: ChatManager.shared.dataList.count - 1, section: 0), at: .none, animated: true)
             }
         }
-        DcChatManager.shared.codeCallback = { [weak self] code in
+        ChatManager.shared.codeCallback = { [weak self] code in
             guard let self = self else{return}
             if code == 20001 {
                 self.recordBtn.isSelected = true
@@ -72,7 +72,7 @@ class ChatVC: BaseVC {
             }
             
         }
-        DcChatManager.shared.finishCallback = { [weak self] path in
+        ChatManager.shared.finishCallback = { [weak self] path in
             guard let self = self else{return}
             //            self.recordBtn.isSelected = false
         }
@@ -83,19 +83,19 @@ class ChatVC: BaseVC {
     @objc func recordAction() {
         self.recordBtn.isSelected = !self.recordBtn.isSelected
         if self.recordBtn.isSelected {
-            DcChatManager.shared.startChat()
+            ChatManager.shared.startChat()
         }
         else{
             stopAction()
         }
     }
     func stopAction() {
-        DcChatManager.shared.stopChat()
+        ChatManager.shared.stopChat()
     }
     @objc func roleAction(){
         let vc = RoleVC()
         vc.didSelectedCallback = { role in
-            DcChatManager.shared.role = role
+            ChatManager.shared.role = role
         }
         navigationController?.pushViewController(vc, animated: true)
     }
@@ -103,12 +103,12 @@ class ChatVC: BaseVC {
 
 extension ChatVC:UITableViewDelegate,UITableViewDataSource {
     func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
-        return DcChatManager.shared.dataList.count
+        return ChatManager.shared.dataList.count
     }
     
     func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
         let cell = tableView.dequeueReusableCell(withIdentifier:  ChatCell.reuseID, for: indexPath) as? ChatCell
-        cell!.data = DcChatManager.shared.dataList[indexPath.row]
+        cell!.data = ChatManager.shared.dataList[indexPath.row]
         return cell!
     }
     func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/DeviceInfo/DeviceInfoVC.swift b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/VC/DeviceInfo/DeviceInfoVC.swift
new file mode 100644 (file)
index 0000000..101e8f5
--- /dev/null
@@ -0,0 +1,99 @@
+//
+//  DeviceInfoVC.swift
+//  Example
+//
+//  Created by liangshi on 2026/1/16.
+//
+
+
+import UIKit
+import SnapKit
+import DeepChordsSdk
+import Toast_Swift
+class DeviceInfoVC: BaseVC{
+    let list:[(name:String,action:String)] = [
+        ("开始查找耳机","startFindAction"),
+        ("停止查找耳机","stopFindAction"),
+        ("获取电量","batteryAction"),
+        ("获取软件版本","softVersionAction"),
+        ("获取硬件版本","hardVersionAction"),
+        ("EQ","eqAction"),
+        ("音乐","musicAction"),
+    ]
+    
+    override func viewDidLoad() {
+        super.viewDidLoad()
+        // Do any additional setup after loading the view.
+        setupViews()
+    }
+    
+    func setupViews(){
+        self.title = "设备信息"        
+        let tableView = UITableView(frame: CGRectMake(0, 80, self.view.bounds.size.width, self.view.bounds.size.height), style: .plain)
+        tableView.delegate = self
+        tableView.dataSource = self
+        tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
+        view.addSubview(tableView)
+    }
+}
+
+extension DeviceInfoVC:UITableViewDelegate,UITableViewDataSource {
+    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
+        return 60
+    }
+    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
+        return list.count
+    }
+    
+    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
+        let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
+        cell.textLabel?.text = list[indexPath.row].name
+        
+        return cell
+    }
+    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
+        let data = list[indexPath.row]
+        let action = Selector(data.action)
+        self.perform(action)
+    }
+}
+
+extension DeviceInfoVC{
+    
+    @objc func startFindAction(){
+        view.makeToastActivity(.center)
+        DCDevice.shared.findDevice(state: 1) {[weak self] result in
+            self?.view.hideToastActivity()
+        }
+    }
+    @objc func stopFindAction(){
+        view.makeToastActivity(.center)
+        DCDevice.shared.findDevice(state: 0) {[weak self] result in
+            self?.view.hideToastActivity()
+        }
+    }
+    @objc func batteryAction(){
+        view.makeToastActivity(.center)
+        DCDevice.shared.getBatery {[weak self] result in
+            self?.view.hideToastActivity()
+        }
+    }
+    @objc func softVersionAction(){
+        view.makeToastActivity(.center)
+        DCDevice.shared.getSoftVersion {[weak self] result in
+            self?.view.hideToastActivity()
+        }
+    }
+    @objc func hardVersionAction(){
+        view.makeToastActivity(.center)
+        DCDevice.shared.getHardVersion {[weak self] result in
+            self?.view.hideToastActivity()
+        }
+    }
+    @objc func eqAction(){
+        self.navigationController?.pushViewController(EqVC(), animated: true)
+    }
+    @objc func musicAction(){
+        self.navigationController?.pushViewController(MusicVC(), animated: true)
+    }
+}
@@ -1,5 +1,5 @@
 //
-//  PlayerVC.swift
+//  MusicPlayerVC.swift
 //  Example
 //
 //  Created by liangshi on 2025/12/18.
@@ -9,7 +9,7 @@ import UIKit
 import SnapKit
 import DeepChordsSdk
 import Toast_Swift
-class PlayerVC: BaseVC{
+class MusicPlayerVC: BaseVC{
     let list = ["顺序循环","随机","单曲"]
     let label = UILabel()
     let modeBtn = UIButton(type: .custom)
@@ -50,7 +50,7 @@ extension MusicVC:UITableViewDelegate,UITableViewDataSource {
     }
     func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
         let data = dataList[indexPath.row]
-        navigationController?.pushViewController(PlayerVC(music: data), animated: true)
+        navigationController?.pushViewController(MusicPlayerVC(music: data), animated: true)
     }
     func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) {
         if editingStyle == .delete {
index a8891e0..77f5028 100644 (file)
@@ -12,36 +12,31 @@ import DeepChordsSdk
 import Toast_Swift
 class HomeVC: BaseVC{
     let list:[(name:String,action:String)] = [
-        ("开始查找耳机","startFindAction"),
-        ("停止查找耳机","stopFindAction"),
-        ("获取电量","batteryAction"),
-        ("获取软件版本","softVersionAction"),
-        ("获取硬件版本","hardVersionAction"),
-        ("EQ","eqAction"),
-        ("音乐","musicAction"),
-        ("现场录音","recordAction"),
+        ("设备相关","deviceInfoAction"),
+
+        ("手机录音","recordAction"),
         ("耳机录音","bleAsrAction"),
+        ("通话录音","callRecordAction"),
         ("对话","chatAction"),
-        ("tts","ttsAction"),
     ]
 
     override func viewDidLoad() {
         super.viewDidLoad()
         // Do any additional setup after loading the view.
-        
         setupViews()
-        setupBle()
     }
     
     func setupViews(){
         self.title = "DeepChords SDK"
-//        self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: "扫描", style: .done, target: self, action: #selector(scanAction))
         
-        let tableView = UITableView(frame: CGRectMake(0, 80, self.view.bounds.size.width, self.view.bounds.size.height), style: .plain)
+        let tableView = UITableView(frame: .zero, style: .plain)
         tableView.delegate = self
         tableView.dataSource = self
         tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
         view.addSubview(tableView)
+        tableView.snp.makeConstraints { make in
+            make.edges.equalToSuperview()
+        }
     }
 }
 
@@ -67,79 +62,20 @@ extension HomeVC:UITableViewDelegate,UITableViewDataSource {
 }
 
 extension HomeVC{
-
-    @objc func startFindAction(){
-        view.makeToastActivity(.center)
-        DCDevice.shared.findDevice(state: 1) {[weak self] result in
-            self?.view.hideToastActivity()
-        }
-    }
-    @objc func stopFindAction(){
-        view.makeToastActivity(.center)
-        DCDevice.shared.findDevice(state: 0) {[weak self] result in
-            self?.view.hideToastActivity()
-        }
-    }
-    @objc func batteryAction(){
-        view.makeToastActivity(.center)
-        DCDevice.shared.getBatery {[weak self] result in
-            self?.view.hideToastActivity()
-        }
-    }
-    @objc func softVersionAction(){
-        view.makeToastActivity(.center)
-        DCDevice.shared.getSoftVersion {[weak self] result in
-            self?.view.hideToastActivity()
-        }
-    }
-    @objc func hardVersionAction(){
-        view.makeToastActivity(.center)
-        DCDevice.shared.getHardVersion {[weak self] result in
-            self?.view.hideToastActivity()
-        }
+    @objc func deviceInfoAction(){
+        navigationController?.pushViewController(DeviceInfoVC(), animated: true)
     }
-    @objc func eqAction(){
-        self.navigationController?.pushViewController(EqVC(), animated: true)
-    }
-    @objc func musicAction(){
-        self.navigationController?.pushViewController(MusicVC(), animated: true)
-    }
-    
+   
     @objc func recordAction(){
         self.navigationController?.pushViewController(PhoneRecordVC(), animated: true)
     }
     @objc func bleAsrAction(){
-        navigationController?.pushViewController(EarPhoneRecordVC(), animated: true)
+        navigationController?.pushViewController(BleRecordVC(), animated: true)
     }
     @objc func chatAction(){
         navigationController?.pushViewController(ChatVC(), animated: true)
     }
-    @objc func ttsAction(){
-        navigationController?.pushViewController(TtsVC(), animated: true)
-    }
-    
-}
-
-extension HomeVC{
-    func setupBle(){
-        let shared = BleManager.shared
-        shared.autoConnect()
-        shared.didConnectDeviceCallback = { p in
-            //蓝牙已经连接
-//            StarburstSdk.shared().bleConnected()
-        }
-        shared.disConnectDeviceCallback = { p in
-            //蓝牙已经断开
-        }
+    @objc func callRecordAction(){
+        navigationController?.pushViewController(CallRecordVC(), animated: true)
     }
-
-    
-//    @objc func scanAction(){
-//        let scanVC = DeviceListVC()
-//        navigationController?.pushViewController(scanVC, animated: true)
-//        scanVC.list = BleManager.shared.devices
-//        scanVC.didSelectedCallback = { device in
-//            BleManager.shared.connectPeripheral(device)
-//        }
-//    }
 }
index a3bbd63..74665e9 100644 (file)
 import UIKit
 import Toast_Swift
 
+enum CCAiLanguage:String{
+    case chinse = "chinse"
+    case english = "english"
+    case japanese = "japanese"
+    case korean = "korean"
+    case french = "french"
+    case spanish = "spanish"
+    case portuguese = "portuguese"
+    case indonesian = "indonesian"
+    case russian = "russian"
+    case malay = "malay"
+    case German = "German"
+    case Filipino = "Filipino"
+    case thai = "thai"
+    case Arabic = "Arabic"
+    case Vietnam = "Vietnam"
+    
+    case Danish = "Danish"
+    case Greek = "Greek"
+    case Finnish = "Finnish"
+    case Hebrew = "Hebrew"
+    case Hindi = "Hindi"
+    case Italian = "Italian"
+    case Dutch = "Dutch"
+    case Norwegian = "Norwegian"
+    case Polish = "Polish"
+    case Swedish = "Swedish"
+    case Swahili = "Swahili"
+    case Turkish = "Turkish"
+
+    static var all:[CCAiLanguage]{
+        let list = [.chinse,.english,.japanese,.korean,.french,.spanish,.portuguese,.indonesian,.russian,.malay,German,Filipino,thai,Arabic,Vietnam,Danish,Greek,Finnish,Hebrew,Hindi,Italian,Dutch,Norwegian,Polish,Swedish,Swahili,Turkish,]
+        return list
+    }
+    var title:String{
+        switch self {
+        case .chinse:
+            return "中文"
+        case .english:
+            return "英文"
+        case .japanese:
+            return "日文"
+        case .korean:
+            return "韩文"
+        case .french:
+            return "法文"
+        case .spanish:
+            return "西班牙文"
+        case .portuguese:
+            return "葡萄牙文"
+        case .indonesian:
+            return "印度尼西亚文"
+        case .russian:
+            return "俄文"
+        case .malay:
+            return "马来文"
+        case .German:
+            return "德文"
+        case .Filipino:
+            return "菲律宾文"
+        case .thai:
+            return "泰文"
+        case .Arabic:
+            return "阿拉伯文"
+        case .Vietnam:
+            return "越南文"
+            
+        case .Danish:
+            return "丹麦文"
+        case .Greek:
+            return "希腊文"
+        case .Finnish:
+            return "芬兰文"
+        case .Hebrew:
+            return "希伯来文"
+        case .Hindi:
+            return "印地文"
+        case .Italian:
+            return "意大利文"
+        case .Dutch:
+            return "荷兰文"
+        case .Norwegian:
+            return "挪威文"
+        case .Polish:
+            return "波兰文"
+        case .Swedish:
+            return "瑞典文"
+        case .Swahili:
+            return "斯瓦希里文"
+        case .Turkish:
+            return "土耳其文"
+        }
+    }
+    
+    var value:String{
+        switch self {
+        case .chinse:
+            return "zh-CN"
+        case .english:
+            return "en-US"
+        case .japanese:
+            return "ja-JP"
+        case .korean:
+            return "ko-KR"
+        case .french:
+            return "fr-FR"
+        case .spanish:
+            return "es-MX"
+        case .portuguese:
+            return "pt-BR"
+        case .indonesian:
+            return "id-ID"
+        case .russian:
+            return "ru"
+        case .malay:
+            return "ms-MY"
+        case .German:
+            return "de-DE"
+        case .Filipino:
+            return "fil-PH"
+        case .thai:
+            return "th-TH"
+        case .Arabic:
+            return "ar-SA"
+        case .Vietnam:
+            return "vi"
+            
+        case .Danish:
+            return "da"
+        case .Greek:
+            return "el"
+        case .Finnish:
+            return "fi"
+        case .Hebrew:
+            return "he"
+        case .Hindi:
+            return "hi"
+        case .Italian:
+            return "it"
+        case .Dutch:
+            return "nl"
+        case .Norwegian:
+            return "no"
+        case .Polish:
+            return "pl"
+        case .Swedish:
+            return "sv"
+        case .Swahili:
+            return "sw"
+        case .Turkish:
+            return "tr"
+        }
+    }
+}
+
+
 class LanuageVC: BaseVC {
     private var tableView: UITableView!
-    private var list:[(name: String,value:String)] = [
-        ("简体中文" ,"zh-CN"),
-        ("四川话", "sc"),
-        ("粤语", "cant"),
-        ("上海话" ,"zh_shanghai"),
-        ("英文",  "en-US"),
-        ("日语", "ja-JP"),
-        ("韩语", "ko-KR"),
-        ("法语", "fr-FR"),
-        ("西班牙语" ,"es-MX"),
-        ("葡萄牙语", "pt-BR"),
-        ("印尼语" ,"id-ID"),
-        ("俄语","ru-RU"),
-        ("马来语", "ms-MY"),
-    ]
-    var didSelectedCallback: ((String,String) -> Void)?
+    private var list = CCAiLanguage.all
+    var didSelectedCallback: ((CCAiLanguage) -> Void)?
     
     override func viewDidLoad() {
         super.viewDidLoad()
@@ -49,7 +191,7 @@ extension LanuageVC:UITableViewDataSource, UITableViewDelegate{
     func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
         let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
         let model = list[indexPath.row]
-        cell.textLabel?.text = model.name
+        cell.textLabel?.text = model.title
         
         return cell
     }
@@ -57,7 +199,7 @@ extension LanuageVC:UITableViewDataSource, UITableViewDelegate{
     func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
         view.makeToastActivity(.center)
         let model = list[indexPath.row]
-        didSelectedCallback?(model.name,model.value)
+        didSelectedCallback?(model)
         self.navigationController?.popViewController(animated: true)
         
     }
index 423a321..1a1d470 100644 (file)
@@ -5,6 +5,9 @@
 //  Created by liangshi on 2025/12/9.
 //
 
+
+
+
 import UIKit
 import DeepChordsSdk
 
@@ -13,8 +16,8 @@ class PhoneRecordVC: BaseVC {
     var toTextView =  UITextView()
     var recordBtn = UIButton(type: .custom)
     
-    var fromLanguage = "zh-CN"
-    var toLanguage = "en-US"
+    var fromLanguage = CCAiLanguage.chinse
+    var toLanguage = CCAiLanguage.english
     var fromItem:UIBarButtonItem!
     var toItem:UIBarButtonItem!
     
@@ -71,18 +74,36 @@ class PhoneRecordVC: BaseVC {
         }
     }
     func setupSdk(){
+        // 识别回调
         DCPhoneRecord.shared.asrCallback = { [weak self] text in
             guard let self = self else{return}
             self.fromTextView.text = text
             let range = NSMakeRange(fromTextView.text.count - 1, 1)
             self.fromTextView.scrollRangeToVisible(range)
         }
+        //翻译回调
         DCPhoneRecord.shared.translateCallback = { [weak self] text in
             guard let self = self else{return}
             self.toTextView.text = text
             let range = NSMakeRange(toTextView.text.count - 1, 1)
             self.toTextView.scrollRangeToVisible(range)
         }
+        // 状态码回调
+        //20001,///开始录音
+        //20002,///停止录音
+        //20003,///录音出错
+        //20004,///蓝牙断开
+        //30001,///socket连上
+        //30002,///socket断开连接
+        //30003,///socket连接中...
+        //30004,///ping超时
+        //50000,///网络错误
+        //60000,///未鉴权
+        DCPhoneRecord.shared.codeCallback = { [weak self] code in
+            guard let self = self else{return}
+
+        }
+        //录音文件回调
         DCPhoneRecord.shared.filePathCallBack = { [weak self] path in
             guard let self = self else{return}
         }
@@ -90,18 +111,18 @@ class PhoneRecordVC: BaseVC {
     
     @objc func fromLanguageAction(){
         let vc = LanuageVC()
-        vc.didSelectedCallback = { (name,value) in
-            self.fromLanguage = value
-            self.fromItem.title = name
+        vc.didSelectedCallback = { (lan) in
+            self.fromLanguage = lan
+            self.fromItem.title = lan.title
             
         }
         navigationController?.pushViewController(vc, animated: true)
     }
     @objc func toLanguageAction(){
         let vc = LanuageVC()
-        vc.didSelectedCallback = { (name,value) in
-            self.toLanguage = value
-            self.toItem.title = name
+        vc.didSelectedCallback = { (lan) in
+            self.toLanguage = lan
+            self.toItem.title = lan.title
             
         }
         navigationController?.pushViewController(vc, animated: true)
@@ -120,8 +141,8 @@ class PhoneRecordVC: BaseVC {
 
 extension PhoneRecordVC{
     func startAction(){
-        DCPhoneRecord.shared.fromLanguage = fromLanguage
-        DCPhoneRecord.shared.toLanguage = toLanguage
+        DCPhoneRecord.shared.fromLanguage = fromLanguage.value
+        DCPhoneRecord.shared.toLanguage = toLanguage.value
         DCPhoneRecord.shared.isTranslate = true
         DCPhoneRecord.shared.start()
     }
@@ -1,5 +1,5 @@
 //
-//  DeviceListVC.swift
+//  ScanVC.swift
 //  IOT
 //
 //  Created by liangshi on 2025/4/9.
@@ -9,7 +9,7 @@ import UIKit
 import SnapKit
 import CoreBluetooth
 import DeepChordsSdk
-class DeviceListVC: BaseVC{
+class ScanVC: BaseVC{
     let tableView = UITableView(frame: .zero, style: .plain)
     var list:[CBPeripheral] = [ ]
     var didSelectedCallback: ((CBPeripheral) -> Void)?
@@ -37,16 +37,12 @@ class DeviceListVC: BaseVC{
             self?.list = devices
             self?.tableView.reloadData()
         }
-        BleManager.shared.didConnectDeviceCallback = { [weak self] de in
-            self?.navigationController?.popViewController(animated: true)
-        }
     }
     func setupSdk(){
-        DCSdk.shared.authCallback = { [weak self] (code,string) in
+        DCSdk.shared.authCallback = {(code,string) in
             DCLogger.debug("鉴权结果",code,string)
             App.shared.window?.hideToastActivity()
             if code == 200{
-                
                 App.shared.window?.makeToast("鉴权成功")
                 App.shared.window?.rootViewController = UINavigationController(rootViewController: HomeVC())
             }
@@ -60,7 +56,7 @@ class DeviceListVC: BaseVC{
     }
 }
 
-extension DeviceListVC:UITableViewDelegate,UITableViewDataSource {
+extension ScanVC:UITableViewDelegate,UITableViewDataSource {
     func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
         return 60
     }
@@ -78,6 +74,5 @@ extension DeviceListVC:UITableViewDelegate,UITableViewDataSource {
         App.shared.window?.makeToastActivity(.center)
         let data = list[indexPath.row]
         BleManager.shared.connectPeripheral(data)
-//        App.shared.window?.rootViewController = UINavigationController(rootViewController: HomeVC())
     }
 }
index d320c52..8d8cecb 100644 (file)
-import UIKit
-import StarburstSdk
-import AVFoundation
-
-class TtsVC: BaseVC {
-    private let textField = UITextField()
-    private let speedSlider = UISlider()
-    private let speedLabel = UILabel()
-    private let synthButton = UIButton(type: .system)
-    private let logView = UITextView()
-    
-    private var ttsSpeed: Float = 1.0
-    private var audioPlayer: AVAudioPlayer?
-    
-    override func viewDidLoad() {
-        super.viewDidLoad()
-        title = "文本合成 TTS"
-        view.backgroundColor = .white
-        setupUI()
-    }
-    
-    func setupUI() {
-        textField.borderStyle = .roundedRect
-        textField.placeholder = "请输入要合成的文本"
-        
-        speedSlider.minimumValue = 0.8
-        speedSlider.maximumValue = 2.0
-        speedSlider.value = ttsSpeed
-        speedSlider.addTarget(self, action: #selector(speedChanged), for: .valueChanged)
-        
-        speedLabel.text = "语速:\(String(format: "%.1f", ttsSpeed))x"
-        
-        synthButton.setTitle("合成并播放", for: .normal)
-        synthButton.addTarget(self, action: #selector(starTts), for: .touchUpInside)
-        
-        logView.isEditable = false
-        logView.font = UIFont.systemFont(ofSize: 14)
-        
-        view.addSubview(textField)
-        view.addSubview(speedSlider)
-        view.addSubview(speedLabel)
-        view.addSubview(synthButton)
-        view.addSubview(logView)
-        
-        textField.frame = CGRect(x: 20, y: 100, width: view.bounds.width-40, height: 40)
-        speedLabel.frame = CGRect(x: 20, y: 150, width: 200, height: 30)
-        speedSlider.frame = CGRect(x: 20, y: 180, width: view.bounds.width-40, height: 40)
-        synthButton.frame = CGRect(x: 20, y: 240, width: view.bounds.width-40, height: 50)
-        logView.frame = CGRect(x: 20, y: 300, width: view.bounds.width-40, height: 300)
-    }
-    
-    @objc func speedChanged() {
-        ttsSpeed = speedSlider.value
-        speedLabel.text = "语速:\(String(format: "%.1f", ttsSpeed))x"
-    }
-    
-    @objc func starTts() {
-        guard let text = textField.text, !text.isEmpty else {
-            appendLog("请输入文本")
-            return
-        }
-        appendLog("开始合成语音...\n")
-        
-        // 调用 iOS SDK 的 TTS 接口
-        TextToSpeechManager.sharedInstance().textToSpeech(
-            companyId: "2101982539",
-            text: text,
-            reqId: UUID().uuidString,
-            speedRatio: ttsSpeed,
-            voiceType: "zh_female_qingchezizi_moon_bigtts",
-            encoding: "pcm",
-            callback: self
-        )
-    }
-    
-    func appendLog(_ msg: String) {
-        DispatchQueue.main.async {
-            self.logView.text.append(msg)
-            self.logView.scrollRangeToVisible(NSRange(location: self.logView.text.count, length: 0))
-        }
-    }
-    
-    func playPCMData(_ pcmData: Data) {
-        // PCM裸数据要转成wav才能用AVAudioPlayer播放
-        if let wavData = pcmToWav(pcmData, sampleRate: 16000, channels: 1) {
-            DispatchQueue.main.async {
-                do {
-                    self.audioPlayer = try AVAudioPlayer(data: wavData)
-                    self.audioPlayer?.play()
-                    self.appendLog("播放中...\n")
-                } catch {
-                    self.appendLog("播放失败:\(error.localizedDescription)\n")
-                }
-            }
-        }
-    }
-    
-    func pcmToWav(_ pcmData: Data, sampleRate: Int, channels: Int) -> Data? {
-        let byteRate = sampleRate * channels * 2
-        var header = Data()
-        header.append("RIFF".data(using: .ascii)!)
-        header.append(UInt32(pcmData.count + 36).littleEndianData)
-        header.append("WAVE".data(using: .ascii)!)
-        
-        header.append("fmt ".data(using: .ascii)!)
-        header.append(UInt32(16).littleEndianData)
-        header.append(UInt16(1).littleEndianData) // PCM
-        header.append(UInt16(channels).littleEndianData)
-        header.append(UInt32(sampleRate).littleEndianData)
-        header.append(UInt32(byteRate).littleEndianData)
-        header.append(UInt16(channels * 2).littleEndianData)
-        header.append(UInt16(16).littleEndianData)
-        
-        header.append("data".data(using: .ascii)!)
-        header.append(UInt32(pcmData.count).littleEndianData)
-        
-        var wav = Data()
-        wav.append(header)
-        wav.append(pcmData)
-        return wav
-    }
-}
-
-extension TtsVC: TextToSpeechCallback {
-    func onResult(_ response: String) {
-        appendLog("合成完成,开始播放...\n")
-        guard let jsonObj = try? JSONSerialization.jsonObject(with: response.data(using: .utf8)!, options: []) as? [String:Any],
-              let respObj = jsonObj["resp"] as? [String:Any],
-              let base64Data = respObj["data"] as? String,
-              let pcmBytes = Data(base64Encoded: base64Data) else {
-            appendLog("解析PCM失败\n")
-            return
-        }
-        playPCMData(pcmBytes)
-    }
-    
-    func onError(_ code: Int, message: String) {
-        appendLog("合成失败:\(message)\n")
-    }
-}
-
-// MARK: - Data扩展
-extension FixedWidthInteger {
-    var littleEndianData: Data {
-        withUnsafeBytes(of: self.littleEndian, { Data($0) })
-    }
-}
+//import UIKit
+//import StarburstSdk
+//import AVFoundation
+//
+//class TtsVC: BaseVC {
+//    private let textField = UITextField()
+//    private let speedSlider = UISlider()
+//    private let speedLabel = UILabel()
+//    private let synthButton = UIButton(type: .system)
+//    private let logView = UITextView()
+//    
+//    private var ttsSpeed: Float = 1.0
+//    private var audioPlayer: AVAudioPlayer?
+//    
+//    override func viewDidLoad() {
+//        super.viewDidLoad()
+//        title = "文本合成 TTS"
+//        view.backgroundColor = .white
+//        setupUI()
+//    }
+//    
+//    func setupUI() {
+//        textField.borderStyle = .roundedRect
+//        textField.placeholder = "请输入要合成的文本"
+//        
+//        speedSlider.minimumValue = 0.8
+//        speedSlider.maximumValue = 2.0
+//        speedSlider.value = ttsSpeed
+//        speedSlider.addTarget(self, action: #selector(speedChanged), for: .valueChanged)
+//        
+//        speedLabel.text = "语速:\(String(format: "%.1f", ttsSpeed))x"
+//        
+//        synthButton.setTitle("合成并播放", for: .normal)
+//        synthButton.addTarget(self, action: #selector(starTts), for: .touchUpInside)
+//        
+//        logView.isEditable = false
+//        logView.font = UIFont.systemFont(ofSize: 14)
+//        
+//        view.addSubview(textField)
+//        view.addSubview(speedSlider)
+//        view.addSubview(speedLabel)
+//        view.addSubview(synthButton)
+//        view.addSubview(logView)
+//        
+//        textField.frame = CGRect(x: 20, y: 100, width: view.bounds.width-40, height: 40)
+//        speedLabel.frame = CGRect(x: 20, y: 150, width: 200, height: 30)
+//        speedSlider.frame = CGRect(x: 20, y: 180, width: view.bounds.width-40, height: 40)
+//        synthButton.frame = CGRect(x: 20, y: 240, width: view.bounds.width-40, height: 50)
+//        logView.frame = CGRect(x: 20, y: 300, width: view.bounds.width-40, height: 300)
+//    }
+//    
+//    @objc func speedChanged() {
+//        ttsSpeed = speedSlider.value
+//        speedLabel.text = "语速:\(String(format: "%.1f", ttsSpeed))x"
+//    }
+//    
+//    @objc func starTts() {
+//        guard let text = textField.text, !text.isEmpty else {
+//            appendLog("请输入文本")
+//            return
+//        }
+//        appendLog("开始合成语音...\n")
+//        
+//        // 调用 iOS SDK 的 TTS 接口
+//        TextToSpeechManager.sharedInstance().textToSpeech(
+//            companyId: "2101982539",
+//            text: text,
+//            reqId: UUID().uuidString,
+//            speedRatio: ttsSpeed,
+//            voiceType: "zh_female_qingchezizi_moon_bigtts",
+//            encoding: "pcm",
+//            callback: self
+//        )
+//    }
+//    
+//    func appendLog(_ msg: String) {
+//        DispatchQueue.main.async {
+//            self.logView.text.append(msg)
+//            self.logView.scrollRangeToVisible(NSRange(location: self.logView.text.count, length: 0))
+//        }
+//    }
+//    
+//    func playPCMData(_ pcmData: Data) {
+//        // PCM裸数据要转成wav才能用AVAudioPlayer播放
+//        if let wavData = pcmToWav(pcmData, sampleRate: 16000, channels: 1) {
+//            DispatchQueue.main.async {
+//                do {
+//                    self.audioPlayer = try AVAudioPlayer(data: wavData)
+//                    self.audioPlayer?.play()
+//                    self.appendLog("播放中...\n")
+//                } catch {
+//                    self.appendLog("播放失败:\(error.localizedDescription)\n")
+//                }
+//            }
+//        }
+//    }
+//    
+//    func pcmToWav(_ pcmData: Data, sampleRate: Int, channels: Int) -> Data? {
+//        let byteRate = sampleRate * channels * 2
+//        var header = Data()
+//        header.append("RIFF".data(using: .ascii)!)
+//        header.append(UInt32(pcmData.count + 36).littleEndianData)
+//        header.append("WAVE".data(using: .ascii)!)
+//        
+//        header.append("fmt ".data(using: .ascii)!)
+//        header.append(UInt32(16).littleEndianData)
+//        header.append(UInt16(1).littleEndianData) // PCM
+//        header.append(UInt16(channels).littleEndianData)
+//        header.append(UInt32(sampleRate).littleEndianData)
+//        header.append(UInt32(byteRate).littleEndianData)
+//        header.append(UInt16(channels * 2).littleEndianData)
+//        header.append(UInt16(16).littleEndianData)
+//        
+//        header.append("data".data(using: .ascii)!)
+//        header.append(UInt32(pcmData.count).littleEndianData)
+//        
+//        var wav = Data()
+//        wav.append(header)
+//        wav.append(pcmData)
+//        return wav
+//    }
+//}
+//
+//extension TtsVC: TextToSpeechCallback {
+//    func onResult(_ response: String) {
+//        appendLog("合成完成,开始播放...\n")
+//        guard let jsonObj = try? JSONSerialization.jsonObject(with: response.data(using: .utf8)!, options: []) as? [String:Any],
+//              let respObj = jsonObj["resp"] as? [String:Any],
+//              let base64Data = respObj["data"] as? String,
+//              let pcmBytes = Data(base64Encoded: base64Data) else {
+//            appendLog("解析PCM失败\n")
+//            return
+//        }
+//        playPCMData(pcmBytes)
+//    }
+//    
+//    func onError(_ code: Int, message: String) {
+//        appendLog("合成失败:\(message)\n")
+//    }
+//}
+//
+//// MARK: - Data扩展
+//extension FixedWidthInteger {
+//    var littleEndianData: Data {
+//        withUnsafeBytes(of: self.littleEndian, { Data($0) })
+//    }
+//}
index ac4f380..163005a 100644 (file)
@@ -10,21 +10,16 @@ import CoreBluetooth
 import DeepChordsSdk
 
 class BleManager: NSObject {
+    static let shared = BleManager()
+    var devices: [CBPeripheral] = []
     var discoverDeviceCallback: (([CBPeripheral]) -> Void)?
-    var didConnectDeviceCallback: ((CBPeripheral) -> Void)?
-    var disConnectDeviceCallback: ((CBPeripheral) -> Void)?
-    var conetedFailureCallback: ((CBPeripheral) -> Void)?
-    
     private var centralManager: CBCentralManager!
-    var devices: [CBPeripheral] = []
     
     private override init() {
         super.init()
         centralManager = CBCentralManager(delegate: self, queue: nil)
     }
     
-    static let shared = BleManager()
-
     func stopScanDevice() {
         centralManager.stopScan()
     }
@@ -47,11 +42,6 @@ class BleManager: NSObject {
     func cancel(){
         
     }
-    func autoConnect(){
-//        if let peripheral = centralManager.retrieveConnectedPeripherals(withServices: [CBUUID(string: "AE30")]).first{
-//            connectPeripheral(peripheral)
-//        }
-    }
 }
 extension BleManager:CBCentralManagerDelegate{
     func centralManagerDidUpdateState(_ central: CBCentralManager) {
@@ -75,96 +65,51 @@ extension BleManager:CBCentralManagerDelegate{
             break
         }
     }
-    
+    //广播
     func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber) {
         if devices.contains(peripheral) {
             return
         }
         if let name = peripheral.name,name.hasPrefix("AI") {
-            let mac = BleManager.getMac(advertisementData)
             devices.append(peripheral)
             DCLogger.debug(peripheral)
             discoverDeviceCallback?(devices)
         }
     }
-    
+    //蓝牙连接
     func centralManager(_ central: CBCentralManager, didConnect peripheral: CBPeripheral) {
         stopScanDevice()
-        
         peripheral.delegate = self
         peripheral.discoverServices(nil);
         DCBleManager.shared.centralManager(central, didConnect: peripheral)
-        self.didConnectDeviceCallback?(peripheral)
         App.shared.window?.makeToast("蓝牙已连接")
     }
+    //连接失败
     func centralManager(_ central: CBCentralManager, didFailToConnect peripheral: CBPeripheral, error: Error?) {
 //        DCBleManager.shared.centralManager(central, didFailToConnect: peripheral, error: error)
     }
+    //蓝牙断开
     func centralManager(_ central: CBCentralManager, didDisconnectPeripheral peripheral: CBPeripheral, error: Error?) {
-        disConnectDeviceCallback?(peripheral)
         DCBleManager.shared.centralManager(central, didDisconnectPeripheral: peripheral, error: nil)
         App.shared.window?.makeToast("蓝牙已断开连接")
-        App.shared.window?.rootViewController = UINavigationController(rootViewController: DeviceListVC())
+        App.shared.window?.rootViewController = UINavigationController(rootViewController: ScanVC())
     }
 }
 
 extension BleManager: CBPeripheralDelegate {
+    //发现服务
     func peripheral(_ peripheral: CBPeripheral, didDiscoverServices error: Error?) {
-//        DCBleManager.shared.peripheral(peripheral, didDiscoverServices: error)
         for service in peripheral.services! {
             DCLogger.debug("peripheral service: %@", service)
             peripheral.discoverCharacteristics(nil, for: service)
         }
     }
-    
+    //发现特征
     func peripheral(_ peripheral: CBPeripheral, didDiscoverCharacteristicsFor service: CBService, error: Error?) {
         DCBleManager.shared.peripheral(peripheral, didDiscoverCharacteristicsFor: service, error: error)
     }
-    
-    func peripheral(_ peripheral: CBPeripheral, didUpdateNotificationStateFor characteristic: CBCharacteristic, error: (any Error)?) {
-        DCLogger.debug("状态改变 == UUID ",characteristic.uuid)
-    }
-    
+    //收到数据
     func peripheral(_ peripheral: CBPeripheral, didUpdateValueFor characteristic: CBCharacteristic, error: Error?) {
         DCBleManager.shared.peripheral(peripheral, didUpdateValueFor: characteristic, error: error)
-
-    }
-    
-    func peripheral(_ peripheral: CBPeripheral, didModifyServices invalidatedServices: [CBService]) {
-        // Accessory's GATT database has updated. Refresh your local cache (if any)
-    }
-    
-    func peripheral(_ peripheral: CBPeripheral, didWriteValueFor characteristic: CBCharacteristic, error: (any Error)?) {
-        
-    }
-}
-
-
-extension BleManager{
-    static func getMac(_ dict:[String:Any])->String?{
-        DCLogger.debug(dict)
-        if let advMsd = dict[CBAdvertisementDataManufacturerDataKey] as? Data {
-            if (advMsd.count >= 6) {
-                let mac = advMsd;
-                let text = mac.map { String($0, radix: 16).padLeft(toLength: 2, withPad: "0") }.joined(separator: ":").uppercased()
-                
-                DCLogger.debug(advMsd)
-                DCLogger.debug(mac)
-                DCLogger.debug(text)
-                return text
-            } else {
-                return nil
-            }
-        } else {
-            return nil
-        }
-    }
-    
-}
-extension String {
-    var data: Data? { self.data(using: .utf8) }
-    func padLeft(toLength: Int, withPad pad: String) -> String {
-        let paddingCount = max(0, toLength - self.count)
-        return String(repeating: pad, count: paddingCount) + self
     }
 }
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/CallRecordManager.swift b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/CallRecordManager.swift
new file mode 100644 (file)
index 0000000..44f6b82
--- /dev/null
@@ -0,0 +1,85 @@
+//
+//  CallRecordManager.swift
+//  Example
+//
+//  Created by liangshi on 2026/1/16.
+//
+
+import DeepChordsSdk
+
+class CallRecordManager:NSObject{
+    static let shared = CallRecordManager()
+    var isRecording = false
+    
+    var recordFinish:((String)->Void)?
+    var stereoNeedReloadData:((String,Int)->Void)?
+    var selfText = ""
+    var otherText = ""
+    /// 状态码回调
+    public var codeCallback:((Int)->Void)?
+    public var callRecordNotOnCall:(()->Void)?
+    
+    
+    override init() {
+        super.init()
+        setupSdk()
+    }
+    func setupSdk(){
+        // 识别回调(自己)
+        DCCallRecord.shared.asrCallback = { [weak self] text in
+            guard let self = self else{return}
+            selfText = text
+            stereoNeedReloadData?(text,1)
+        }
+        // 识别回调(对话)
+        DCCallRecord.shared.asrOtherCallback = { [weak self] text in
+            guard let self = self else{return}
+            otherText = text
+            stereoNeedReloadData?(text,2)
+        }
+        //状态码回调
+        DCCallRecord.shared.codeCallback = { [weak self] code in
+            guard let self = self else{return}
+            codeCallback?(code)
+        }
+        //opus回调,需要解码后将数据传回给sdk
+        DCCallRecord.shared.opusCallBack = { data in
+            //将数据传给opus解码类解码
+            OpusTools.shared.inputData(data)
+        }
+        //结束录音
+        DCCallRecord.shared.filePathCallBack = { [weak self] path in
+            guard let self = self else{return}
+            DCLogger.debug("文件路径opus ==",path)
+            
+//            OpusTools.opusSteroTowav(path ) {[weak self] wavPath in
+//                self?.recordFinish?(wavPath ?? "")
+//            }
+            isRecording = false
+        }
+        //opus解码后将数据传回给sdk
+        OpusTools.shared.output = { data in
+            DCCallRecord.shared.inputPcm(data: data)
+        }
+    }
+    func setRecordLanage(_ language:CCAiLanguage){
+        DCCallRecord.shared.fromLanguage = language.value
+    }
+    func recordStart(){
+        isRecording = true
+        selfText = ""
+        otherText = ""
+        setupSdk()
+        if !DcCall.shared.isInCall {
+            DCLogger.debug("不在通话状态")
+            callRecordNotOnCall?()
+            return
+        }
+        DCLogger.debug("开启通话录音")
+        DCCallRecord.shared.start()
+    }
+    func recordStop(){
+        isRecording = false
+        DCCallRecord.shared.stop()
+    }
+}
@@ -1,23 +1,11 @@
 //
-//  DcChatManager.swift
+//  ChatManager.swift
 //  Example
 //
 //  Created by liangshi on 2025/12/15.
 //
 import AVFoundation
 import DeepChordsSdk
-//typedef NS_OPTIONS(NSInteger,StarburstCode) {
-//    StarburstCode_Start_Record = 20001,///开始录音
-//    StarburstCode_Stop_Record = 20002,///停止录音
-//    StarburstCode_Record_Error = 20003,///录音出错
-//    StarburstCode_Ble_Disconected = 20004,///蓝牙断开
-//    StarburstCode_Websocket_Connected = 30001,///socket连上
-//    StarburstCode_Websocket_Disconnected = 30002,///socket断开连接
-//    StarburstCode_Websocket_Connecting = 30003,///socket连接中...
-//    StarburstCode_Websocket_pingTimeOut = 30004,///ping超时
-//    StarburstCode_Net_Error = 50000,///网络错误
-//    StarburstCode_UnAuth = 60000,///未鉴权
-//};
 
 /// Ai回应模型
 public class ChatCellModel:NSObject,NSCoding  {
@@ -41,10 +29,9 @@ public class ChatCellModel:NSObject,NSCoding  {
 }
 
 
-class DcChatManager:NSObject{
-    static let shared = DcChatManager()
+class ChatManager:NSObject{
+    static let shared = ChatManager()
     private var isTtsPlaying = false
-    private var audioData: Data?
     
     public var dataList:[ChatCellModel] = []
     public var chatNeedReloadData:(()->Void)?
@@ -65,6 +52,8 @@ class DcChatManager:NSObject{
     public func startChat(){
         DCChat.shared.startChat()
     }
+    
+    /// 获取音色
     public func getVcSpeekerList(finished:@escaping ([DCRole]?,Bool)->Void){
         DCChat.shared.getVcSpeekerList(finished: finished)
     }
@@ -84,7 +73,9 @@ class DcChatManager:NSObject{
     
     func setupChat(){
         preparePlay()
+        //设置音色
         DCChat.shared.role = role
+        //识别回调
         DCChat.shared.asrCallback = {[weak self] (text,index) in
             guard let self = self else{return}
             if let model = dataList.last,model.id == index,model.type == 1 {
@@ -99,6 +90,7 @@ class DcChatManager:NSObject{
             }
             chatNeedReloadData?()
         }
+        //响应回调
         DCChat.shared.responseCallback = { [weak self] (text,index) in
             guard let self = self else{return}
             if let model = dataList.last,model.id == index,model.type == 2 {
@@ -113,17 +105,28 @@ class DcChatManager:NSObject{
             }
             chatNeedReloadData?()
         }
-        DCChat.shared.dataCallback = {[weak self] (dialogId, data, finish,sampleRate) in
+        //语音回复回调
+        DCChat.shared.responseDataCallback = {[weak self] (dialogId, data, finish,sampleRate) in
             PcmSound.sharedInstance().delegate = self
             guard let self = self else { return  }
-                        if (!isTtsPlaying) {
-                            isTtsPlaying = true
-                            DCLogger.debug("开始播放")
-                            DCChat.shared.startPlayTtsAudio()
-                        }
-                        DCLogger.debug("收到音频数据", data?.count ?? 0,sampleRate)
-                        PcmSound.sharedInstance().feed(data)
+            if (!isTtsPlaying) {
+                isTtsPlaying = true
+                DCLogger.debug("开始播放")
+                DCChat.shared.startPlayTtsAudio()
+            }
+            PcmSound.sharedInstance().feed(data)
         }
+        //状态码回调
+        //20001,///开始录音
+        //20002,///停止录音
+        //20003,///录音出错
+        //20004,///蓝牙断开
+        //30001,///socket连上
+        //30002,///socket断开连接
+        //30003,///socket连接中...
+        //30004,///ping超时
+        //50000,///网络错误
+        //60000,///未鉴权
         DCChat.shared.codeCallback = {[weak self] code in
             guard let self = self else { return  }
             self.codeCallback?(code)
@@ -131,19 +134,11 @@ class DcChatManager:NSObject{
             if code == 20001 {
                 if (self.isTtsPlaying) {
                     self.isTtsPlaying = false
-                    PcmSound.sharedInstance().cleanup()
-                    PcmSound.sharedInstance().setup(16000, withchannels: 1)
-
-                    let options: AVAudioSession.CategoryOptions = [.allowBluetooth]
-                    do {
-                        try AVAudioSession.sharedInstance().setCategory(.playback, options: [options])
-                        try AVAudioSession.sharedInstance().setActive(true)
-                    } catch {
-                        DCLogger.debug(error)
-                    }
+                    preparePlay()
                 }
             }
         }
+        //结束对话回调
         DCChat.shared.finishCallback = {[weak self] path in
             self?.preparePlay()
             self?.finishCallback?(path)
@@ -151,7 +146,7 @@ class DcChatManager:NSObject{
         
     }
 }
-extension DcChatManager : PcmSoundDelegate {
+extension ChatManager : PcmSoundDelegate {
     func remaining(_ frames: UInt) {
         DCLogger.debug("[frame:\(frames)]");
         if (frames == 0) {
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/DcCall.swift b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/DcCall.swift
new file mode 100644 (file)
index 0000000..aa7b4c1
--- /dev/null
@@ -0,0 +1,58 @@
+//
+//  Untitled.swift
+//  Example
+//
+//  Created by liangshi on 2026/1/16.
+//
+
+import CallKit
+import CoreTelephony
+
+class DcCall: NSObject, CXCallObserverDelegate {
+    static let shared = DcCall()
+    
+    let callObserver = CXCallObserver()
+    var isInCall = false
+    
+    override init() {
+        super.init()
+        checkInitialCallState()
+        start()
+    }
+    
+    func start() {
+        callObserver.setDelegate(self, queue: nil)
+    }
+    
+    func callObserver(_ callObserver: CXCallObserver, callChanged call: CXCall) {
+        if call.hasEnded {
+            print("通话结束")
+            isInCall = false
+            if CallRecordManager.shared.isRecording{
+                CallRecordManager.shared.recordStop()
+            }
+        } else if call.isOnHold {
+            print("通话保持中")
+            isInCall = true
+        } else if call.isOutgoing {
+            print("拨出电话")
+            isInCall = true
+        } else if call.hasConnected {
+            print("通话已接通")
+            isInCall = true
+        }
+    }
+    
+    private func checkInitialCallState() {
+        let callCenter = CTCallCenter()
+        if let calls = callCenter.currentCalls {
+            for call in calls {
+                if call.callState == CTCallStateDialing || call.callState == CTCallStateIncoming || call.callState == CTCallStateConnected {
+                    print("正在听话。。。")
+                    isInCall = true
+                    return
+                }
+            }
+        }
+    }
+}
index 035da1a..fb0471b 100644 (file)
@@ -4,47 +4,54 @@
 //
 //  Created by liangshi on 2025/12/19.
 //
+
+
+//20001,///开始录音
+//20002,///停止录音
+//20003,///录音出错
+//20004,///蓝牙断开
+//30001,///socket连上
+//30002,///socket断开连接
+//30003,///socket连接中...
+//30004,///ping超时
+//50000,///网络错误
+//60000,///未鉴权
+///
 import DeepChordsSdk
 
 class DcSdkManager{
     static let shared = DcSdkManager()
     
-    
     func initSdk(){
+        //初始化
         DCSdk.shared.initSDK()
-        DcChatManager.shared.setupChat()
-        
+        // 打开调试日志
+        DCLogger.isDebug = true
+        //ai事件回调。0x01(打开AI对话), 0x02(关闭AI对话), 0x03(打开耳机录音), 0x04(关闭耳机录音)
         DCDevice.shared.eventCallback = { event in
             switch event {
             case 0x01:
-                if let vc = App.shared.topVC() as? ChatVC {
-                    //                    vc.startRecord()
+                if App.shared.topVC() is ChatVC {
+                    //vc.startRecord()
                 }else{
                     App.shared.goToPage(ChatVC())
                 }
             case 0x02:
-//                if let vc = App.shared.topVC() as? ChatVC {
-//                    //                    vc.startRecord()
-//                }else{
-//                    App.shared.goToPage(ChatVC())
-//                }
                 break
             case 0x03:
-                if let vc = App.shared.topVC() as? EarPhoneRecordVC {
+                if App.shared.topVC() is BleRecordVC {
                     //                    vc.startRecord()
                 }else{
-                    App.shared.goToPage(EarPhoneRecordVC())
+                    App.shared.goToPage(BleRecordVC())
                 }
             case 0x04:
-//                if let vc = App.shared.topVC() as? EarPhoneRecordVC {
-//                    //                    vc.startRecord()
-//                }else{
-//                    App.shared.goToPage(EarPhoneRecordVC())
-//                }
                 break
             default:
                 break
             }
         }
+        
+        //设置对话
+        ChatManager.shared.setupChat()
     }
 }
diff --git a/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/OpusTools.swift b/DeepChordsSdk_iOS/DeepChordsSdk/Example/Example/tools/OpusTools.swift
new file mode 100644 (file)
index 0000000..95c40ed
--- /dev/null
@@ -0,0 +1,109 @@
+//
+//  OpusTools.swift
+//  JLAudioUnitKitDemo
+//
+//  Created by liangshi on 2026/1/5.
+//
+import JLAudioUnitKit
+
+class OpusTools:NSObject, JLOpusDecoderDelegate {
+    static let shared = OpusTools()
+    private var opusDecoder:JLOpusDecoder!
+    private var format = JLOpusFormat.defaultFormats()
+    
+    var output:((Data)->Void)?
+    
+    override init(){
+        super.init()
+        format.sampleRate = 16000
+        format.hasDataHeader = false
+        format.channels = 2
+        format.dataSize = 80
+        self.opusDecoder = JLOpusDecoder(decoder: format, delegate: self)
+        
+//        opusDecoder.resetOpusFramet(format)
+    }
+    
+    func inputData(_ data:Data){
+        self.opusDecoder.opusDecoderInputData(data)
+        
+    }
+    
+    func opusDecoder(_ decoder: JLOpusDecoder, data: Data?, error: (any Error)?) {
+        if let data = data{
+            output?(data)
+        }
+    }
+}
+
+
+//extension OpusTools{
+//    static func pcmTowav(_ data:Data)->String?{
+//        do{
+//            let path = DCFolder.cacheDirectory() + "/\(Date().timeIntervalSince1970).wav"
+//            try JLPcmToWav.convertPCMData(data, toWAVFile: path, sampleRate: 16000, numChannels: 2, bitsPerSample: 16)
+//            return path
+//        }
+//        catch{
+//            return nil
+//        }
+//    }
+//    
+//    static func opusSteroTowav(_ opusPath:String,finished:@escaping ((String?)->Void)){
+//        let format = JLOpusFormat.defaultFormats()
+//        format.sampleRate = 16000
+//        format.hasDataHeader = false
+//        format.channels = 2
+//        format.dataSize = 80
+//        let pcmPath = DCFolder.cacheDirectory() + "/\(Int(Date().timeIntervalSince1970*10000)).pcm"
+//        DCLogger.debug(pcmPath)
+//        
+//        let opusDecoder = JLOpusDecoder(decoder: format, delegate: OpusTools())
+//        opusDecoder.opusDecodeFile(opusPath, outPut: pcmPath) {  pcmPath,err in
+//            if err == nil,let path = pcmPath{
+//                let wav = pcmTowav(path,sampleRate: 16000,channels: 2)
+//                finished(wav)
+//            }
+//            else{
+//                finished(nil)
+//            }
+//        }
+//        return finished(nil)
+//    }
+//    static func opusTowav(_ opusPath:String,finished:@escaping ((String?)->Void)){
+//        let format = JLOpusFormat.defaultFormats()
+//        format.sampleRate = 16000
+//        format.hasDataHeader = false
+//        format.channels = 1
+//        format.dataSize = 40
+//        let pcmPath = DCFolder.cacheDirectory() + "/\(Int(Date().timeIntervalSince1970*10000)).pcm"
+//        DCLogger.debug(pcmPath)
+//        
+//        let opusDecoder = JLOpusDecoder(decoder: format, delegate: OpusTools())
+//        opusDecoder.opusDecodeFile(opusPath, outPut: pcmPath) {  pcmPath,err in
+//            if err == nil,let path = pcmPath{
+//                let wav = pcmTowav(path,sampleRate: 16000,channels: 1)
+//                finished(wav)
+//            }
+//            else{
+//                finished(nil)
+//            }
+//        }
+//        return finished(nil)
+//    }
+//    
+//    static func pcmTowav(_ pcmPath:String,sampleRate:UInt32,channels:UInt16)->String?{
+//        if let data = NSData(contentsOfFile: pcmPath) as? Data {
+//            do{
+//                let path = DCFolder.record + "\(Int(Date().timeIntervalSince1970*10000)).wav"
+//                DCLogger.debug(path)
+//                try JLPcmToWav.convertPCMData(data, toWAVFile: path, sampleRate: sampleRate, numChannels: channels, bitsPerSample: 16)
+//                return path
+//            }
+//            catch{
+//                return nil
+//            }
+//        }
+//        return nil
+//    }
+//}
diff --git a/DeepChordsSdk_iOS/document/DeepChordsSdk_iOS技术文档.pdf b/DeepChordsSdk_iOS/document/DeepChordsSdk_iOS技术文档.pdf
new file mode 100644 (file)
index 0000000..cd9a3b2
Binary files /dev/null and "b/DeepChordsSdk_iOS/document/DeepChordsSdk_iOS\346\212\200\346\234\257\346\226\207\346\241\243.pdf" differ
index fbf60a6..1005175 100644 (file)
@@ -65,12 +65,12 @@ class BleSender{
     }
 }
 
-public typealias DCCompletionHandler = (_ result: DCResponse) -> Void
+ typealias DCCompletionHandler = (_ result: DCDeviceResponse) -> Void
 
 /// 状态码
-public enum DCCode: Int,CustomStringConvertible {
+ enum DCCode: Int,CustomStringConvertible {
     
-    public var description: String{
+     var description: String{
         return "MSCode(rawValue:\(rawValue), message:\(message))"
     }
     
@@ -97,10 +97,10 @@ public enum DCCode: Int,CustomStringConvertible {
     }
 }
 
-public class DCResponse {
-    public private(set) var code: DCCode = .success
-    public private(set) var data: Data = Data()
-    static var response: DCResponse { DCResponse() }
+ class DCDeviceResponse {
+     private(set) var code: DCCode = .success
+     private(set) var data: Data = Data()
+    static var response: DCDeviceResponse { DCDeviceResponse() }
     
     
     var isSuccess:Bool{
index 38d2d81..f648820 100644 (file)
@@ -7,6 +7,17 @@
 
 import StarburstSdk
 
+//20001,///开始录音
+//20002,///停止录音
+//20003,///录音出错
+//20004,///蓝牙断开
+//30001,///socket连上
+//30002,///socket断开连接
+//30003,///socket连接中...
+//30004,///ping超时
+//50000,///网络错误
+//60000,///未鉴权
+
 /// 蓝牙录音管理类
 public class DCBleRecord {
     public static let shared = DCBleRecord()
@@ -19,23 +30,21 @@ public class DCBleRecord {
     /// 是否进⾏Tts,默认false
     public var isTTs = false
     /// 默认pcm ⽀持pcm / ogg_opus / mp3
-    public var ttsFormat = "mp3"
-    /// 识别回调
+    public var ttsFormat = "pcm"
+    /// 识别回调(累加)
     public var asrCallback:((String)->Void)?
-    /// 识别回调
+    /// 翻译回调(累加)
     public var translateCallback:((String)->Void)?
-    /// 识别回调
-    public var asrSplitCallback:((DCResponseModel)->Void)?
-    /// 识别回调
-    public var translateSplitCallback:((DCResponseModel)->Void)?
+    /// 识别回调(不累加)
+    public var asrSplitCallback:((DCAsrModel)->Void)?
+    /// 翻译回调(不累加)
+    public var translateSplitCallback:((DCAsrModel)->Void)?
     /// 翻译语音回调
     public var translateDataCallback:((Data)->Void)?
     /// 状态码回调
     public var codeCallback:((Int)->Void)?
-    /// 录音文件回调
+    /// 结束录音文件回调
     public var filePathCallBack:((String?)->Void)?
-    /// 设置录音文件路径
-    public var filePath:String?
     
     var asrList : [(String,Int)] = []
     var asrText = ""
@@ -59,7 +68,7 @@ public class DCBleRecord {
         config.isTTs = isTTs
         config.ttsFormat = ttsFormat
         
-        StarburstSdk.shared().setupDeviceRecord(with: filePath, asrConfig: config) { config in
+        StarburstSdk.shared().setupDeviceRecord(with: nil, asrConfig: config) { config in
             DCLogger.debug("录音类型 \(config!.type == 0x00 ? "实时录音" : "通话录音")")
         } recognizeText: { [weak self]  model in
             guard let self = self else {return}
@@ -67,7 +76,7 @@ public class DCBleRecord {
             
             if let text = model.textResult,!text.isEmpty{
                 DCLogger.debug("asr = \(text)")
-                asrSplitCallback?(DCResponseModel(text: text, index: model.definiteIndex, definite: model.definite))
+                asrSplitCallback?(DCAsrModel(text: text, index: model.definiteIndex, definite: model.definite))
                 let msg = asrList.firstIndex (where: { (str,idx) in
                     return idx == model.definiteIndex;
                 })
@@ -84,7 +93,7 @@ public class DCBleRecord {
             }
             if let translate = model.translateResult,let text = translate.text,!text.isEmpty{
                 DCLogger.debug("translate = \(text)")
-                translateSplitCallback?(DCResponseModel(text: text, index: Int(translate.definiteIndex), definite: translate.definite))
+                translateSplitCallback?(DCAsrModel(text: text, index: Int(translate.definiteIndex), definite: translate.definite))
                 let msg = translateList.firstIndex (where: { (str,idx) in
                     return idx == translate.definiteIndex;
                 })
@@ -113,19 +122,19 @@ public class DCBleRecord {
         }
     }
     
-    /// 0x00实时录音,0x0c通话录音
-    public func start(type:Int,recordPath:String?){
+    /// 开始
+    public func start(){
             asrList = []
             asrText = ""
             
             translateList = []
             translateText = ""
-            filePath = recordPath
-        DCLogger.debug("设置地址 \(filePath ?? "")")
+//            filePath = recordPath
+//        DCLogger.debug("设置地址 \(filePath ?? "")")
         
         setupRecord()
         let config = StarburstBleAsrConfig()
-        config.type = type
+        config.type = 0x00 // 0x00实时录音,0x0c通话录音
         StarburstSdk.shared().startDeviceRecord(config)
     }
     
index 2bd9ad8..f3a5a90 100644 (file)
@@ -19,7 +19,7 @@ public class DCCallRecord {
     /// 是否进⾏Tts,默认false
     public var isTTs = false
     /// 默认pcm ⽀持pcm / ogg_opus / mp3
-    public var ttsFormat = "mp3"
+    public var ttsFormat = "pcm"
     /// 识别回调
     public var asrCallback:((String)->Void)?
     /// 对方识别回调
index 65b5732..3bdd384 100644 (file)
@@ -40,7 +40,7 @@ public class DCChat{
     /// 回复回调
     public var responseCallback:((String,Int)->Void)?
     /// 对话语音回调
-    public var dataCallback:((Int,Data?,Bool,Int)->Void)?
+    public var responseDataCallback:((Int,Data?,Bool,Int)->Void)?
     /// 状态码回调
     public var codeCallback:((Int)->Void)?
     /// 结束对话回调
@@ -116,7 +116,7 @@ extension DCChat{
         } responseVoice: { [weak self] (dialogId,data, finish,sampleRate)  in
             guard let self = self else { return }
             self.dialogId = dialogId
-            dataCallback?(dialogId,data,finish,sampleRate)
+            responseDataCallback?(dialogId,data,finish,sampleRate)
         } stateChange: {[weak self] code in
             DCLogger.debug("状态改变 \(code)")
             self?.codeCallback?(code.rawValue)
index eb6cc0c..509914e 100644 (file)
@@ -31,7 +31,7 @@ public class DCDevice{
      
      /// 握手
      /// - Parameter finished: 握手回调
-     public func handShake(finished:@escaping ((Bool)?)->Void){
+      func handShake(finished:@escaping ((Bool)?)->Void){
          var head: UInt8 = 0xBA
          var cmd: UInt8 = 0x11
          var data:UInt8 = 0x00
index 1bd85cb..e0078b6 100644 (file)
@@ -6,7 +6,15 @@
 //
 import StarburstSdk
 
+/// 文本操作类
 public class DCText{
+    
+    /// 文本翻译
+    /// - Parameters:
+    ///   - text: 要翻译的文本
+    ///   - from: 源语言
+    ///   - to: 目标语言
+    ///   - finished: 结果回调
     public static func translate(text:String,from:String,to:String,finished:@escaping ((stream:String,finish:Bool)?)->Void){
         let con = StarburstTslConfig()
         con.fromLanguage = from
@@ -20,6 +28,11 @@ public class DCText{
         }
         
     }
+    
+    /// 文本摘要
+    /// - Parameters:
+    ///   - text: 文本
+    ///   - finished: 结果回调,是流式返回,会回调多次
     public static func sumary(text:String,finished:@escaping ((stream:String,finish:Bool)?)->Void){
         StarburstSdk.shared().summaryByText(withSplit: text) { model in
             guard let model = model else{return}
@@ -28,12 +41,20 @@ public class DCText{
             finished(nil)
         }
     }
+    
+    /// 取消文本翻译
     public static func cancelTranslateByTextWithSplit(){
         StarburstSdk.shared().cancelTranslateByTextWithSplit()
     }
+    
+    /// 取消文本摘要
     public static func cancelSummaryByTextWithSplit(){
         StarburstSdk.shared().cancelSummaryByTextWithSplit()
     }
+    
+    
+    /// 获取设备名称在字节服务器上的名称
+    /// - Returns:成功则返回名字,否则返回nil
     public static func getDeviceName()->String?{
         let dn = StarburstSdk.shared().getDeviceName()
         return dn
index 2a165ce..ab7d462 100644 (file)
@@ -9,7 +9,7 @@ import StarburstSdk
 
 
 /// 响应模型
-public class DCResponseModel {
+public class DCAsrModel {
     /// 文本
     public var text:String = ""
     
@@ -39,9 +39,9 @@ public class DCZh2En {
     /// 默认pcm ⽀持pcm / ogg_opus / mp3
     public var ttsFormat = "pcm"
     /// 识别回调
-    public var asrCallback:((DCResponseModel)->Void)?
+    public var asrCallback:((DCAsrModel)->Void)?
     /// 翻译回调
-    public var translateCallback:((DCResponseModel)->Void)?
+    public var translateCallback:((DCAsrModel)->Void)?
     /// 翻译语音回调
     public var translateDataCallback:((Data)->Void)?
     /// 状态码回调
@@ -80,11 +80,11 @@ public class DCZh2En {
             
             if let text = model.textResult,!text.isEmpty{
 //                DCLogger.debug("asr = \(text)")
-                asrCallback?(DCResponseModel(text: text, index: model.definiteIndex, definite: model.definite))
+                asrCallback?(DCAsrModel(text: text, index: model.definiteIndex, definite: model.definite))
             }
             if let translate = model.translateResult,let text = translate.text,!text.isEmpty{
 //                DCLogger.debug("translate = \(text)")
-                translateCallback?(DCResponseModel(text: text, index: Int(translate.definiteIndex), definite: translate.definite))
+                translateCallback?(DCAsrModel(text: text, index: Int(translate.definiteIndex), definite: translate.definite))
             }
             if let ttsData = model.ttsResult?.streamPiece {
                 if let data = Data(base64Encoded: ttsData){
index ad5e4c4..1929299 100644 (file)
@@ -87,7 +87,7 @@ class DcChatManager:NSObject{
             }
             chatNeedReloadData?()
         }
-        DCChat.shared.dataCallback = {[weak self] (dialogId, data, finish,sampleRate) in
+        DCChat.shared.responseDataCallback = {[weak self] (dialogId, data, finish,sampleRate) in
             PcmSound.sharedInstance().delegate = self
             guard let self = self else { return  }
                         if (!isTtsPlaying) {
index 1883ede..8ca860a 100644 (file)
@@ -1,64 +1,64 @@
+////
+////  DcThly.swift
+////  ShenYin
+////
+////  Created by liangshi on 2025/12/29.
+////
 //
-//  DcThly.swift
-//  ShenYin
+//import UIKit
+//import DeepChordsSdk
 //
-//  Created by liangshi on 2025/12/29.
-//
-
-import UIKit
-import DeepChordsSdk
-
-class DcThly:NSObject{
-    static let shared = DcThly()
-    
-    var recordFinish:((String)->Void)?
-    var recordNeedReloadData:((String)->Void)?
-    var recordList : [(String,UInt)] = []
-    var recordText = ""
-    /// 状态码回调
-    public var codeCallback:((Int)->Void)?
-    public var callRecordNotOnCall:(()->Void)?
-    
-    
-    override init() {
-        super.init()
-        setupSdk()
-    }
-    func setupSdk(){
-        DCBleRecord.shared.asrCallback = { [weak self] text in
-            guard let self = self else{return}
-            recordText = text
-            recordNeedReloadData?(text)
-        }
-        DCBleRecord.shared.codeCallback = { [weak self] code in
-            guard let self = self else{return}
-            codeCallback?(code)
-        }
-        DCBleRecord.shared.filePathCallBack = { [weak self] path in
-            guard let self = self else{return}
-            if recordText.isEmpty{
-                return
-            }
-            OpusTools.opusTowav(path ?? "") {[weak self] wavPath in
-                self?.recordFinish?(wavPath ?? "")
-            }
-        }
-    }
-    func setRecordLanage(_ language:CCAiLanguage){
-        DCBleRecord.shared.fromLanguage = language.value
-    }
-    func recordStart(){
-        recordList.removeAll()
-        recordText = ""
-        setupSdk()
-        if !DcCall.shared.isInCall {
-            callRecordNotOnCall?()
-            return
-        }
-        Logger.debug("开启通话录音")
-        DCBleRecord.shared.start(type: 0x00, recordPath: nil )
-    }
-    func recordStop(){
-        DCBleRecord.shared.stop()
-    }
-}
+//class DcThly:NSObject{
+//    static let shared = DcThly()
+//    
+//    var recordFinish:((String)->Void)?
+//    var recordNeedReloadData:((String)->Void)?
+//    var recordList : [(String,UInt)] = []
+//    var recordText = ""
+//    /// 状态码回调
+//    public var codeCallback:((Int)->Void)?
+//    public var callRecordNotOnCall:(()->Void)?
+//    
+//    
+//    override init() {
+//        super.init()
+//        setupSdk()
+//    }
+//    func setupSdk(){
+//        DCBleRecord.shared.asrCallback = { [weak self] text in
+//            guard let self = self else{return}
+//            recordText = text
+//            recordNeedReloadData?(text)
+//        }
+//        DCBleRecord.shared.codeCallback = { [weak self] code in
+//            guard let self = self else{return}
+//            codeCallback?(code)
+//        }
+//        DCBleRecord.shared.filePathCallBack = { [weak self] path in
+//            guard let self = self else{return}
+//            if recordText.isEmpty{
+//                return
+//            }
+//            OpusTools.opusTowav(path ?? "") {[weak self] wavPath in
+//                self?.recordFinish?(wavPath ?? "")
+//            }
+//        }
+//    }
+//    func setRecordLanage(_ language:CCAiLanguage){
+//        DCBleRecord.shared.fromLanguage = language.value
+//    }
+//    func recordStart(){
+//        recordList.removeAll()
+//        recordText = ""
+//        setupSdk()
+//        if !DcCall.shared.isInCall {
+//            callRecordNotOnCall?()
+//            return
+//        }
+//        Logger.debug("开启通话录音")
+//        DCBleRecord.shared.start(type: 0x00, recordPath: nil )
+//    }
+//    func recordStop(){
+//        DCBleRecord.shared.stop()
+//    }
+//}
index f8391d4..5d8badf 100644 (file)
@@ -60,12 +60,12 @@ class DcXcly:NSObject{
         setupSdk()
         lastPath = nil
         isPause = false
-        DCBleRecord.shared.start(type: 0x00, recordPath: nil )
+        DCBleRecord.shared.start( )
     }
     func recordResume(){
         isPause = false
         pausText = recordText
-        DCBleRecord.shared.start(type: 0x00, recordPath: nil )
+        DCBleRecord.shared.start()
     }
     func recordPause(){
         isPause = true
index 3c0a400..42da6aa 100644 (file)
-
 //
-//  DcCallingRecordVC.swift
-//  ShenYin
+////
+////  DcCallingRecordVC.swift
+////  ShenYin
+////
+////  Created by liangshi on 2025/8/6.
+////
 //
-//  Created by liangshi on 2025/8/6.
-//
-
-import UIKit
-import AVFAudio
-class DcCallingRecordVC:BaseVC{
-    let toolBar = FieldRecordBar()
-    let textView = UITextView()
-    let rhythView = RhythView()
-    
-    var autoStart = false
-    var needSave = true
-    var bgEnter = false//是否是APP在后台进入这个页面的
-    
-    init(autoStart :Bool = false) {
-        self.autoStart = autoStart
-        super.init()
-        bgEnter = App.shared.isInBackground
-        setupSdk()
-    }
-    
-    override func viewDidLoad() {
-        super.viewDidLoad()
-    }
-    override func setupViews() {
-        navBar.title = "通话录音".l10n
-        navBar.backgroundColor = .white
-        
-        toolBar.do { v in
-            v.delegate = self
-            v.hasRightItem = false
-            v.leftItem.language = AiLanguageCache.get(type: .thly) ?? .chinse
-        }
-        
-        view.backgroundColor = .white
-        
-        textView.do { v in
-            v.backgroundColor = .white
-            v.isEditable = false
-            v.font = .regular(14)
-            v.text = ""
-            v.textColor = .color(.first)
-            v.contentInset = UIEdgeInsets(top: 0, left: 18, bottom: 0, right: 18)
-        }
-        view.addSubviews([rhythView,textView,toolBar])
-        
-    }
-    override func setupLayout() {
-        rhythView.snp.makeConstraints { make in
-            make.width.centerX.equalToSuperview()
-            make.top.equalToSuperview().inset(kNavBtm)
-            make.height.equalTo(110)
-        }
-        toolBar.snp.makeConstraints { make in
-            make.width.centerX.equalToSuperview()
-            make.height.equalTo(120)
-            make.bottom.equalToSuperview().inset(20)
-        }
-        textView.snp.makeConstraints { make in
-            make.top.equalTo(rhythView.snp.bottom)
-            make.left.right.equalToSuperview()
-            make.bottom.equalTo(toolBar.snp.top)
-        }
-    }
-    override func setupData() {
-        if bgEnter {
-            textView.text = DcThly.shared.recordText
-        }
-    }
-    func setupSdk(){
-        DcThly.shared.recordFinish = {[weak self] path in
-            guard let self = self else { return  }
-            if !needSave {
-                return
-            }
-            let v = PopTextField()
-            v.show()
-            v.cancelTap = {
-                App.shared.popPage()
-            }
-            v.okTap = { [weak self]  text in
-                guard let self = self else{return}
-                
-                let model = RecordDetailModel()
-                model.type = .phone
-                model.from = toolBar.leftItem.language
-                model.to = .english
-                model.name = text
-                model.path = path
-                model.duration = YLToos.getDuration(model.path)
-                model.origin = textView.text
-                model.translate = ""
-                App.shared.popPage(animated: false)
-                App.shared.goToPage(RecordDetailVC(record: model))
-            }
-        }
-        DcThly.shared.recordNeedReloadData = {[weak self] text in
-            guard let self = self else { return  }
-            textView.text = text
-            
-            let range = NSMakeRange(textView.text.count - 1, 1)
-            textView.scrollRangeToVisible(range)
-        }
-        //需要完善
-//        DcThly.shared.callRecordAutoFinish = {[weak self]  in
+//import UIKit
+//import AVFAudio
+//class DcCallingRecordVC:BaseVC{
+//    let toolBar = FieldRecordBar()
+//    let textView = UITextView()
+//    let rhythView = RhythView()
+//    
+//    var autoStart = false
+//    var needSave = true
+//    var bgEnter = false//是否是APP在后台进入这个页面的
+//    
+//    init(autoStart :Bool = false) {
+//        self.autoStart = autoStart
+//        super.init()
+//        bgEnter = App.shared.isInBackground
+//        setupSdk()
+//    }
+//    
+//    override func viewDidLoad() {
+//        super.viewDidLoad()
+//    }
+//    override func setupViews() {
+//        navBar.title = "通话录音".l10n
+//        navBar.backgroundColor = .white
+//        
+//        toolBar.do { v in
+//            v.delegate = self
+//            v.hasRightItem = false
+//            v.leftItem.language = AiLanguageCache.get(type: .thly) ?? .chinse
+//        }
+//        
+//        view.backgroundColor = .white
+//        
+//        textView.do { v in
+//            v.backgroundColor = .white
+//            v.isEditable = false
+//            v.font = .regular(14)
+//            v.text = ""
+//            v.textColor = .color(.first)
+//            v.contentInset = UIEdgeInsets(top: 0, left: 18, bottom: 0, right: 18)
+//        }
+//        view.addSubviews([rhythView,textView,toolBar])
+//        
+//    }
+//    override func setupLayout() {
+//        rhythView.snp.makeConstraints { make in
+//            make.width.centerX.equalToSuperview()
+//            make.top.equalToSuperview().inset(kNavBtm)
+//            make.height.equalTo(110)
+//        }
+//        toolBar.snp.makeConstraints { make in
+//            make.width.centerX.equalToSuperview()
+//            make.height.equalTo(120)
+//            make.bottom.equalToSuperview().inset(20)
+//        }
+//        textView.snp.makeConstraints { make in
+//            make.top.equalTo(rhythView.snp.bottom)
+//            make.left.right.equalToSuperview()
+//            make.bottom.equalTo(toolBar.snp.top)
+//        }
+//    }
+//    override func setupData() {
+//        if bgEnter {
+//            textView.text = DcThly.shared.recordText
+//        }
+//    }
+//    func setupSdk(){
+//        DcThly.shared.recordFinish = {[weak self] path in
+//            guard let self = self else { return  }
+//            if !needSave {
+//                return
+//            }
+//            let v = PopTextField()
+//            v.show()
+//            v.cancelTap = {
+//                App.shared.popPage()
+//            }
+//            v.okTap = { [weak self]  text in
+//                guard let self = self else{return}
+//                
+//                let model = RecordDetailModel()
+//                model.type = .phone
+//                model.from = toolBar.leftItem.language
+//                model.to = .english
+//                model.name = text
+//                model.path = path
+//                model.duration = YLToos.getDuration(model.path)
+//                model.origin = textView.text
+//                model.translate = ""
+//                App.shared.popPage(animated: false)
+//                App.shared.goToPage(RecordDetailVC(record: model))
+//            }
+//        }
+//        DcThly.shared.recordNeedReloadData = {[weak self] text in
 //            guard let self = self else { return  }
+//            textView.text = text
+//            
+//            let range = NSMakeRange(textView.text.count - 1, 1)
+//            textView.scrollRangeToVisible(range)
+//        }
+//        //需要完善
+////        DcThly.shared.callRecordAutoFinish = {[weak self]  in
+////            guard let self = self else { return  }
+////            stopAction()
+////        }
+//        DcThly.shared.callRecordNotOnCall = {[weak self]  in
+//            guard let self = self else { return  }
+//            YLprogressHUD.showAutoHiden("未处于通话状态".l10n)
+//            rhythView.reset()
+//            toolBar.recordBtn.isSelected = false
+//            toolBar.leftItem.alpha = 1
+//        }
+//        
+//        if autoStart{
+//            startRecord()
+//        }
+//    }
+//    
+//    override func viewDidAppear(_ animated: Bool) {
+//        super.viewDidAppear(animated)
+//        navigationController?.fd_fullscreenPopGestureRecognizer?.isEnabled = false
+//    }
+//    override func viewDidDisappear(_ animated: Bool) {
+//        super.viewDidDisappear(animated)
+//        navigationController?.fd_fullscreenPopGestureRecognizer?.isEnabled = true
+//    }
+//    override func navleftViewTapped() {
+//        if toolBar.recordBtn.isSelected {
+//            CustomAlert.showWith(title: "提示".l10n, messgage: "当前正在录音,确定放弃当前录音吗?".l10n, cancelCallback: {}) {[unowned self] in
+//                self.rhythView.stopTimer()
+//                self.needSave = false
+//                DcThly.shared.recordStop()
+//                self.navigationController?.popViewController(animated: true)
+//            }
+//        }
+//        else{
+//            super.navleftViewTapped()
+//        }
+//    }
+//    func startRecord(){
+//        toolBar.recordBtnAction()
+//    }
+//    func stopRecord(){
+//        toolBar.recordBtnAction()
+//    }
+//}
+//
+//extension DcCallingRecordVC:FieldRecordBarDelegate{
+//    func fieldRecordBar(_ bar: FieldRecordBar, languageChange language: CCAiLanguage) {
+//        DcThly.shared.setRecordLanage(language)
+//        AiLanguageCache.save(type: .thly, lan: language)
+//    }
+//    
+//    func fieldRecordBar(_ bar: FieldRecordBar, stateChange state: RecordSate) {
+//        if state == .start {
+//            textView.text = ""
+//            rhythView.startTimer()
+//            DcThly.shared.recordStart()
+//        }
+//        else if state == .stop{
 //            stopAction()
 //        }
-        DcThly.shared.callRecordNotOnCall = {[weak self]  in
-            guard let self = self else { return  }
-            YLprogressHUD.showAutoHiden("未处于通话状态".l10n)
-            rhythView.reset()
-            toolBar.recordBtn.isSelected = false
-            toolBar.leftItem.alpha = 1
-        }
-        
-        if autoStart{
-            startRecord()
-        }
-    }
-    
-    override func viewDidAppear(_ animated: Bool) {
-        super.viewDidAppear(animated)
-        navigationController?.fd_fullscreenPopGestureRecognizer?.isEnabled = false
-    }
-    override func viewDidDisappear(_ animated: Bool) {
-        super.viewDidDisappear(animated)
-        navigationController?.fd_fullscreenPopGestureRecognizer?.isEnabled = true
-    }
-    override func navleftViewTapped() {
-        if toolBar.recordBtn.isSelected {
-            CustomAlert.showWith(title: "提示".l10n, messgage: "当前正在录音,确定放弃当前录音吗?".l10n, cancelCallback: {}) {[unowned self] in
-                self.rhythView.stopTimer()
-                self.needSave = false
-                DcThly.shared.recordStop()
-                self.navigationController?.popViewController(animated: true)
-            }
-        }
-        else{
-            super.navleftViewTapped()
-        }
-    }
-    func startRecord(){
-        toolBar.recordBtnAction()
-    }
-    func stopRecord(){
-        toolBar.recordBtnAction()
-    }
-}
-
-extension DcCallingRecordVC:FieldRecordBarDelegate{
-    func fieldRecordBar(_ bar: FieldRecordBar, languageChange language: CCAiLanguage) {
-        DcThly.shared.setRecordLanage(language)
-        AiLanguageCache.save(type: .thly, lan: language)
-    }
-    
-    func fieldRecordBar(_ bar: FieldRecordBar, stateChange state: RecordSate) {
-        if state == .start {
-            textView.text = ""
-            rhythView.startTimer()
-            DcThly.shared.recordStart()
-        }
-        else if state == .stop{
-            stopAction()
-        }
-    }
-    func stopAction(){
-        rhythView.stopTimer()
-        DcThly.shared.recordStop()
-        toolBar.startAnimating()
-    }
-}
+//    }
+//    func stopAction(){
+//        rhythView.stopTimer()
+//        DcThly.shared.recordStop()
+//        toolBar.startAnimating()
+//    }
+//}
index 201a1cd..9d55daa 100644 (file)
@@ -151,7 +151,7 @@ class DcDialogTranslateVC:BaseVC{
 //            filePathCallback?(path ?? "")
         }
     }
-    func phoneTranspalteCallback(_ model:DCResponseModel){
+    func phoneTranspalteCallback(_ model:DCAsrModel){
         let msg = tmpOtherList.firstIndex (where: { (str,idx) in
             return idx == model.index;
         })
@@ -170,7 +170,7 @@ class DcDialogTranslateVC:BaseVC{
         }).joined(separator: "\n")
         refreshData()
     }
-    func bleTranspalteCallback(_ model:DCResponseModel){
+    func bleTranspalteCallback(_ model:DCAsrModel){
         let msg = tmpOtherList.firstIndex (where: { (str,idx) in
             return idx == model.index;
         })
@@ -318,7 +318,7 @@ extension DcDialogTranslateVC:DialogRecordBarDelegate{
         DCBleRecord.shared.toLanguage = toolBar.languageView.rightItem.language.value
         DCBleRecord.shared.isTranslate = true
         DCBleRecord.shared.isTTs = true
-        DCBleRecord.shared.start(type: 0x00,recordPath: nil)
+        DCBleRecord.shared.start()
 
         do {
             try AVAudioSession.sharedInstance().setCategory(.playAndRecord, options: [.defaultToSpeaker])
index 7894b8f..4c8c978 100644 (file)
@@ -11,18 +11,30 @@ class CurrentDeviceView: BaseView {
 //        backgroundColor = .blue
         addSubviews([imageView])
         imageView.do { v in
+            v.image = UIImage(named: "home_header")
         }
         NotificationManager.add(self, selector: #selector(deviceChange(_:)), forName: .deviceValidChange)
         updateUI()
     }
     
     override func setupLayout() {
-        imageView.snp.makeConstraints { make in
-            make.width.equalTo(168)
-            make.height.equalTo(138)
-            make.centerX.equalToSuperview()
-            make.top.equalToSuperview().inset(20)
-            make.bottom.equalToSuperview().inset(20)
+        if CCDevice.isJoy {
+            imageView.snp.makeConstraints { make in
+                make.width.equalTo(168)
+                make.height.equalTo(138)
+                make.centerX.equalToSuperview()
+                make.top.equalToSuperview().inset(20)
+                make.bottom.equalToSuperview().inset(20)
+            }
+        }
+        else{
+            imageView.snp.makeConstraints { make in
+                make.width.equalTo(220)
+                make.height.equalTo(120)
+                make.centerX.equalToSuperview()
+                make.top.equalToSuperview().inset(20)
+                make.bottom.equalToSuperview().inset(20)
+            }
         }
     }
     @objc func deviceChange(_ noti:Notification){
index 0d5692b..01d94d6 100644 (file)
@@ -5,12 +5,12 @@
       "scale" : "1x"
     },
     {
-      "filename" : "Rectangle 1.png",
+      "filename" : "Slice 112@2x.png",
       "idiom" : "universal",
       "scale" : "2x"
     },
     {
-      "filename" : "Rectangle.png",
+      "filename" : "Slice 112@3x.png",
       "idiom" : "universal",
       "scale" : "3x"
     }
diff --git a/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Rectangle 1.png b/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Rectangle 1.png
deleted file mode 100644 (file)
index 5a59929..0000000
Binary files a/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Rectangle 1.png and /dev/null differ
diff --git a/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Rectangle.png b/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Rectangle.png
deleted file mode 100644 (file)
index fa23e2f..0000000
Binary files a/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Rectangle.png and /dev/null differ
diff --git a/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Slice 112@2x.png b/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Slice 112@2x.png
new file mode 100644 (file)
index 0000000..cba9157
Binary files /dev/null and b/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Slice 112@2x.png differ
diff --git a/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Slice 112@3x.png b/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Slice 112@3x.png
new file mode 100644 (file)
index 0000000..37b4dec
Binary files /dev/null and b/ShenYin/ShenYin/playboy.xcassets/home/home_header.imageset/Slice 112@3x.png differ
diff --git a/document/豆包APP自定义协议.txt b/document/豆包APP自定义协议.txt
new file mode 100644 (file)
index 0000000..c0f0508
--- /dev/null
@@ -0,0 +1,165 @@
+\r
+UUID/AE30     AE03/WRITE_WITHOUT_RESPONSE   AE04/NOTIFY \r
+\r
+\r
+\r
+BYTE0 :0xBA\r
+BYTE1 :CMD\r
+BYTE2 :DATA\r
+BYTE3:DATA_LEN\r
+BYTE4:CRC\r
+\r
+CRC:\r
+static u8 chargestore_crc8(u8 *ptr, u8 len)\r
+{\r
+    u8 i, crc;\r
+    crc = 0;\r
+    while (len--) {\r
+        crc ^= *ptr++;\r
+        for (i = 0; i < 8; i++) {\r
+            if (crc & 0x01) {\r
+                crc = (crc >> 1) ^ 0x8c;\r
+            } else {\r
+                crc >>= 1;\r
+            }\r
+        }\r
+    }\r
+    return crc;\r
+}\r
+\r
+\r
+CMD:\r
+0x01 代表设置多点连接  DATA:0x00表示关闭多点连接 0x01表示打开多点连接\r
+ (例:APP下发 0xBA 0x01 0x01 0x01 CRC  耳机开启空间音频的功能回复 0xBA 0x01 0x01 0x01 CRC)\r
+0x02 代表获取多点连接  DATA:0x00表示关闭多点连接 0x01表示打开多点连接\r
+(例:APP下发 0xBA 0x02 0x00 0x00 CRC  耳机多点连接功能开启的话回复 0xBA 0x02 0x01 0x01 CRC)\r
+0x03 代表设置空间音频  DATA:0x00表示关闭空间音频 0x01表示打开空间音频\r
+ (例:APP下发 0xBA 0x03 0x01 0x01 CRC  耳机开启空间音频的功能回复 0xBA 0x03 0x01 0x01 CRC)\r
+0x04 代表获取空间音频  DATA:0x00表示关闭空间音频 0x01表示打开空间音频\r
+ (例:APP下发 0xBA 0x04 0x00 0x00 CRC  耳机空间音频功能开启的话回复 0xBA 0x04 0x01 0x01 CRC)\r
+\r
+0x05 代表获取设备ID  DATA:0x00 注:TWS有连接记录返回左右耳 TWS未连接过只返回单耳另一个信息都为0XFF\r
+ (例:APP下发 0xBA 0x05 0x00 0x00 CRC  耳机回复设备ID: 0xBA 0x05           \r
+0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF(左耳16字节) 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF(右耳16字节)0x20 CRC)\r
+\r
+0x06 开MIC(OPUS传输)  DATA:0x01(预留定义豆包AI)\r
+ (例:APP下发 0xBA 0x06 0x01 0x01 CRC  耳机回复设备0xBA 0x06       0x01 0x01 CRC)\r
+\r
+\r
+0x07 关MIC(OPUS传输)  DATA:0x01(预留定义豆包AI)\r
+ (例:APP下发 0xBA 0x07 0x01 0x01 CRC  耳机回复设备0xBA 0x07       0x01 0x01 CRC)\r
+0x08  获取设备名称(UTF-8)\r
+       例:APP下发 0xBA 0x08 0x00 0x00 CRC  耳机回复:假设蓝牙名EARPHONE 0xBA 0x08 0x​​45(E) 0x41(A) 0x52(R) 0x50(P) 0x48(H) 0x4F(O) 0x4E(N) 0x45(E)  0x08(数据长度) CRC \r
+\r
+0x09  获取电量(左耳/右耳)\r
+例:APP下发 0xBA 0x09 0x00 0x00 CRC  耳机回复: 0xBA 0x09 0x00(左耳) 0x64(100电量) 0x01(右耳) 0x64(100电量) 0x04(数据长度) CRC\r
+\r
+0x0A  获取软件版本,硬件版本\r
+例:APP下发 0xBA 0x0A 0x00(软件版本) 0x01 CRC  耳机回复:假设软件版本(1.0.1) 0xBA 0x0A 0x49(1) 0x46(.) 0x48(0) 0x46(.) 0x49(1) 0x05(数据长度) CRC\r
+例:APP下发 0xBA 0x0A 0x01(硬件版本) 0x01 CRC  耳机回复:假设硬件版本(1.0.0) 0xBA 0x0A 0x49(1) 0x46(.) 0x48(0) 0x46(.) 0x48(0) 0x05(数据长度) CRC\r
+0x0B  查找耳机(耳机声音播放/停止)\r
+例:APP下发 0xBA 0x0A 0x00(关闭查找音) 0x01 CRC  耳机回复:0xBA 0x0A 0x00(关闭查找音) 0x01 CRC\r
+例:APP下发 0xBA 0x0A 0x01(打开查找音) 0x01 CRC  耳机回复:0xBA 0x0A 0x01(打开查找音) 0x01 CRC \r
+0x0C 设置EQ\r
+\r
+\r
+用户在APP设置耳机按键自定义功能\r
+BYTE0 :0x05\r
+BYTE1:DATA1\r
+BYTE2:DATA2\r
+BYTE3:DATA3\r
+BYTE1 :CMD\r
+BYTE4:CRC\r
+\r
+CRC:\r
+static u8 chargestore_crc8(u8 *ptr, u8 len)\r
+{\r
+    u8 i, crc;\r
+    crc = 0;\r
+    while (len--) {\r
+        crc ^= *ptr++;\r
+        for (i = 0; i < 8; i++) {\r
+            if (crc & 0x01) {\r
+                crc = (crc >> 1) ^ 0x8c;\r
+            } else {\r
+                crc >>= 1;\r
+            }\r
+        }\r
+    }\r
+    return crc;\r
+}\r
+\r
+\r
+DATA1:\r
+   Lift = 0x00\r
+   Right = 0x01\r
+\r
+DATA2:\r
+   butten0 = 0x00\r
+   butten1 = 0x01\r
+   butten2 = 0x02\r
+   butten3 = 0x03\r
+   butten4 = 0x04\r
+   \r
+\r
+DATA3:\r
+按键操作类型定义:\r
+    KEY_ACTION_SINGLE_CLICK = 0x01  // 单击\r
+    KEY_ACTION_LONG_PRESS = 0x02    // 长按\r
+    KEY_ACTION_DOUBLE_CLICK = 0x03  // 双击  \r
+    KEY_ACTION_TRIPLE_CLICK = 0x04  // 三击\r
+\r
+CMD:\r
+按键功能类型定义:\r
+    KEY_TYPE_NONE = 0x00       // 无功能\r
+    KEY_TYPE_PREV = 0x03       // 上一曲\r
+    KEY_TYPE_NEXT = 0x04       // 下一曲  \r
+    TYPE_PP = 0x05         // 播放/暂停\r
+    TYPE_ANSWER_CALL = 0x06 // 接听电话\r
+    KEY_TYPE_HANG_UP = 0x07    // 挂断电话\r
+    KEY_TYPE_CALL_BACK = 0x08  // 回拨\r
+    KEY_TYPE_INC_VOICE = 0x09  // 音量增加\r
+    KEY_TYPE_DESC_VOICE = 0x0A // 音量减少\r
+    KEY_TYPE_TAKE_PHOTO = 0x0B // 拍照\r
+    KEY_TYPE_SIRI = 0x0C       // 语音助手\r
+    KEY_TYPE_ANC_VOICE = 0xFF  // ANC/通透\r
+\r
+(例:设置左耳的按键1为单击是播放功能\r
+           APP下发 0x05 0x00 0x01 0x01 0x05 CRC        耳机设置成功后回复0x05 0x00 0x01 0x01 0x05 CRC)\r
+\r
+\r
+\r
+按键按下后上报通知给到APP\r
+Button Notifications \r
+Notification ID: 0x7B \r
+Payload: \r
+Byte 0: JieLi button ID \r
+0: Earbuds power left or headset button #0 \r
+1: Earbuds power right or headset button #1 \r
+2:headset button #2\r
+3:headset button #3 \r
+4:headset button #4 \r
+5:headset button #5 \r
+Byte 1: JieLi gesture ID \r
+0: Click \r
+1: Hold Up \r
+2: Double click \r
+3: Triple click \r
+Byte 2: JieLi command ID \r
+0: No action \r
+3: Previous \r
+4: Next \r
+5: Play/pause \r
+6: Take call \r
+7: End call \r
+9: Volume up \r
+10: Volume down\r
+11: Remote up \r
+12: Assistant toggle \r
+0xFF: ANC toggle\r
+\r
+\r
+\r
+\r
+\r
+\r
diff --git a/document/账号.txt b/document/账号.txt
new file mode 100644 (file)
index 0000000..96bc0ec
--- /dev/null
@@ -0,0 +1,6 @@
+
+
+
+极光推送
+账户:zyc@deepchords.com
+密码:DeepChords666
\ No newline at end of file