@runanywhere/core 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/RunAnywhereCore.podspec +130 -0
- package/android/CMakeLists.txt +92 -0
- package/android/build.gradle +321 -0
- package/android/consumer-rules.pro +5 -0
- package/android/src/main/AndroidManifest.xml +3 -0
- package/android/src/main/cpp/cpp-adapter.cpp +271 -0
- package/android/src/main/include/rac/backends/rac_llm_llamacpp.h +218 -0
- package/android/src/main/include/rac/backends/rac_stt_onnx.h +99 -0
- package/android/src/main/include/rac/backends/rac_stt_whispercpp.h +153 -0
- package/android/src/main/include/rac/backends/rac_tts_onnx.h +71 -0
- package/android/src/main/include/rac/backends/rac_vad_onnx.h +84 -0
- package/android/src/main/include/rac/core/capabilities/rac_lifecycle.h +290 -0
- package/android/src/main/include/rac/core/rac_analytics_events.h +610 -0
- package/android/src/main/include/rac/core/rac_audio_utils.h +88 -0
- package/android/src/main/include/rac/core/rac_component_types.h +160 -0
- package/android/src/main/include/rac/core/rac_core.h +331 -0
- package/android/src/main/include/rac/core/rac_error.h +469 -0
- package/android/src/main/include/rac/core/rac_events.h +334 -0
- package/android/src/main/include/rac/core/rac_logger.h +416 -0
- package/android/src/main/include/rac/core/rac_platform_adapter.h +340 -0
- package/android/src/main/include/rac/core/rac_sdk_state.h +292 -0
- package/android/src/main/include/rac/core/rac_structured_error.h +594 -0
- package/android/src/main/include/rac/core/rac_types.h +264 -0
- package/android/src/main/include/rac/features/llm/rac_llm.h +17 -0
- package/android/src/main/include/rac/features/llm/rac_llm_analytics.h +188 -0
- package/android/src/main/include/rac/features/llm/rac_llm_component.h +228 -0
- package/android/src/main/include/rac/features/llm/rac_llm_events.h +215 -0
- package/android/src/main/include/rac/features/llm/rac_llm_metrics.h +402 -0
- package/android/src/main/include/rac/features/llm/rac_llm_service.h +163 -0
- package/android/src/main/include/rac/features/llm/rac_llm_structured_output.h +141 -0
- package/android/src/main/include/rac/features/llm/rac_llm_types.h +384 -0
- package/android/src/main/include/rac/features/platform/rac_llm_platform.h +204 -0
- package/android/src/main/include/rac/features/platform/rac_tts_platform.h +197 -0
- package/android/src/main/include/rac/features/stt/rac_stt.h +17 -0
- package/android/src/main/include/rac/features/stt/rac_stt_analytics.h +204 -0
- package/android/src/main/include/rac/features/stt/rac_stt_component.h +162 -0
- package/android/src/main/include/rac/features/stt/rac_stt_events.h +62 -0
- package/android/src/main/include/rac/features/stt/rac_stt_service.h +154 -0
- package/android/src/main/include/rac/features/stt/rac_stt_types.h +389 -0
- package/android/src/main/include/rac/features/tts/rac_tts.h +17 -0
- package/android/src/main/include/rac/features/tts/rac_tts_analytics.h +181 -0
- package/android/src/main/include/rac/features/tts/rac_tts_component.h +158 -0
- package/android/src/main/include/rac/features/tts/rac_tts_events.h +54 -0
- package/android/src/main/include/rac/features/tts/rac_tts_service.h +162 -0
- package/android/src/main/include/rac/features/tts/rac_tts_types.h +374 -0
- package/android/src/main/include/rac/features/vad/rac_vad.h +17 -0
- package/android/src/main/include/rac/features/vad/rac_vad_analytics.h +236 -0
- package/android/src/main/include/rac/features/vad/rac_vad_component.h +185 -0
- package/android/src/main/include/rac/features/vad/rac_vad_energy.h +443 -0
- package/android/src/main/include/rac/features/vad/rac_vad_events.h +76 -0
- package/android/src/main/include/rac/features/vad/rac_vad_service.h +167 -0
- package/android/src/main/include/rac/features/vad/rac_vad_types.h +244 -0
- package/android/src/main/include/rac/features/voice_agent/rac_voice_agent.h +612 -0
- package/android/src/main/include/rac/infrastructure/device/rac_device_manager.h +176 -0
- package/android/src/main/include/rac/infrastructure/download/rac_download.h +418 -0
- package/android/src/main/include/rac/infrastructure/events/rac_events.h +177 -0
- package/android/src/main/include/rac/infrastructure/model_management/rac_model_assignment.h +169 -0
- package/android/src/main/include/rac/infrastructure/model_management/rac_model_paths.h +258 -0
- package/android/src/main/include/rac/infrastructure/model_management/rac_model_registry.h +357 -0
- package/android/src/main/include/rac/infrastructure/model_management/rac_model_strategy.h +374 -0
- package/android/src/main/include/rac/infrastructure/model_management/rac_model_types.h +613 -0
- package/android/src/main/include/rac/infrastructure/network/rac_api_types.h +335 -0
- package/android/src/main/include/rac/infrastructure/network/rac_auth_manager.h +252 -0
- package/android/src/main/include/rac/infrastructure/network/rac_dev_config.h +85 -0
- package/android/src/main/include/rac/infrastructure/network/rac_endpoints.h +102 -0
- package/android/src/main/include/rac/infrastructure/network/rac_environment.h +220 -0
- package/android/src/main/include/rac/infrastructure/network/rac_http_client.h +233 -0
- package/android/src/main/include/rac/infrastructure/storage/rac_storage_analyzer.h +286 -0
- package/android/src/main/include/rac/infrastructure/telemetry/rac_telemetry_manager.h +206 -0
- package/android/src/main/include/rac/infrastructure/telemetry/rac_telemetry_types.h +234 -0
- package/android/src/main/java/com/margelo/nitro/runanywhere/ArchiveUtility.kt +308 -0
- package/android/src/main/java/com/margelo/nitro/runanywhere/HybridRunAnywhereDeviceInfo.kt +229 -0
- package/android/src/main/java/com/margelo/nitro/runanywhere/PlatformAdapterBridge.kt +392 -0
- package/android/src/main/java/com/margelo/nitro/runanywhere/RunAnywhereCorePackage.kt +28 -0
- package/android/src/main/java/com/margelo/nitro/runanywhere/SDKLogger.kt +357 -0
- package/android/src/main/java/com/margelo/nitro/runanywhere/SecureStorageManager.kt +147 -0
- package/android/src/main/jniLibs/arm64-v8a/libc++_shared.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libomp.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/librac_commons.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/librunanywhere_jni.so +0 -0
- package/cpp/HybridRunAnywhereCore.cpp +2505 -0
- package/cpp/HybridRunAnywhereCore.hpp +271 -0
- package/cpp/bridges/AuthBridge.cpp +209 -0
- package/cpp/bridges/AuthBridge.hpp +157 -0
- package/cpp/bridges/DeviceBridge.cpp +257 -0
- package/cpp/bridges/DeviceBridge.hpp +155 -0
- package/cpp/bridges/DownloadBridge.cpp +299 -0
- package/cpp/bridges/DownloadBridge.hpp +197 -0
- package/cpp/bridges/EventBridge.cpp +125 -0
- package/cpp/bridges/EventBridge.hpp +139 -0
- package/cpp/bridges/HTTPBridge.cpp +96 -0
- package/cpp/bridges/HTTPBridge.hpp +144 -0
- package/cpp/bridges/InitBridge.cpp +1273 -0
- package/cpp/bridges/InitBridge.hpp +306 -0
- package/cpp/bridges/ModelRegistryBridge.cpp +394 -0
- package/cpp/bridges/ModelRegistryBridge.hpp +177 -0
- package/cpp/bridges/StorageBridge.cpp +269 -0
- package/cpp/bridges/StorageBridge.hpp +172 -0
- package/cpp/bridges/TelemetryBridge.cpp +352 -0
- package/cpp/bridges/TelemetryBridge.hpp +126 -0
- package/ios/.testlocal +0 -0
- package/ios/ArchiveUtility.swift +526 -0
- package/ios/ArchiveUtilityBridge.m +52 -0
- package/ios/AudioDecoder.h +38 -0
- package/ios/AudioDecoder.m +162 -0
- package/ios/Binaries/RACommons.xcframework/Info.plist +44 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/RACommons.h +67 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_analytics_events.h +610 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_api_types.h +335 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_audio_utils.h +88 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_auth_manager.h +252 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_component_types.h +160 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_core.h +331 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_dev_config.h +85 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_device_manager.h +176 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_download.h +418 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_endpoints.h +102 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_environment.h +220 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_error.h +469 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_events.h +177 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_http_client.h +233 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_lifecycle.h +290 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm.h +17 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_analytics.h +188 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_component.h +228 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_events.h +215 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_llamacpp.h +218 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_metrics.h +402 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_platform.h +204 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_service.h +163 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_structured_output.h +141 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_llm_types.h +384 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_logger.h +416 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_model_assignment.h +169 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_model_paths.h +258 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_model_registry.h +357 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_model_strategy.h +374 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_model_types.h +613 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_platform_adapter.h +340 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_sdk_state.h +292 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_storage_analyzer.h +286 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_structured_error.h +594 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_stt.h +17 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_stt_analytics.h +204 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_stt_component.h +162 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_stt_events.h +62 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_stt_onnx.h +99 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_stt_service.h +154 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_stt_types.h +389 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_stt_whispercpp.h +153 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_telemetry_manager.h +206 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_telemetry_types.h +234 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_tts.h +17 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_tts_analytics.h +181 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_tts_component.h +158 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_tts_events.h +54 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_tts_onnx.h +71 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_tts_platform.h +197 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_tts_service.h +162 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_tts_types.h +374 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_types.h +264 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_vad.h +17 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_vad_analytics.h +236 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_vad_component.h +185 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_vad_energy.h +443 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_vad_events.h +76 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_vad_onnx.h +84 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_vad_service.h +167 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_vad_types.h +244 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Headers/rac_voice_agent.h +612 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Info.plist +11 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/Modules/module.modulemap +5 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64/RACommons.framework/RACommons +0 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/RACommons.h +67 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_analytics_events.h +610 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_api_types.h +335 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_audio_utils.h +88 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_auth_manager.h +252 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_component_types.h +160 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_core.h +331 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_dev_config.h +85 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_device_manager.h +176 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_download.h +418 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_endpoints.h +102 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_environment.h +220 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_error.h +469 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_events.h +177 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_http_client.h +233 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_lifecycle.h +290 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm.h +17 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_analytics.h +188 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_component.h +228 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_events.h +215 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_llamacpp.h +218 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_metrics.h +402 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_platform.h +204 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_service.h +163 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_structured_output.h +141 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_llm_types.h +384 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_logger.h +416 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_model_assignment.h +169 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_model_paths.h +258 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_model_registry.h +357 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_model_strategy.h +374 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_model_types.h +613 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_platform_adapter.h +340 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_sdk_state.h +292 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_storage_analyzer.h +286 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_structured_error.h +594 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_stt.h +17 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_stt_analytics.h +204 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_stt_component.h +162 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_stt_events.h +62 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_stt_onnx.h +99 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_stt_service.h +154 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_stt_types.h +389 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_stt_whispercpp.h +153 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_telemetry_manager.h +206 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_telemetry_types.h +234 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_tts.h +17 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_tts_analytics.h +181 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_tts_component.h +158 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_tts_events.h +54 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_tts_onnx.h +71 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_tts_platform.h +197 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_tts_service.h +162 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_tts_types.h +374 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_types.h +264 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_vad.h +17 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_vad_analytics.h +236 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_vad_component.h +185 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_vad_energy.h +443 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_vad_events.h +76 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_vad_onnx.h +84 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_vad_service.h +167 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_vad_types.h +244 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Headers/rac_voice_agent.h +612 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Info.plist +11 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/Modules/module.modulemap +5 -0
- package/ios/Binaries/RACommons.xcframework/ios-arm64_x86_64-simulator/RACommons.framework/RACommons +0 -0
- package/ios/HybridRunAnywhereDeviceInfo.swift +214 -0
- package/ios/KeychainManager.swift +116 -0
- package/ios/PlatformAdapter.swift +100 -0
- package/ios/PlatformAdapterBridge.h +152 -0
- package/ios/PlatformAdapterBridge.m +570 -0
- package/ios/RNSDKLoggerBridge.h +41 -0
- package/ios/RNSDKLoggerBridge.m +66 -0
- package/ios/SDKLogger.swift +329 -0
- package/nitro.json +20 -0
- package/nitrogen/generated/.gitattributes +1 -0
- package/nitrogen/generated/android/c++/JHybridRunAnywhereDeviceInfoSpec.cpp +257 -0
- package/nitrogen/generated/android/c++/JHybridRunAnywhereDeviceInfoSpec.hpp +77 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/runanywhere/HybridRunAnywhereDeviceInfoSpec.kt +106 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/runanywhere/runanywherecoreOnLoad.kt +35 -0
- package/nitrogen/generated/android/runanywherecore+autolinking.cmake +82 -0
- package/nitrogen/generated/android/runanywherecore+autolinking.gradle +27 -0
- package/nitrogen/generated/android/runanywherecoreOnLoad.cpp +54 -0
- package/nitrogen/generated/android/runanywherecoreOnLoad.hpp +25 -0
- package/nitrogen/generated/ios/RunAnywhereCore+autolinking.rb +60 -0
- package/nitrogen/generated/ios/RunAnywhereCore-Swift-Cxx-Bridge.cpp +65 -0
- package/nitrogen/generated/ios/RunAnywhereCore-Swift-Cxx-Bridge.hpp +197 -0
- package/nitrogen/generated/ios/RunAnywhereCore-Swift-Cxx-Umbrella.hpp +45 -0
- package/nitrogen/generated/ios/RunAnywhereCoreAutolinking.mm +43 -0
- package/nitrogen/generated/ios/RunAnywhereCoreAutolinking.swift +25 -0
- package/nitrogen/generated/ios/c++/HybridRunAnywhereDeviceInfoSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridRunAnywhereDeviceInfoSpecSwift.hpp +173 -0
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_double.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
- package/nitrogen/generated/ios/swift/HybridRunAnywhereDeviceInfoSpec.swift +68 -0
- package/nitrogen/generated/ios/swift/HybridRunAnywhereDeviceInfoSpec_cxx.swift +366 -0
- package/nitrogen/generated/shared/c++/HybridRunAnywhereCoreSpec.cpp +92 -0
- package/nitrogen/generated/shared/c++/HybridRunAnywhereCoreSpec.hpp +138 -0
- package/nitrogen/generated/shared/c++/HybridRunAnywhereDeviceInfoSpec.cpp +33 -0
- package/nitrogen/generated/shared/c++/HybridRunAnywhereDeviceInfoSpec.hpp +75 -0
- package/package.json +76 -0
- package/react-native.config.js +14 -0
- package/src/Features/VoiceSession/AudioCaptureManager.ts +286 -0
- package/src/Features/VoiceSession/AudioPlaybackManager.ts +300 -0
- package/src/Features/VoiceSession/VoiceSessionHandle.ts +530 -0
- package/src/Features/VoiceSession/index.ts +20 -0
- package/src/Features/index.ts +7 -0
- package/src/Foundation/Constants/SDKConstants.ts +47 -0
- package/src/Foundation/Constants/index.ts +8 -0
- package/src/Foundation/DependencyInjection/ServiceContainer.ts +154 -0
- package/src/Foundation/DependencyInjection/ServiceRegistry.ts +51 -0
- package/src/Foundation/DependencyInjection/index.ts +6 -0
- package/src/Foundation/ErrorTypes/ErrorCategory.ts +184 -0
- package/src/Foundation/ErrorTypes/ErrorCodes.ts +151 -0
- package/src/Foundation/ErrorTypes/ErrorContext.ts +201 -0
- package/src/Foundation/ErrorTypes/SDKError.ts +507 -0
- package/src/Foundation/ErrorTypes/index.ts +57 -0
- package/src/Foundation/Initialization/InitializationPhase.ts +85 -0
- package/src/Foundation/Initialization/InitializationState.ts +168 -0
- package/src/Foundation/Initialization/index.ts +26 -0
- package/src/Foundation/Logging/Destinations/NativeLogBridge.ts +147 -0
- package/src/Foundation/Logging/Destinations/SentryDestination.ts +209 -0
- package/src/Foundation/Logging/Logger/SDKLogger.ts +232 -0
- package/src/Foundation/Logging/Models/LogLevel.ts +36 -0
- package/src/Foundation/Logging/Models/LoggingConfiguration.ts +117 -0
- package/src/Foundation/Logging/Services/LoggingManager.ts +407 -0
- package/src/Foundation/Logging/index.ts +59 -0
- package/src/Foundation/Security/DeviceIdentity.ts +92 -0
- package/src/Foundation/Security/SecureStorageError.ts +132 -0
- package/src/Foundation/Security/SecureStorageKeys.ts +35 -0
- package/src/Foundation/Security/SecureStorageService.ts +449 -0
- package/src/Foundation/Security/index.ts +17 -0
- package/src/Foundation/index.ts +26 -0
- package/src/Infrastructure/Events/EventPublisher.ts +165 -0
- package/src/Infrastructure/Events/SDKEvent.ts +214 -0
- package/src/Infrastructure/Events/index.ts +15 -0
- package/src/Infrastructure/index.ts +9 -0
- package/src/Public/Events/EventBus.ts +488 -0
- package/src/Public/Events/index.ts +8 -0
- package/src/Public/Extensions/RunAnywhere+Logging.ts +51 -0
- package/src/Public/Extensions/RunAnywhere+Models.ts +392 -0
- package/src/Public/Extensions/RunAnywhere+STT.ts +424 -0
- package/src/Public/Extensions/RunAnywhere+Storage.ts +151 -0
- package/src/Public/Extensions/RunAnywhere+StructuredOutput.ts +316 -0
- package/src/Public/Extensions/RunAnywhere+TTS.ts +430 -0
- package/src/Public/Extensions/RunAnywhere+TextGeneration.ts +320 -0
- package/src/Public/Extensions/RunAnywhere+VAD.ts +359 -0
- package/src/Public/Extensions/RunAnywhere+VoiceAgent.ts +225 -0
- package/src/Public/Extensions/RunAnywhere+VoiceSession.ts +155 -0
- package/src/Public/Extensions/index.ts +126 -0
- package/src/Public/RunAnywhere.ts +695 -0
- package/src/index.ts +238 -0
- package/src/native/NativeRunAnywhereCore.ts +291 -0
- package/src/native/NativeRunAnywhereModule.ts +32 -0
- package/src/native/index.ts +21 -0
- package/src/services/DownloadService.ts +282 -0
- package/src/services/FileSystem.ts +810 -0
- package/src/services/ModelRegistry.ts +246 -0
- package/src/services/Network/APIEndpoints.ts +84 -0
- package/src/services/Network/HTTPService.ts +479 -0
- package/src/services/Network/NetworkConfiguration.ts +130 -0
- package/src/services/Network/TelemetryService.ts +318 -0
- package/src/services/Network/index.ts +29 -0
- package/src/services/SystemTTSService.ts +130 -0
- package/src/services/index.ts +66 -0
- package/src/specs/RunAnywhereCore.nitro.ts +627 -0
- package/src/specs/RunAnywhereDeviceInfo.nitro.ts +73 -0
- package/src/types/LLMTypes.ts +127 -0
- package/src/types/STTTypes.ts +124 -0
- package/src/types/StructuredOutputTypes.ts +156 -0
- package/src/types/TTSTypes.ts +126 -0
- package/src/types/VADTypes.ts +70 -0
- package/src/types/VoiceAgentTypes.ts +182 -0
- package/src/types/enums.ts +258 -0
- package/src/types/events.ts +337 -0
- package/src/types/external.d.ts +142 -0
- package/src/types/index.ts +146 -0
- package/src/types/models.ts +579 -0
|
@@ -0,0 +1,389 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file rac_stt_types.h
|
|
3
|
+
* @brief RunAnywhere Commons - STT Types and Data Structures
|
|
4
|
+
*
|
|
5
|
+
* C port of Swift's STT Models from:
|
|
6
|
+
* Sources/RunAnywhere/Features/STT/Models/STTConfiguration.swift
|
|
7
|
+
* Sources/RunAnywhere/Features/STT/Models/STTOptions.swift
|
|
8
|
+
* Sources/RunAnywhere/Features/STT/Models/STTInput.swift
|
|
9
|
+
* Sources/RunAnywhere/Features/STT/Models/STTOutput.swift
|
|
10
|
+
* Sources/RunAnywhere/Features/STT/Models/STTTranscriptionResult.swift
|
|
11
|
+
*
|
|
12
|
+
* This header defines data structures only. For the service interface,
|
|
13
|
+
* see rac_stt_service.h.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
#ifndef RAC_STT_TYPES_H
|
|
17
|
+
#define RAC_STT_TYPES_H
|
|
18
|
+
|
|
19
|
+
#include <RACommons/rac_types.h>
|
|
20
|
+
|
|
21
|
+
#ifdef __cplusplus
|
|
22
|
+
extern "C" {
|
|
23
|
+
#endif
|
|
24
|
+
|
|
25
|
+
// =============================================================================
|
|
26
|
+
// CONSTANTS - Single Source of Truth for STT
|
|
27
|
+
// Swift references these via CRACommons import
|
|
28
|
+
// =============================================================================
|
|
29
|
+
|
|
30
|
+
// Audio Format Constants
|
|
31
|
+
#define RAC_STT_DEFAULT_SAMPLE_RATE 16000
|
|
32
|
+
#define RAC_STT_MAX_SAMPLE_RATE 48000
|
|
33
|
+
#define RAC_STT_MIN_SAMPLE_RATE 8000
|
|
34
|
+
#define RAC_STT_BYTES_PER_SAMPLE 2
|
|
35
|
+
#define RAC_STT_CHANNELS 1
|
|
36
|
+
|
|
37
|
+
// Confidence Scores
|
|
38
|
+
#define RAC_STT_DEFAULT_CONFIDENCE 0.9f
|
|
39
|
+
#define RAC_STT_MIN_ACCEPTABLE_CONFIDENCE 0.5f
|
|
40
|
+
|
|
41
|
+
// Streaming Constants
|
|
42
|
+
#define RAC_STT_DEFAULT_STREAMING_CHUNK_MS 100
|
|
43
|
+
#define RAC_STT_MIN_STREAMING_CHUNK_MS 50
|
|
44
|
+
#define RAC_STT_MAX_STREAMING_CHUNK_MS 1000
|
|
45
|
+
|
|
46
|
+
// Language
|
|
47
|
+
#define RAC_STT_DEFAULT_LANGUAGE "en"
|
|
48
|
+
|
|
49
|
+
// =============================================================================
|
|
50
|
+
// AUDIO FORMAT - Mirrors Swift's AudioFormat
|
|
51
|
+
// =============================================================================
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* @brief Audio format enumeration
|
|
55
|
+
* Mirrors Swift's AudioFormat from AudioTypes.swift
|
|
56
|
+
*/
|
|
57
|
+
typedef enum rac_audio_format_enum {
|
|
58
|
+
RAC_AUDIO_FORMAT_PCM = 0,
|
|
59
|
+
RAC_AUDIO_FORMAT_WAV = 1,
|
|
60
|
+
RAC_AUDIO_FORMAT_MP3 = 2,
|
|
61
|
+
RAC_AUDIO_FORMAT_OPUS = 3,
|
|
62
|
+
RAC_AUDIO_FORMAT_AAC = 4,
|
|
63
|
+
RAC_AUDIO_FORMAT_FLAC = 5
|
|
64
|
+
} rac_audio_format_enum_t;
|
|
65
|
+
|
|
66
|
+
// =============================================================================
|
|
67
|
+
// CONFIGURATION - Mirrors Swift's STTConfiguration
|
|
68
|
+
// =============================================================================
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* @brief STT component configuration
|
|
72
|
+
*
|
|
73
|
+
* Mirrors Swift's STTConfiguration struct exactly.
|
|
74
|
+
* See: Sources/RunAnywhere/Features/STT/Models/STTConfiguration.swift
|
|
75
|
+
*/
|
|
76
|
+
typedef struct rac_stt_config {
|
|
77
|
+
/** Model ID (optional - uses default if NULL) */
|
|
78
|
+
const char* model_id;
|
|
79
|
+
|
|
80
|
+
/** Preferred framework for transcription (use -1 for auto) */
|
|
81
|
+
int32_t preferred_framework;
|
|
82
|
+
|
|
83
|
+
/** Language code for transcription (e.g., "en-US") */
|
|
84
|
+
const char* language;
|
|
85
|
+
|
|
86
|
+
/** Sample rate in Hz (default: 16000) */
|
|
87
|
+
int32_t sample_rate;
|
|
88
|
+
|
|
89
|
+
/** Enable automatic punctuation in transcription */
|
|
90
|
+
rac_bool_t enable_punctuation;
|
|
91
|
+
|
|
92
|
+
/** Enable speaker diarization */
|
|
93
|
+
rac_bool_t enable_diarization;
|
|
94
|
+
|
|
95
|
+
/** Vocabulary list for improved recognition (NULL-terminated array, can be NULL) */
|
|
96
|
+
const char* const* vocabulary_list;
|
|
97
|
+
size_t num_vocabulary;
|
|
98
|
+
|
|
99
|
+
/** Maximum number of alternative transcriptions (default: 1) */
|
|
100
|
+
int32_t max_alternatives;
|
|
101
|
+
|
|
102
|
+
/** Enable word-level timestamps */
|
|
103
|
+
rac_bool_t enable_timestamps;
|
|
104
|
+
} rac_stt_config_t;
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* @brief Default STT configuration
|
|
108
|
+
*/
|
|
109
|
+
static const rac_stt_config_t RAC_STT_CONFIG_DEFAULT = {.model_id = RAC_NULL,
|
|
110
|
+
.preferred_framework = -1,
|
|
111
|
+
.language = "en-US",
|
|
112
|
+
.sample_rate = RAC_STT_DEFAULT_SAMPLE_RATE,
|
|
113
|
+
.enable_punctuation = RAC_TRUE,
|
|
114
|
+
.enable_diarization = RAC_FALSE,
|
|
115
|
+
.vocabulary_list = RAC_NULL,
|
|
116
|
+
.num_vocabulary = 0,
|
|
117
|
+
.max_alternatives = 1,
|
|
118
|
+
.enable_timestamps = RAC_TRUE};
|
|
119
|
+
|
|
120
|
+
// =============================================================================
|
|
121
|
+
// OPTIONS - Mirrors Swift's STTOptions
|
|
122
|
+
// =============================================================================
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* @brief STT transcription options
|
|
126
|
+
*
|
|
127
|
+
* Mirrors Swift's STTOptions struct.
|
|
128
|
+
* See: Sources/RunAnywhere/Features/STT/Models/STTOptions.swift
|
|
129
|
+
*/
|
|
130
|
+
typedef struct rac_stt_options {
|
|
131
|
+
/** Language code for transcription (e.g., "en", "es", "fr") */
|
|
132
|
+
const char* language;
|
|
133
|
+
|
|
134
|
+
/** Whether to auto-detect the spoken language */
|
|
135
|
+
rac_bool_t detect_language;
|
|
136
|
+
|
|
137
|
+
/** Enable automatic punctuation in transcription */
|
|
138
|
+
rac_bool_t enable_punctuation;
|
|
139
|
+
|
|
140
|
+
/** Enable speaker diarization */
|
|
141
|
+
rac_bool_t enable_diarization;
|
|
142
|
+
|
|
143
|
+
/** Maximum number of speakers (0 = auto) */
|
|
144
|
+
int32_t max_speakers;
|
|
145
|
+
|
|
146
|
+
/** Enable word-level timestamps */
|
|
147
|
+
rac_bool_t enable_timestamps;
|
|
148
|
+
|
|
149
|
+
/** Audio format of input data */
|
|
150
|
+
rac_audio_format_enum_t audio_format;
|
|
151
|
+
|
|
152
|
+
/** Sample rate of input audio (default: 16000 Hz) */
|
|
153
|
+
int32_t sample_rate;
|
|
154
|
+
} rac_stt_options_t;
|
|
155
|
+
|
|
156
|
+
/**
|
|
157
|
+
* @brief Default STT options
|
|
158
|
+
*/
|
|
159
|
+
static const rac_stt_options_t RAC_STT_OPTIONS_DEFAULT = {.language = "en",
|
|
160
|
+
.detect_language = RAC_FALSE,
|
|
161
|
+
.enable_punctuation = RAC_TRUE,
|
|
162
|
+
.enable_diarization = RAC_FALSE,
|
|
163
|
+
.max_speakers = 0,
|
|
164
|
+
.enable_timestamps = RAC_TRUE,
|
|
165
|
+
.audio_format = RAC_AUDIO_FORMAT_PCM,
|
|
166
|
+
.sample_rate = 16000};
|
|
167
|
+
|
|
168
|
+
// =============================================================================
|
|
169
|
+
// RESULT - Mirrors Swift's STTTranscriptionResult
|
|
170
|
+
// =============================================================================
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* @brief Word timestamp information
|
|
174
|
+
*/
|
|
175
|
+
typedef struct rac_stt_word {
|
|
176
|
+
/** The word text */
|
|
177
|
+
const char* text;
|
|
178
|
+
/** Start time in milliseconds */
|
|
179
|
+
int64_t start_ms;
|
|
180
|
+
/** End time in milliseconds */
|
|
181
|
+
int64_t end_ms;
|
|
182
|
+
/** Confidence score (0.0 to 1.0) */
|
|
183
|
+
float confidence;
|
|
184
|
+
} rac_stt_word_t;
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* @brief STT transcription result
|
|
188
|
+
*
|
|
189
|
+
* Mirrors Swift's STTTranscriptionResult struct.
|
|
190
|
+
*/
|
|
191
|
+
typedef struct rac_stt_result {
|
|
192
|
+
/** Full transcribed text (owned, must be freed with rac_free) */
|
|
193
|
+
char* text;
|
|
194
|
+
|
|
195
|
+
/** Detected language code (can be NULL) */
|
|
196
|
+
char* detected_language;
|
|
197
|
+
|
|
198
|
+
/** Word-level timestamps (can be NULL) */
|
|
199
|
+
rac_stt_word_t* words;
|
|
200
|
+
size_t num_words;
|
|
201
|
+
|
|
202
|
+
/** Overall confidence score (0.0 to 1.0) */
|
|
203
|
+
float confidence;
|
|
204
|
+
|
|
205
|
+
/** Processing time in milliseconds */
|
|
206
|
+
int64_t processing_time_ms;
|
|
207
|
+
} rac_stt_result_t;
|
|
208
|
+
|
|
209
|
+
// =============================================================================
|
|
210
|
+
// INFO - Mirrors Swift's STTService properties
|
|
211
|
+
// =============================================================================
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* @brief STT service info
|
|
215
|
+
*/
|
|
216
|
+
typedef struct rac_stt_info {
|
|
217
|
+
/** Whether the service is ready */
|
|
218
|
+
rac_bool_t is_ready;
|
|
219
|
+
|
|
220
|
+
/** Current model identifier (can be NULL) */
|
|
221
|
+
const char* current_model;
|
|
222
|
+
|
|
223
|
+
/** Whether streaming is supported */
|
|
224
|
+
rac_bool_t supports_streaming;
|
|
225
|
+
} rac_stt_info_t;
|
|
226
|
+
|
|
227
|
+
// =============================================================================
|
|
228
|
+
// CALLBACKS
|
|
229
|
+
// =============================================================================
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* @brief STT streaming callback
|
|
233
|
+
*
|
|
234
|
+
* Called for partial transcription results during streaming.
|
|
235
|
+
*
|
|
236
|
+
* @param partial_text Partial transcription text
|
|
237
|
+
* @param is_final Whether this is a final result
|
|
238
|
+
* @param user_data User-provided context
|
|
239
|
+
*/
|
|
240
|
+
typedef void (*rac_stt_stream_callback_t)(const char* partial_text, rac_bool_t is_final,
|
|
241
|
+
void* user_data);
|
|
242
|
+
|
|
243
|
+
// =============================================================================
|
|
244
|
+
// INPUT - Mirrors Swift's STTInput
|
|
245
|
+
// =============================================================================
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* @brief STT input data
|
|
249
|
+
*
|
|
250
|
+
* Mirrors Swift's STTInput struct.
|
|
251
|
+
* See: Sources/RunAnywhere/Features/STT/Models/STTInput.swift
|
|
252
|
+
*/
|
|
253
|
+
typedef struct rac_stt_input {
|
|
254
|
+
/** Audio data bytes (raw audio data) */
|
|
255
|
+
const uint8_t* audio_data;
|
|
256
|
+
size_t audio_data_size;
|
|
257
|
+
|
|
258
|
+
/** Alternative: audio buffer (PCM float samples) */
|
|
259
|
+
const float* audio_samples;
|
|
260
|
+
size_t num_samples;
|
|
261
|
+
|
|
262
|
+
/** Audio format of input data */
|
|
263
|
+
rac_audio_format_enum_t format;
|
|
264
|
+
|
|
265
|
+
/** Language code override (can be NULL to use config default) */
|
|
266
|
+
const char* language;
|
|
267
|
+
|
|
268
|
+
/** Sample rate of the audio (default: 16000) */
|
|
269
|
+
int32_t sample_rate;
|
|
270
|
+
|
|
271
|
+
/** Custom options override (can be NULL) */
|
|
272
|
+
const rac_stt_options_t* options;
|
|
273
|
+
} rac_stt_input_t;
|
|
274
|
+
|
|
275
|
+
/**
|
|
276
|
+
* @brief Default STT input
|
|
277
|
+
*/
|
|
278
|
+
static const rac_stt_input_t RAC_STT_INPUT_DEFAULT = {.audio_data = RAC_NULL,
|
|
279
|
+
.audio_data_size = 0,
|
|
280
|
+
.audio_samples = RAC_NULL,
|
|
281
|
+
.num_samples = 0,
|
|
282
|
+
.format = RAC_AUDIO_FORMAT_PCM,
|
|
283
|
+
.language = RAC_NULL,
|
|
284
|
+
.sample_rate = RAC_STT_DEFAULT_SAMPLE_RATE,
|
|
285
|
+
.options = RAC_NULL};
|
|
286
|
+
|
|
287
|
+
// =============================================================================
|
|
288
|
+
// TRANSCRIPTION METADATA - Mirrors Swift's TranscriptionMetadata
|
|
289
|
+
// =============================================================================
|
|
290
|
+
|
|
291
|
+
/**
|
|
292
|
+
* @brief Transcription metadata
|
|
293
|
+
*
|
|
294
|
+
* Mirrors Swift's TranscriptionMetadata struct.
|
|
295
|
+
* See: Sources/RunAnywhere/Features/STT/Models/STTOutput.swift
|
|
296
|
+
*/
|
|
297
|
+
typedef struct rac_transcription_metadata {
|
|
298
|
+
/** Model ID used for transcription */
|
|
299
|
+
const char* model_id;
|
|
300
|
+
|
|
301
|
+
/** Processing time in milliseconds */
|
|
302
|
+
int64_t processing_time_ms;
|
|
303
|
+
|
|
304
|
+
/** Audio length in milliseconds */
|
|
305
|
+
int64_t audio_length_ms;
|
|
306
|
+
|
|
307
|
+
/** Real-time factor (processing_time / audio_length) */
|
|
308
|
+
float real_time_factor;
|
|
309
|
+
} rac_transcription_metadata_t;
|
|
310
|
+
|
|
311
|
+
// =============================================================================
|
|
312
|
+
// TRANSCRIPTION ALTERNATIVE - Mirrors Swift's TranscriptionAlternative
|
|
313
|
+
// =============================================================================
|
|
314
|
+
|
|
315
|
+
/**
|
|
316
|
+
* @brief Alternative transcription
|
|
317
|
+
*
|
|
318
|
+
* Mirrors Swift's TranscriptionAlternative struct.
|
|
319
|
+
*/
|
|
320
|
+
typedef struct rac_transcription_alternative {
|
|
321
|
+
/** Alternative transcription text */
|
|
322
|
+
const char* text;
|
|
323
|
+
|
|
324
|
+
/** Confidence score (0.0 to 1.0) */
|
|
325
|
+
float confidence;
|
|
326
|
+
} rac_transcription_alternative_t;
|
|
327
|
+
|
|
328
|
+
// =============================================================================
|
|
329
|
+
// OUTPUT - Mirrors Swift's STTOutput
|
|
330
|
+
// =============================================================================
|
|
331
|
+
|
|
332
|
+
/**
|
|
333
|
+
* @brief STT output data
|
|
334
|
+
*
|
|
335
|
+
* Mirrors Swift's STTOutput struct.
|
|
336
|
+
* See: Sources/RunAnywhere/Features/STT/Models/STTOutput.swift
|
|
337
|
+
*/
|
|
338
|
+
typedef struct rac_stt_output {
|
|
339
|
+
/** Transcribed text (owned, must be freed with rac_free) */
|
|
340
|
+
char* text;
|
|
341
|
+
|
|
342
|
+
/** Confidence score (0.0 to 1.0) */
|
|
343
|
+
float confidence;
|
|
344
|
+
|
|
345
|
+
/** Word-level timestamps (can be NULL) */
|
|
346
|
+
rac_stt_word_t* word_timestamps;
|
|
347
|
+
size_t num_word_timestamps;
|
|
348
|
+
|
|
349
|
+
/** Detected language if auto-detected (can be NULL) */
|
|
350
|
+
char* detected_language;
|
|
351
|
+
|
|
352
|
+
/** Alternative transcriptions (can be NULL) */
|
|
353
|
+
rac_transcription_alternative_t* alternatives;
|
|
354
|
+
size_t num_alternatives;
|
|
355
|
+
|
|
356
|
+
/** Processing metadata */
|
|
357
|
+
rac_transcription_metadata_t metadata;
|
|
358
|
+
|
|
359
|
+
/** Timestamp in milliseconds since epoch */
|
|
360
|
+
int64_t timestamp_ms;
|
|
361
|
+
} rac_stt_output_t;
|
|
362
|
+
|
|
363
|
+
// =============================================================================
|
|
364
|
+
// TRANSCRIPTION RESULT - Alias for compatibility
|
|
365
|
+
// =============================================================================
|
|
366
|
+
|
|
367
|
+
/**
|
|
368
|
+
* @brief STT transcription result (alias for rac_stt_output_t)
|
|
369
|
+
*
|
|
370
|
+
* For compatibility with existing code that uses "result" terminology.
|
|
371
|
+
*/
|
|
372
|
+
typedef rac_stt_output_t rac_stt_transcription_result_t;
|
|
373
|
+
|
|
374
|
+
// =============================================================================
|
|
375
|
+
// MEMORY MANAGEMENT
|
|
376
|
+
// =============================================================================
|
|
377
|
+
|
|
378
|
+
/**
|
|
379
|
+
* @brief Free STT result resources
|
|
380
|
+
*
|
|
381
|
+
* @param result Result to free (can be NULL)
|
|
382
|
+
*/
|
|
383
|
+
RAC_API void rac_stt_result_free(rac_stt_result_t* result);
|
|
384
|
+
|
|
385
|
+
#ifdef __cplusplus
|
|
386
|
+
}
|
|
387
|
+
#endif
|
|
388
|
+
|
|
389
|
+
#endif /* RAC_STT_TYPES_H */
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file rac_stt_whispercpp.h
|
|
3
|
+
* @brief RunAnywhere Core - WhisperCPP Backend for STT
|
|
4
|
+
*
|
|
5
|
+
* RAC API for WhisperCPP-based speech-to-text.
|
|
6
|
+
* Provides high-quality transcription using whisper.cpp.
|
|
7
|
+
*
|
|
8
|
+
* NOTE: WhisperCPP and LlamaCPP both use GGML, which can cause symbol
|
|
9
|
+
* conflicts if linked together. Use ONNX Whisper for STT when also
|
|
10
|
+
* using LlamaCPP for LLM, or build with symbol prefixing.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
#ifndef RAC_STT_WHISPERCPP_H
|
|
14
|
+
#define RAC_STT_WHISPERCPP_H
|
|
15
|
+
|
|
16
|
+
#include <RACommons/rac_error.h>
|
|
17
|
+
#include <RACommons/rac_types.h>
|
|
18
|
+
#include <RACommons/rac_stt.h>
|
|
19
|
+
|
|
20
|
+
#ifdef __cplusplus
|
|
21
|
+
extern "C" {
|
|
22
|
+
#endif
|
|
23
|
+
|
|
24
|
+
// =============================================================================
|
|
25
|
+
// EXPORT MACRO
|
|
26
|
+
// =============================================================================
|
|
27
|
+
|
|
28
|
+
#if defined(RAC_WHISPERCPP_BUILDING)
|
|
29
|
+
#if defined(_WIN32)
|
|
30
|
+
#define RAC_WHISPERCPP_API __declspec(dllexport)
|
|
31
|
+
#elif defined(__GNUC__) || defined(__clang__)
|
|
32
|
+
#define RAC_WHISPERCPP_API __attribute__((visibility("default")))
|
|
33
|
+
#else
|
|
34
|
+
#define RAC_WHISPERCPP_API
|
|
35
|
+
#endif
|
|
36
|
+
#else
|
|
37
|
+
#define RAC_WHISPERCPP_API
|
|
38
|
+
#endif
|
|
39
|
+
|
|
40
|
+
// =============================================================================
|
|
41
|
+
// CONFIGURATION
|
|
42
|
+
// =============================================================================
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* WhisperCPP-specific configuration.
|
|
46
|
+
*/
|
|
47
|
+
typedef struct rac_stt_whispercpp_config {
|
|
48
|
+
/** Number of threads (0 = auto) */
|
|
49
|
+
int32_t num_threads;
|
|
50
|
+
|
|
51
|
+
/** Enable GPU acceleration (Metal on Apple) */
|
|
52
|
+
rac_bool_t use_gpu;
|
|
53
|
+
|
|
54
|
+
/** Enable CoreML acceleration (Apple only) */
|
|
55
|
+
rac_bool_t use_coreml;
|
|
56
|
+
|
|
57
|
+
/** Language code for transcription (NULL = auto-detect) */
|
|
58
|
+
const char* language;
|
|
59
|
+
|
|
60
|
+
/** Translate to English (when source is non-English) */
|
|
61
|
+
rac_bool_t translate;
|
|
62
|
+
} rac_stt_whispercpp_config_t;
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Default WhisperCPP configuration.
|
|
66
|
+
*/
|
|
67
|
+
static const rac_stt_whispercpp_config_t RAC_STT_WHISPERCPP_CONFIG_DEFAULT = {
|
|
68
|
+
.num_threads = 0,
|
|
69
|
+
.use_gpu = RAC_TRUE,
|
|
70
|
+
.use_coreml = RAC_TRUE,
|
|
71
|
+
.language = NULL,
|
|
72
|
+
.translate = RAC_FALSE};
|
|
73
|
+
|
|
74
|
+
// =============================================================================
|
|
75
|
+
// WHISPERCPP STT API
|
|
76
|
+
// =============================================================================
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Creates a WhisperCPP STT service.
|
|
80
|
+
*
|
|
81
|
+
* @param model_path Path to the Whisper GGML model file (.bin)
|
|
82
|
+
* @param config WhisperCPP-specific configuration (can be NULL for defaults)
|
|
83
|
+
* @param out_handle Output: Handle to the created service
|
|
84
|
+
* @return RAC_SUCCESS or error code
|
|
85
|
+
*/
|
|
86
|
+
RAC_WHISPERCPP_API rac_result_t rac_stt_whispercpp_create(const char* model_path,
|
|
87
|
+
const rac_stt_whispercpp_config_t* config,
|
|
88
|
+
rac_handle_t* out_handle);
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Transcribes audio data.
|
|
92
|
+
*
|
|
93
|
+
* @param handle Service handle
|
|
94
|
+
* @param audio_samples Float32 PCM samples (16kHz mono)
|
|
95
|
+
* @param num_samples Number of samples
|
|
96
|
+
* @param options STT options (can be NULL for defaults)
|
|
97
|
+
* @param out_result Output: Transcription result
|
|
98
|
+
* @return RAC_SUCCESS or error code
|
|
99
|
+
*/
|
|
100
|
+
RAC_WHISPERCPP_API rac_result_t rac_stt_whispercpp_transcribe(rac_handle_t handle,
|
|
101
|
+
const float* audio_samples,
|
|
102
|
+
size_t num_samples,
|
|
103
|
+
const rac_stt_options_t* options,
|
|
104
|
+
rac_stt_result_t* out_result);
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Gets detected language after transcription.
|
|
108
|
+
*
|
|
109
|
+
* @param handle Service handle
|
|
110
|
+
* @param out_language Output: Language code (caller must free)
|
|
111
|
+
* @return RAC_SUCCESS or error code
|
|
112
|
+
*/
|
|
113
|
+
RAC_WHISPERCPP_API rac_result_t rac_stt_whispercpp_get_language(rac_handle_t handle,
|
|
114
|
+
char** out_language);
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Checks if model is loaded and ready.
|
|
118
|
+
*
|
|
119
|
+
* @param handle Service handle
|
|
120
|
+
* @return RAC_TRUE if ready
|
|
121
|
+
*/
|
|
122
|
+
RAC_WHISPERCPP_API rac_bool_t rac_stt_whispercpp_is_ready(rac_handle_t handle);
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Destroys a WhisperCPP STT service.
|
|
126
|
+
*
|
|
127
|
+
* @param handle Service handle to destroy
|
|
128
|
+
*/
|
|
129
|
+
RAC_WHISPERCPP_API void rac_stt_whispercpp_destroy(rac_handle_t handle);
|
|
130
|
+
|
|
131
|
+
// =============================================================================
|
|
132
|
+
// BACKEND REGISTRATION
|
|
133
|
+
// =============================================================================
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Registers the WhisperCPP backend with the commons module and service registries.
|
|
137
|
+
*
|
|
138
|
+
* @return RAC_SUCCESS or error code
|
|
139
|
+
*/
|
|
140
|
+
RAC_WHISPERCPP_API rac_result_t rac_backend_whispercpp_register(void);
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Unregisters the WhisperCPP backend.
|
|
144
|
+
*
|
|
145
|
+
* @return RAC_SUCCESS or error code
|
|
146
|
+
*/
|
|
147
|
+
RAC_WHISPERCPP_API rac_result_t rac_backend_whispercpp_unregister(void);
|
|
148
|
+
|
|
149
|
+
#ifdef __cplusplus
|
|
150
|
+
}
|
|
151
|
+
#endif
|
|
152
|
+
|
|
153
|
+
#endif /* RAC_STT_WHISPERCPP_H */
|