@pipedog/core 0.0.0 → 0.1.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/LICENSE +25 -0
- package/NOTICE +9 -0
- package/dist/adapters/base_llm_adapter.d.ts +266 -0
- package/dist/adapters/base_llm_adapter.js +489 -0
- package/dist/adapters/index.d.ts +2 -0
- package/dist/adapters/index.js +8 -0
- package/dist/adapters/schemas/direct_function.d.ts +202 -0
- package/dist/adapters/schemas/direct_function.js +302 -0
- package/dist/adapters/schemas/function_schema.d.ts +67 -0
- package/dist/adapters/schemas/function_schema.js +72 -0
- package/dist/adapters/schemas/index.d.ts +2 -0
- package/dist/adapters/schemas/index.js +8 -0
- package/dist/adapters/schemas/tools_schema.d.ts +57 -0
- package/dist/adapters/schemas/tools_schema.js +79 -0
- package/dist/adapters/services/index.d.ts +2 -0
- package/dist/adapters/services/index.js +8 -0
- package/dist/adapters/services/open_ai_adapter.d.ts +147 -0
- package/dist/adapters/services/open_ai_adapter.js +250 -0
- package/dist/audio/dtmf/dtmf_data.d.ts +3 -0
- package/dist/audio/dtmf/dtmf_data.js +22 -0
- package/dist/audio/dtmf/index.d.ts +2 -0
- package/dist/audio/dtmf/index.js +8 -0
- package/dist/audio/dtmf/types.d.ts +31 -0
- package/dist/audio/dtmf/types.js +35 -0
- package/dist/audio/dtmf/utils.d.ts +13 -0
- package/dist/audio/dtmf/utils.js +62 -0
- package/dist/audio/filters/base_audio_filter.d.ts +51 -0
- package/dist/audio/filters/base_audio_filter.js +17 -0
- package/dist/audio/filters/index.d.ts +2 -0
- package/dist/audio/filters/index.js +8 -0
- package/dist/audio/index.d.ts +2 -0
- package/dist/audio/index.js +8 -0
- package/dist/audio/krisp_instance.d.ts +95 -0
- package/dist/audio/krisp_instance.js +229 -0
- package/dist/audio/mixers/base_audio_mixer.d.ts +56 -0
- package/dist/audio/mixers/base_audio_mixer.js +16 -0
- package/dist/audio/mixers/index.d.ts +2 -0
- package/dist/audio/mixers/index.js +8 -0
- package/dist/audio/resamplers/base_audio_resampler.d.ts +46 -0
- package/dist/audio/resamplers/base_audio_resampler.js +35 -0
- package/dist/audio/resamplers/index.d.ts +2 -0
- package/dist/audio/resamplers/index.js +8 -0
- package/dist/audio/resamplers/resampy_resampler.d.ts +10 -0
- package/dist/audio/resamplers/resampy_resampler.js +15 -0
- package/dist/audio/resamplers/soxr_resampler.d.ts +54 -0
- package/dist/audio/resamplers/soxr_resampler.js +69 -0
- package/dist/audio/resamplers/soxr_stream_resampler.d.ts +75 -0
- package/dist/audio/resamplers/soxr_stream_resampler.js +146 -0
- package/dist/audio/turn/base_turn_analyzer.d.ts +84 -0
- package/dist/audio/turn/base_turn_analyzer.js +61 -0
- package/dist/audio/turn/index.d.ts +2 -0
- package/dist/audio/turn/index.js +8 -0
- package/dist/audio/turn/smart_turn/_whisper_features.d.ts +30 -0
- package/dist/audio/turn/smart_turn/_whisper_features.js +225 -0
- package/dist/audio/turn/smart_turn/base_smart_turn.d.ts +94 -0
- package/dist/audio/turn/smart_turn/base_smart_turn.js +239 -0
- package/dist/audio/turn/smart_turn/local_smart_turn_v3.d.ts +76 -0
- package/dist/audio/turn/smart_turn/local_smart_turn_v3.js +143 -0
- package/dist/audio/utils.d.ts +224 -0
- package/dist/audio/utils.js +634 -0
- package/dist/audio/vad/data/index.d.ts +2 -0
- package/dist/audio/vad/data/index.js +8 -0
- package/dist/audio/vad/index.d.ts +2 -0
- package/dist/audio/vad/index.js +8 -0
- package/dist/audio/vad/vad_analyzer.d.ts +126 -0
- package/dist/audio/vad/vad_analyzer.js +211 -0
- package/dist/audio/vad/vad_controller.d.ts +143 -0
- package/dist/audio/vad/vad_controller.js +228 -0
- package/dist/audio/volume.d.ts +38 -0
- package/dist/audio/volume.js +75 -0
- package/dist/bus/adapters/base.d.ts +35 -0
- package/dist/bus/adapters/base.js +19 -0
- package/dist/bus/adapters/index.d.ts +10 -0
- package/dist/bus/adapters/index.js +15 -0
- package/dist/bus/adapters/llm_context_adapter.d.ts +36 -0
- package/dist/bus/adapters/llm_context_adapter.js +82 -0
- package/dist/bus/adapters/tools_schema_adapter.d.ts +25 -0
- package/dist/bus/adapters/tools_schema_adapter.js +70 -0
- package/dist/bus/bridge_processor.d.ts +111 -0
- package/dist/bus/bridge_processor.js +166 -0
- package/dist/bus/bus.d.ts +110 -0
- package/dist/bus/bus.js +200 -0
- package/dist/bus/index.d.ts +22 -0
- package/dist/bus/index.js +27 -0
- package/dist/bus/local/async_queue.d.ts +12 -0
- package/dist/bus/local/async_queue.js +21 -0
- package/dist/bus/local/index.d.ts +3 -0
- package/dist/bus/local/index.js +8 -0
- package/dist/bus/messages.d.ts +378 -0
- package/dist/bus/messages.js +357 -0
- package/dist/bus/network/index.d.ts +16 -0
- package/dist/bus/network/index.js +21 -0
- package/dist/bus/queue.d.ts +27 -0
- package/dist/bus/queue.js +51 -0
- package/dist/bus/serializers/base.d.ts +25 -0
- package/dist/bus/serializers/base.js +14 -0
- package/dist/bus/serializers/index.d.ts +9 -0
- package/dist/bus/serializers/index.js +14 -0
- package/dist/bus/serializers/json.d.ts +77 -0
- package/dist/bus/serializers/json.js +367 -0
- package/dist/bus/subscriber.d.ts +46 -0
- package/dist/bus/subscriber.js +27 -0
- package/dist/bus/ui/index.d.ts +3 -0
- package/dist/bus/ui/index.js +8 -0
- package/dist/bus/ui/messages.d.ts +186 -0
- package/dist/bus/ui/messages.js +171 -0
- package/dist/classifiers/base_classifier.d.ts +263 -0
- package/dist/classifiers/base_classifier.js +346 -0
- package/dist/classifiers/cloudflare/clef/classifier.d.ts +70 -0
- package/dist/classifiers/cloudflare/clef/classifier.js +204 -0
- package/dist/classifiers/cloudflare/clef/client.d.ts +104 -0
- package/dist/classifiers/cloudflare/clef/client.js +234 -0
- package/dist/classifiers/cloudflare/clef/index.d.ts +2 -0
- package/dist/classifiers/cloudflare/clef/index.js +8 -0
- package/dist/classifiers/cloudflare/index.d.ts +2 -0
- package/dist/classifiers/cloudflare/index.js +8 -0
- package/dist/classifiers/http_client.d.ts +70 -0
- package/dist/classifiers/http_client.js +161 -0
- package/dist/classifiers/index.d.ts +2 -0
- package/dist/classifiers/index.js +8 -0
- package/dist/classifiers/jev/classifier.d.ts +8 -0
- package/dist/classifiers/jev/classifier.js +13 -0
- package/dist/classifiers/jev/client.d.ts +8 -0
- package/dist/classifiers/jev/client.js +13 -0
- package/dist/classifiers/jev/index.d.ts +2 -0
- package/dist/classifiers/jev/index.js +8 -0
- package/dist/classifiers/llm/classifier.d.ts +72 -0
- package/dist/classifiers/llm/classifier.js +304 -0
- package/dist/classifiers/llm/index.d.ts +2 -0
- package/dist/classifiers/llm/index.js +8 -0
- package/dist/classifiers/openai/decisions/classifier.d.ts +77 -0
- package/dist/classifiers/openai/decisions/classifier.js +241 -0
- package/dist/classifiers/openai/decisions/client.d.ts +108 -0
- package/dist/classifiers/openai/decisions/client.js +234 -0
- package/dist/classifiers/openai/decisions/index.d.ts +2 -0
- package/dist/classifiers/openai/decisions/index.js +8 -0
- package/dist/classifiers/openai/index.d.ts +2 -0
- package/dist/classifiers/openai/index.js +8 -0
- package/dist/classifiers/typesafe/index.d.ts +2 -0
- package/dist/classifiers/typesafe/index.js +8 -0
- package/dist/classifiers/typesafe/jev/classifier.d.ts +70 -0
- package/dist/classifiers/typesafe/jev/classifier.js +220 -0
- package/dist/classifiers/typesafe/jev/client.d.ts +105 -0
- package/dist/classifiers/typesafe/jev/client.js +233 -0
- package/dist/classifiers/typesafe/jev/index.d.ts +2 -0
- package/dist/classifiers/typesafe/jev/index.js +8 -0
- package/dist/clocks/base_clock.d.ts +13 -0
- package/dist/clocks/base_clock.js +14 -0
- package/dist/clocks/index.d.ts +2 -0
- package/dist/clocks/index.js +8 -0
- package/dist/clocks/system_clock.d.ts +15 -0
- package/dist/clocks/system_clock.js +25 -0
- package/dist/frames/frames.d.ts +2533 -0
- package/dist/frames/frames.js +2485 -0
- package/dist/frames/index.d.ts +2 -0
- package/dist/frames/index.js +8 -0
- package/dist/frames/protobufs/frames_pb2.d.ts +229 -0
- package/dist/frames/protobufs/frames_pb2.js +466 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +56 -0
- package/dist/metrics/index.d.ts +2 -0
- package/dist/metrics/index.js +8 -0
- package/dist/metrics/metrics.d.ts +276 -0
- package/dist/metrics/metrics.js +254 -0
- package/dist/observers/base_observer.d.ts +173 -0
- package/dist/observers/base_observer.js +151 -0
- package/dist/observers/error_observer.d.ts +75 -0
- package/dist/observers/error_observer.js +87 -0
- package/dist/observers/function_call_observer.d.ts +157 -0
- package/dist/observers/function_call_observer.js +222 -0
- package/dist/observers/index.d.ts +2 -0
- package/dist/observers/index.js +8 -0
- package/dist/observers/loggers/debug_log_observer.d.ts +91 -0
- package/dist/observers/loggers/debug_log_observer.js +228 -0
- package/dist/observers/loggers/index.d.ts +2 -0
- package/dist/observers/loggers/index.js +8 -0
- package/dist/observers/loggers/llm_log_observer.d.ts +24 -0
- package/dist/observers/loggers/llm_log_observer.js +110 -0
- package/dist/observers/loggers/metrics_log_observer.d.ts +85 -0
- package/dist/observers/loggers/metrics_log_observer.js +186 -0
- package/dist/observers/loggers/transcription_log_observer.d.ts +23 -0
- package/dist/observers/loggers/transcription_log_observer.js +74 -0
- package/dist/observers/service_metrics_observer.d.ts +168 -0
- package/dist/observers/service_metrics_observer.js +236 -0
- package/dist/observers/speaking_observer.d.ts +104 -0
- package/dist/observers/speaking_observer.js +150 -0
- package/dist/observers/startup_timing_observer.d.ts +221 -0
- package/dist/observers/startup_timing_observer.js +365 -0
- package/dist/observers/turn_tracking_observer.d.ts +78 -0
- package/dist/observers/turn_tracking_observer.js +189 -0
- package/dist/observers/user_bot_latency_observer.d.ts +411 -0
- package/dist/observers/user_bot_latency_observer.js +974 -0
- package/dist/pipeline/base_pipeline.d.ts +49 -0
- package/dist/pipeline/base_pipeline.js +101 -0
- package/dist/pipeline/capabilities.d.ts +76 -0
- package/dist/pipeline/capabilities.js +97 -0
- package/dist/pipeline/index.d.ts +2 -0
- package/dist/pipeline/index.js +8 -0
- package/dist/pipeline/job_context.d.ts +317 -0
- package/dist/pipeline/job_context.js +450 -0
- package/dist/pipeline/job_decorator.d.ts +54 -0
- package/dist/pipeline/job_decorator.js +92 -0
- package/dist/pipeline/llm_switcher.d.ts +84 -0
- package/dist/pipeline/llm_switcher.js +107 -0
- package/dist/pipeline/llm_with_backend.d.ts +435 -0
- package/dist/pipeline/llm_with_backend.js +806 -0
- package/dist/pipeline/parallel_pipeline.d.ts +83 -0
- package/dist/pipeline/parallel_pipeline.js +200 -0
- package/dist/pipeline/pipeline.d.ts +126 -0
- package/dist/pipeline/pipeline.js +196 -0
- package/dist/pipeline/service_switcher.d.ts +287 -0
- package/dist/pipeline/service_switcher.js +509 -0
- package/dist/pipeline/sync_parallel_pipeline.d.ts +192 -0
- package/dist/pipeline/sync_parallel_pipeline.js +387 -0
- package/dist/pipeline/worker.d.ts +814 -0
- package/dist/pipeline/worker.js +1639 -0
- package/dist/pipeline/worker_observer.d.ts +131 -0
- package/dist/pipeline/worker_observer.js +274 -0
- package/dist/pipeline/worker_ready_decorator.d.ts +45 -0
- package/dist/pipeline/worker_ready_decorator.js +76 -0
- package/dist/processors/aggregators/async_tool_messages.d.ts +146 -0
- package/dist/processors/aggregators/async_tool_messages.js +291 -0
- package/dist/processors/aggregators/dtmf_aggregator.d.ts +61 -0
- package/dist/processors/aggregators/dtmf_aggregator.js +144 -0
- package/dist/processors/aggregators/gated.d.ts +43 -0
- package/dist/processors/aggregators/gated.js +86 -0
- package/dist/processors/aggregators/gated_llm_context.d.ts +42 -0
- package/dist/processors/aggregators/gated_llm_context.js +86 -0
- package/dist/processors/aggregators/index.d.ts +2 -0
- package/dist/processors/aggregators/index.js +8 -0
- package/dist/processors/aggregators/llm_context.d.ts +370 -0
- package/dist/processors/aggregators/llm_context.js +580 -0
- package/dist/processors/aggregators/llm_context_summarizer.d.ts +219 -0
- package/dist/processors/aggregators/llm_context_summarizer.js +447 -0
- package/dist/processors/aggregators/llm_response.d.ts +37 -0
- package/dist/processors/aggregators/llm_response.js +71 -0
- package/dist/processors/aggregators/llm_response_universal.d.ts +966 -0
- package/dist/processors/aggregators/llm_response_universal.js +2394 -0
- package/dist/processors/aggregators/llm_text_processor.d.ts +53 -0
- package/dist/processors/aggregators/llm_text_processor.js +102 -0
- package/dist/processors/aggregators/sentence.d.ts +39 -0
- package/dist/processors/aggregators/sentence.js +69 -0
- package/dist/processors/async_generator.d.ts +42 -0
- package/dist/processors/async_generator.js +76 -0
- package/dist/processors/audio/audio_buffer_processor.d.ts +241 -0
- package/dist/processors/audio/audio_buffer_processor.js +565 -0
- package/dist/processors/audio/index.d.ts +2 -0
- package/dist/processors/audio/index.js +8 -0
- package/dist/processors/audio/vad_processor.d.ts +67 -0
- package/dist/processors/audio/vad_processor.js +103 -0
- package/dist/processors/consumer_processor.d.ts +49 -0
- package/dist/processors/consumer_processor.js +85 -0
- package/dist/processors/filters/frame_filter.d.ts +39 -0
- package/dist/processors/filters/frame_filter.js +52 -0
- package/dist/processors/filters/function_filter.d.ts +59 -0
- package/dist/processors/filters/function_filter.js +78 -0
- package/dist/processors/filters/identity_filter.d.ts +33 -0
- package/dist/processors/filters/identity_filter.js +37 -0
- package/dist/processors/filters/index.d.ts +2 -0
- package/dist/processors/filters/index.js +8 -0
- package/dist/processors/filters/null_filter.d.ts +34 -0
- package/dist/processors/filters/null_filter.js +47 -0
- package/dist/processors/filters/wake_notifier_filter.d.ts +48 -0
- package/dist/processors/filters/wake_notifier_filter.js +49 -0
- package/dist/processors/frame_processor.d.ts +360 -0
- package/dist/processors/frame_processor.js +932 -0
- package/dist/processors/frameworks/index.d.ts +2 -0
- package/dist/processors/frameworks/index.js +8 -0
- package/dist/processors/frameworks/rtvi/frames.d.ts +241 -0
- package/dist/processors/frameworks/rtvi/frames.js +259 -0
- package/dist/processors/frameworks/rtvi/index.d.ts +6 -0
- package/dist/processors/frameworks/rtvi/index.js +11 -0
- package/dist/processors/frameworks/rtvi/models.d.ts +1741 -0
- package/dist/processors/frameworks/rtvi/models.js +1807 -0
- package/dist/processors/frameworks/rtvi/observer.d.ts +340 -0
- package/dist/processors/frameworks/rtvi/observer.js +1113 -0
- package/dist/processors/frameworks/rtvi/processor.d.ts +182 -0
- package/dist/processors/frameworks/rtvi/processor.js +676 -0
- package/dist/processors/idle_frame_processor.d.ts +44 -0
- package/dist/processors/idle_frame_processor.js +86 -0
- package/dist/processors/index.d.ts +2 -0
- package/dist/processors/index.js +8 -0
- package/dist/processors/logger.d.ts +42 -0
- package/dist/processors/logger.js +87 -0
- package/dist/processors/metrics/frame_processor_metrics.d.ts +172 -0
- package/dist/processors/metrics/frame_processor_metrics.js +372 -0
- package/dist/processors/metrics/index.d.ts +2 -0
- package/dist/processors/metrics/index.js +8 -0
- package/dist/processors/producer_processor.d.ts +68 -0
- package/dist/processors/producer_processor.js +78 -0
- package/dist/processors/text_transformer.d.ts +30 -0
- package/dist/processors/text_transformer.js +48 -0
- package/dist/registry/index.d.ts +3 -0
- package/dist/registry/index.js +8 -0
- package/dist/registry/registry.d.ts +69 -0
- package/dist/registry/registry.js +149 -0
- package/dist/registry/types.d.ts +47 -0
- package/dist/registry/types.js +39 -0
- package/dist/serializers/base_serializer.d.ts +94 -0
- package/dist/serializers/base_serializer.js +82 -0
- package/dist/serializers/index.d.ts +2 -0
- package/dist/serializers/index.js +8 -0
- package/dist/services/ai_service.d.ts +145 -0
- package/dist/services/ai_service.js +262 -0
- package/dist/services/anthropic/index.d.ts +2 -0
- package/dist/services/anthropic/index.js +7 -0
- package/dist/services/assemblyai/index.d.ts +2 -0
- package/dist/services/assemblyai/index.js +7 -0
- package/dist/services/asyncai/index.d.ts +2 -0
- package/dist/services/asyncai/index.js +7 -0
- package/dist/services/aws/index.d.ts +2 -0
- package/dist/services/aws/index.js +7 -0
- package/dist/services/azure/index.d.ts +2 -0
- package/dist/services/azure/index.js +7 -0
- package/dist/services/baseten/index.d.ts +2 -0
- package/dist/services/baseten/index.js +7 -0
- package/dist/services/bland/index.d.ts +2 -0
- package/dist/services/bland/index.js +7 -0
- package/dist/services/camb/index.d.ts +2 -0
- package/dist/services/camb/index.js +7 -0
- package/dist/services/cartesia/index.d.ts +2 -0
- package/dist/services/cartesia/index.js +7 -0
- package/dist/services/cerebras/index.d.ts +2 -0
- package/dist/services/cerebras/index.js +7 -0
- package/dist/services/crusoe/index.d.ts +2 -0
- package/dist/services/crusoe/index.js +7 -0
- package/dist/services/deepgram/index.d.ts +2 -0
- package/dist/services/deepgram/index.js +7 -0
- package/dist/services/deepseek/index.d.ts +2 -0
- package/dist/services/deepseek/index.js +7 -0
- package/dist/services/elevenlabs/index.d.ts +2 -0
- package/dist/services/elevenlabs/index.js +7 -0
- package/dist/services/fal/index.d.ts +2 -0
- package/dist/services/fal/index.js +7 -0
- package/dist/services/fireworks/index.d.ts +2 -0
- package/dist/services/fireworks/index.js +7 -0
- package/dist/services/fish/index.d.ts +2 -0
- package/dist/services/fish/index.js +7 -0
- package/dist/services/funasr/index.d.ts +3 -0
- package/dist/services/funasr/index.js +8 -0
- package/dist/services/gladia/index.d.ts +2 -0
- package/dist/services/gladia/index.js +7 -0
- package/dist/services/google/index.d.ts +2 -0
- package/dist/services/google/index.js +7 -0
- package/dist/services/gradium/index.d.ts +2 -0
- package/dist/services/gradium/index.js +7 -0
- package/dist/services/grok/index.d.ts +2 -0
- package/dist/services/grok/index.js +7 -0
- package/dist/services/groq/index.d.ts +2 -0
- package/dist/services/groq/index.js +7 -0
- package/dist/services/heygen/index.d.ts +2 -0
- package/dist/services/heygen/index.js +7 -0
- package/dist/services/hume/index.d.ts +2 -0
- package/dist/services/hume/index.js +7 -0
- package/dist/services/image_service.d.ts +52 -0
- package/dist/services/image_service.js +60 -0
- package/dist/services/inception/index.d.ts +2 -0
- package/dist/services/inception/index.js +7 -0
- package/dist/services/index.d.ts +2 -0
- package/dist/services/index.js +8 -0
- package/dist/services/inworld/index.d.ts +2 -0
- package/dist/services/inworld/index.js +7 -0
- package/dist/services/keenable/index.d.ts +2 -0
- package/dist/services/keenable/index.js +7 -0
- package/dist/services/kokoro/index.d.ts +2 -0
- package/dist/services/kokoro/index.js +7 -0
- package/dist/services/llm_service.d.ts +1106 -0
- package/dist/services/llm_service.js +2231 -0
- package/dist/services/mem0/index.d.ts +2 -0
- package/dist/services/mem0/index.js +7 -0
- package/dist/services/meta/index.d.ts +2 -0
- package/dist/services/meta/index.js +7 -0
- package/dist/services/minimax/index.d.ts +2 -0
- package/dist/services/minimax/index.js +7 -0
- package/dist/services/mistral/index.d.ts +2 -0
- package/dist/services/mistral/index.js +7 -0
- package/dist/services/moondream/index.d.ts +2 -0
- package/dist/services/moondream/index.js +7 -0
- package/dist/services/moonshine/index.d.ts +2 -0
- package/dist/services/moonshine/index.js +7 -0
- package/dist/services/nebius/index.d.ts +2 -0
- package/dist/services/nebius/index.js +7 -0
- package/dist/services/neuphonic/index.d.ts +2 -0
- package/dist/services/neuphonic/index.js +7 -0
- package/dist/services/novita/index.d.ts +2 -0
- package/dist/services/novita/index.js +7 -0
- package/dist/services/nvidia/index.d.ts +2 -0
- package/dist/services/nvidia/index.js +11 -0
- package/dist/services/ollama/index.d.ts +2 -0
- package/dist/services/ollama/index.js +7 -0
- package/dist/services/openai/index.d.ts +2 -0
- package/dist/services/openai/index.js +7 -0
- package/dist/services/openclaw/index.d.ts +14 -0
- package/dist/services/openclaw/index.js +19 -0
- package/dist/services/openrouter/index.d.ts +2 -0
- package/dist/services/openrouter/index.js +7 -0
- package/dist/services/perplexity/index.d.ts +2 -0
- package/dist/services/perplexity/index.js +7 -0
- package/dist/services/piper/index.d.ts +2 -0
- package/dist/services/piper/index.js +7 -0
- package/dist/services/pocket_tts/index.d.ts +2 -0
- package/dist/services/pocket_tts/index.js +7 -0
- package/dist/services/qwen/index.d.ts +2 -0
- package/dist/services/qwen/index.js +7 -0
- package/dist/services/resembleai/index.d.ts +2 -0
- package/dist/services/resembleai/index.js +7 -0
- package/dist/services/rime/index.d.ts +2 -0
- package/dist/services/rime/index.js +7 -0
- package/dist/services/sambanova/index.d.ts +2 -0
- package/dist/services/sambanova/index.js +7 -0
- package/dist/services/sarvam/index.d.ts +2 -0
- package/dist/services/sarvam/index.js +7 -0
- package/dist/services/settings.d.ts +356 -0
- package/dist/services/settings.js +437 -0
- package/dist/services/simli/index.d.ts +2 -0
- package/dist/services/simli/index.js +7 -0
- package/dist/services/smallest/index.d.ts +2 -0
- package/dist/services/smallest/index.js +7 -0
- package/dist/services/soniox/index.d.ts +2 -0
- package/dist/services/soniox/index.js +7 -0
- package/dist/services/speechify/index.d.ts +2 -0
- package/dist/services/speechify/index.js +7 -0
- package/dist/services/speechmatics/index.d.ts +2 -0
- package/dist/services/speechmatics/index.js +7 -0
- package/dist/services/stt_latency.d.ts +62 -0
- package/dist/services/stt_latency.js +71 -0
- package/dist/services/stt_service.d.ts +601 -0
- package/dist/services/stt_service.js +1044 -0
- package/dist/services/tavus/index.d.ts +2 -0
- package/dist/services/tavus/index.js +7 -0
- package/dist/services/together/index.d.ts +2 -0
- package/dist/services/together/index.js +7 -0
- package/dist/services/tts_service.d.ts +909 -0
- package/dist/services/tts_service.js +2018 -0
- package/dist/services/ultravox/index.d.ts +2 -0
- package/dist/services/ultravox/index.js +9 -0
- package/dist/services/vision_service.d.ts +56 -0
- package/dist/services/vision_service.js +62 -0
- package/dist/services/websocket_service.d.ts +213 -0
- package/dist/services/websocket_service.js +654 -0
- package/dist/services/whisper/index.d.ts +2 -0
- package/dist/services/whisper/index.js +9 -0
- package/dist/services/xai/index.d.ts +2 -0
- package/dist/services/xai/index.js +9 -0
- package/dist/services/xtts/index.d.ts +2 -0
- package/dist/services/xtts/index.js +9 -0
- package/dist/tests/index.d.ts +2 -0
- package/dist/tests/index.js +8 -0
- package/dist/tests/utils.d.ts +123 -0
- package/dist/tests/utils.js +212 -0
- package/dist/transcriptions/index.d.ts +2 -0
- package/dist/transcriptions/index.js +8 -0
- package/dist/transcriptions/language.d.ts +376 -0
- package/dist/transcriptions/language.js +543 -0
- package/dist/transports/base_input.d.ts +149 -0
- package/dist/transports/base_input.js +338 -0
- package/dist/transports/base_output.d.ts +432 -0
- package/dist/transports/base_output.js +1231 -0
- package/dist/transports/base_transport.d.ts +223 -0
- package/dist/transports/base_transport.js +167 -0
- package/dist/transports/daily/index.d.ts +2 -0
- package/dist/transports/daily/index.js +9 -0
- package/dist/transports/heygen/index.d.ts +2 -0
- package/dist/transports/heygen/index.js +9 -0
- package/dist/transports/index.d.ts +2 -0
- package/dist/transports/index.js +8 -0
- package/dist/transports/lemonslice/index.d.ts +2 -0
- package/dist/transports/lemonslice/index.js +9 -0
- package/dist/transports/livekit/index.d.ts +2 -0
- package/dist/transports/livekit/index.js +9 -0
- package/dist/transports/local/index.d.ts +2 -0
- package/dist/transports/local/index.js +9 -0
- package/dist/transports/moq/index.d.ts +2 -0
- package/dist/transports/moq/index.js +9 -0
- package/dist/transports/smallwebrtc/index.d.ts +2 -0
- package/dist/transports/smallwebrtc/index.js +9 -0
- package/dist/transports/tavus/index.d.ts +2 -0
- package/dist/transports/tavus/index.js +9 -0
- package/dist/transports/video_in_sampler.d.ts +157 -0
- package/dist/transports/video_in_sampler.js +258 -0
- package/dist/transports/vonage/index.d.ts +2 -0
- package/dist/transports/vonage/index.js +9 -0
- package/dist/transports/websocket/index.d.ts +2 -0
- package/dist/transports/websocket/index.js +9 -0
- package/dist/transports/whatsapp/index.d.ts +2 -0
- package/dist/transports/whatsapp/index.js +9 -0
- package/dist/turns/eager_end_of_turn_mixin.d.ts +70 -0
- package/dist/turns/eager_end_of_turn_mixin.js +122 -0
- package/dist/turns/empty_user_turn.d.ts +55 -0
- package/dist/turns/empty_user_turn.js +53 -0
- package/dist/turns/index.d.ts +2 -0
- package/dist/turns/index.js +8 -0
- package/dist/turns/speculation_gate.d.ts +169 -0
- package/dist/turns/speculation_gate.js +294 -0
- package/dist/turns/types.d.ts +33 -0
- package/dist/turns/types.js +35 -0
- package/dist/turns/user_idle_controller.d.ts +94 -0
- package/dist/turns/user_idle_controller.js +187 -0
- package/dist/turns/user_mute/always_user_mute_strategy.d.ts +15 -0
- package/dist/turns/user_mute/always_user_mute_strategy.js +29 -0
- package/dist/turns/user_mute/base_user_mute_strategy.d.ts +39 -0
- package/dist/turns/user_mute/base_user_mute_strategy.js +45 -0
- package/dist/turns/user_mute/first_speech_user_mute_strategy.d.ts +28 -0
- package/dist/turns/user_mute/first_speech_user_mute_strategy.js +52 -0
- package/dist/turns/user_mute/function_call_user_mute_strategy.d.ts +25 -0
- package/dist/turns/user_mute/function_call_user_mute_strategy.js +50 -0
- package/dist/turns/user_mute/index.d.ts +6 -0
- package/dist/turns/user_mute/index.js +11 -0
- package/dist/turns/user_mute/mute_until_first_bot_complete_user_mute_strategy.d.ts +43 -0
- package/dist/turns/user_mute/mute_until_first_bot_complete_user_mute_strategy.js +76 -0
- package/dist/turns/user_start/base_user_turn_start_strategy.d.ts +135 -0
- package/dist/turns/user_start/base_user_turn_start_strategy.js +134 -0
- package/dist/turns/user_start/external_user_turn_start_strategy.d.ts +45 -0
- package/dist/turns/user_start/external_user_turn_start_strategy.js +64 -0
- package/dist/turns/user_start/index.d.ts +8 -0
- package/dist/turns/user_start/index.js +16 -0
- package/dist/turns/user_start/krisp_viva_ip_user_turn_start_strategy.d.ts +133 -0
- package/dist/turns/user_start/krisp_viva_ip_user_turn_start_strategy.js +243 -0
- package/dist/turns/user_start/min_words_user_turn_start_strategy.d.ts +60 -0
- package/dist/turns/user_start/min_words_user_turn_start_strategy.js +102 -0
- package/dist/turns/user_start/transcription_user_turn_start_strategy.d.ts +29 -0
- package/dist/turns/user_start/transcription_user_turn_start_strategy.js +43 -0
- package/dist/turns/user_start/vad_user_turn_start_strategy.d.ts +20 -0
- package/dist/turns/user_start/vad_user_turn_start_strategy.js +31 -0
- package/dist/turns/user_start/wake_phrase_user_turn_start_strategy.d.ts +141 -0
- package/dist/turns/user_start/wake_phrase_user_turn_start_strategy.js +238 -0
- package/dist/turns/user_stop/base_user_turn_stop_strategy.d.ts +174 -0
- package/dist/turns/user_stop/base_user_turn_stop_strategy.js +170 -0
- package/dist/turns/user_stop/deferred_user_turn_stop_strategy.d.ts +81 -0
- package/dist/turns/user_stop/deferred_user_turn_stop_strategy.js +107 -0
- package/dist/turns/user_stop/eager_match_policy.d.ts +36 -0
- package/dist/turns/user_stop/eager_match_policy.js +50 -0
- package/dist/turns/user_stop/eager_user_turn_stop_strategy.d.ts +84 -0
- package/dist/turns/user_stop/eager_user_turn_stop_strategy.js +154 -0
- package/dist/turns/user_stop/external_user_turn_completion_stop_strategy.d.ts +45 -0
- package/dist/turns/user_stop/external_user_turn_completion_stop_strategy.js +55 -0
- package/dist/turns/user_stop/external_user_turn_stop_strategy.d.ts +115 -0
- package/dist/turns/user_stop/external_user_turn_stop_strategy.js +205 -0
- package/dist/turns/user_stop/index.d.ts +10 -0
- package/dist/turns/user_stop/index.js +15 -0
- package/dist/turns/user_stop/llm_turn_completion_user_turn_stop_strategy.d.ts +44 -0
- package/dist/turns/user_stop/llm_turn_completion_user_turn_stop_strategy.js +59 -0
- package/dist/turns/user_stop/speech_timeout_user_turn_stop_strategy.d.ts +140 -0
- package/dist/turns/user_stop/speech_timeout_user_turn_stop_strategy.js +303 -0
- package/dist/turns/user_stop/turn_analyzer_user_turn_stop_strategy.d.ts +135 -0
- package/dist/turns/user_stop/turn_analyzer_user_turn_stop_strategy.js +332 -0
- package/dist/turns/user_turn_completion_mixin.d.ts +147 -0
- package/dist/turns/user_turn_completion_mixin.js +591 -0
- package/dist/turns/user_turn_controller.d.ts +134 -0
- package/dist/turns/user_turn_controller.js +335 -0
- package/dist/turns/user_turn_processor.d.ts +87 -0
- package/dist/turns/user_turn_processor.js +180 -0
- package/dist/turns/user_turn_strategies.d.ts +187 -0
- package/dist/turns/user_turn_strategies.js +222 -0
- package/dist/utils/async_tool_cancellation.d.ts +35 -0
- package/dist/utils/async_tool_cancellation.js +78 -0
- package/dist/utils/asyncio/index.d.ts +2 -0
- package/dist/utils/asyncio/index.js +7 -0
- package/dist/utils/asyncio/task_manager.d.ts +49 -0
- package/dist/utils/asyncio/task_manager.js +105 -0
- package/dist/utils/base_object.d.ts +76 -0
- package/dist/utils/base_object.js +154 -0
- package/dist/utils/context/aggregated_frame_sequencer.d.ts +491 -0
- package/dist/utils/context/aggregated_frame_sequencer.js +803 -0
- package/dist/utils/context/audio_context_manager.d.ts +131 -0
- package/dist/utils/context/audio_context_manager.js +233 -0
- package/dist/utils/context/index.d.ts +2 -0
- package/dist/utils/context/index.js +7 -0
- package/dist/utils/context/llm_context_summarization.d.ts +258 -0
- package/dist/utils/context/llm_context_summarization.js +511 -0
- package/dist/utils/context/text_segment_map.d.ts +611 -0
- package/dist/utils/context/text_segment_map.js +1132 -0
- package/dist/utils/context/word_completion_tracker.d.ts +273 -0
- package/dist/utils/context/word_completion_tracker.js +441 -0
- package/dist/utils/context/word_timestamp_tracker.d.ts +72 -0
- package/dist/utils/context/word_timestamp_tracker.js +98 -0
- package/dist/utils/deprecation.d.ts +28 -0
- package/dist/utils/deprecation.js +75 -0
- package/dist/utils/env.d.ts +38 -0
- package/dist/utils/env.js +62 -0
- package/dist/utils/errors.d.ts +75 -0
- package/dist/utils/errors.js +202 -0
- package/dist/utils/file_resolver.d.ts +126 -0
- package/dist/utils/file_resolver.js +314 -0
- package/dist/utils/file_storage.d.ts +99 -0
- package/dist/utils/file_storage.js +100 -0
- package/dist/utils/frame_queue.d.ts +36 -0
- package/dist/utils/frame_queue.js +66 -0
- package/dist/utils/http.d.ts +39 -0
- package/dist/utils/http.js +53 -0
- package/dist/utils/image.d.ts +15 -0
- package/dist/utils/image.js +30 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +8 -0
- package/dist/utils/log_config.d.ts +34 -0
- package/dist/utils/log_config.js +76 -0
- package/dist/utils/logger.d.ts +40 -0
- package/dist/utils/logger.js +91 -0
- package/dist/utils/mixin.d.ts +14 -0
- package/dist/utils/mixin.js +63 -0
- package/dist/utils/network.d.ts +73 -0
- package/dist/utils/network.js +90 -0
- package/dist/utils/security/allowed_origins.d.ts +16 -0
- package/dist/utils/security/allowed_origins.js +34 -0
- package/dist/utils/security/index.d.ts +2 -0
- package/dist/utils/security/index.js +7 -0
- package/dist/utils/security/redaction.d.ts +27 -0
- package/dist/utils/security/redaction.js +123 -0
- package/dist/utils/security/ssrf.d.ts +79 -0
- package/dist/utils/security/ssrf.js +327 -0
- package/dist/utils/shared.d.ts +35 -0
- package/dist/utils/shared.js +136 -0
- package/dist/utils/startup.d.ts +17 -0
- package/dist/utils/startup.js +130 -0
- package/dist/utils/string.d.ts +116 -0
- package/dist/utils/string.js +460 -0
- package/dist/utils/sync/base_notifier.d.ts +25 -0
- package/dist/utils/sync/base_notifier.js +16 -0
- package/dist/utils/sync/event_notifier.d.ts +38 -0
- package/dist/utils/sync/event_notifier.js +51 -0
- package/dist/utils/sync/index.d.ts +2 -0
- package/dist/utils/sync/index.js +7 -0
- package/dist/utils/text/alnum_utils.d.ts +109 -0
- package/dist/utils/text/alnum_utils.js +262 -0
- package/dist/utils/text/base_text_aggregator.d.ts +146 -0
- package/dist/utils/text/base_text_aggregator.js +102 -0
- package/dist/utils/text/base_text_filter.d.ts +54 -0
- package/dist/utils/text/base_text_filter.js +50 -0
- package/dist/utils/text/index.d.ts +2 -0
- package/dist/utils/text/index.js +7 -0
- package/dist/utils/text/markdown_text_filter.d.ts +147 -0
- package/dist/utils/text/markdown_text_filter.js +522 -0
- package/dist/utils/text/markup_utils.d.ts +54 -0
- package/dist/utils/text/markup_utils.js +156 -0
- package/dist/utils/text/pattern_pair_aggregator.d.ts +251 -0
- package/dist/utils/text/pattern_pair_aggregator.js +478 -0
- package/dist/utils/text/phonemes.d.ts +60 -0
- package/dist/utils/text/phonemes.js +172 -0
- package/dist/utils/text/simple_text_aggregator.d.ts +135 -0
- package/dist/utils/text/simple_text_aggregator.js +254 -0
- package/dist/utils/text/skip_tags_aggregator.d.ts +85 -0
- package/dist/utils/text/skip_tags_aggregator.js +147 -0
- package/dist/utils/text/transforms/pronunciations.d.ts +65 -0
- package/dist/utils/text/transforms/pronunciations.js +111 -0
- package/dist/utils/text/word_timestamp_utils.d.ts +26 -0
- package/dist/utils/text/word_timestamp_utils.js +52 -0
- package/dist/utils/time.d.ts +13 -0
- package/dist/utils/time.js +31 -0
- package/dist/utils/tracing/index.d.ts +3 -0
- package/dist/utils/tracing/index.js +8 -0
- package/dist/utils/tracing/service_attributes.d.ts +198 -0
- package/dist/utils/tracing/service_attributes.js +434 -0
- package/dist/utils/tracing/service_decorators.d.ts +214 -0
- package/dist/utils/tracing/service_decorators.js +1662 -0
- package/dist/utils/tracing/setup.d.ts +95 -0
- package/dist/utils/tracing/setup.js +110 -0
- package/dist/utils/tracing/tracing_context.d.ts +55 -0
- package/dist/utils/tracing/tracing_context.js +97 -0
- package/dist/utils/tracing/turn_trace_observer.d.ts +90 -0
- package/dist/utils/tracing/turn_trace_observer.js +219 -0
- package/dist/utils/types.d.ts +80 -0
- package/dist/utils/types.js +108 -0
- package/dist/utils/utils.d.ts +5 -0
- package/dist/utils/utils.js +22 -0
- package/dist/utils/yaml.d.ts +64 -0
- package/dist/utils/yaml.js +41 -0
- package/dist/version.d.ts +3 -0
- package/dist/version.js +7 -0
- package/dist/workers/base_worker.d.ts +772 -0
- package/dist/workers/base_worker.js +1298 -0
- package/dist/workers/index.d.ts +2 -0
- package/dist/workers/index.js +8 -0
- package/dist/workers/llm/backend_llm_worker.d.ts +552 -0
- package/dist/workers/llm/backend_llm_worker.js +1055 -0
- package/dist/workers/llm/index.d.ts +6 -0
- package/dist/workers/llm/index.js +11 -0
- package/dist/workers/llm/llm_context_worker.d.ts +66 -0
- package/dist/workers/llm/llm_context_worker.js +72 -0
- package/dist/workers/llm/llm_worker.d.ts +180 -0
- package/dist/workers/llm/llm_worker.js +323 -0
- package/dist/workers/llm/tool_decorator.d.ts +68 -0
- package/dist/workers/llm/tool_decorator.js +60 -0
- package/dist/workers/runner.d.ts +268 -0
- package/dist/workers/runner.js +489 -0
- package/dist/workers/ui/index.d.ts +22 -0
- package/dist/workers/ui/index.js +27 -0
- package/dist/workers/ui/ui_event_decorator.d.ts +43 -0
- package/dist/workers/ui/ui_event_decorator.js +75 -0
- package/dist/workers/ui/ui_job_context.d.ts +12 -0
- package/dist/workers/ui/ui_job_context.js +17 -0
- package/dist/workers/ui/ui_prompts.d.ts +21 -0
- package/dist/workers/ui/ui_prompts.js +41 -0
- package/dist/workers/ui/ui_tools.d.ts +32 -0
- package/dist/workers/ui/ui_tools.js +112 -0
- package/dist/workers/ui/ui_worker.d.ts +571 -0
- package/dist/workers/ui/ui_worker.js +1156 -0
- package/package.json +46 -3
- package/README.md +0 -5
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base transport classes for Pipecat.
|
|
3
|
+
*
|
|
4
|
+
* This module provides the foundation for transport implementations including
|
|
5
|
+
* parameter configuration and abstract base classes for input/output
|
|
6
|
+
* transport functionality.
|
|
7
|
+
*/
|
|
8
|
+
import type { BaseAudioFilter } from "../audio/filters/base_audio_filter.ts";
|
|
9
|
+
import type { BaseAudioMixer } from "../audio/mixers/base_audio_mixer.ts";
|
|
10
|
+
import type { FrameProcessor } from "../processors/frame_processor.ts";
|
|
11
|
+
import { BaseObject } from "../utils/base_object.ts";
|
|
12
|
+
export interface VideoInSourceParamsOptions {
|
|
13
|
+
/** Frames per second to pass on from this source (>= 1). */
|
|
14
|
+
framerate?: number;
|
|
15
|
+
/**
|
|
16
|
+
* Pass on frames only to answer a `UserImageRequestFrame`, rather than
|
|
17
|
+
* continuously at `framerate`.
|
|
18
|
+
*/
|
|
19
|
+
onRequestOnly?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* How a transport captures one video source from the user.
|
|
23
|
+
*
|
|
24
|
+
* - `framerate`: Frames per second to pass on from this source.
|
|
25
|
+
* - `onRequestOnly`: Pass on frames only to answer a `UserImageRequestFrame`,
|
|
26
|
+
* rather than continuously at `framerate`.
|
|
27
|
+
*/
|
|
28
|
+
export declare class VideoInSourceParams {
|
|
29
|
+
framerate: number;
|
|
30
|
+
onRequestOnly: boolean;
|
|
31
|
+
constructor(options?: VideoInSourceParamsOptions);
|
|
32
|
+
}
|
|
33
|
+
/** A single mixer (for the default destination), or a destination/mixer mapping. */
|
|
34
|
+
export type AudioOutMixer = BaseAudioMixer | Map<string | null, BaseAudioMixer>;
|
|
35
|
+
export interface TransportParamsOptions {
|
|
36
|
+
/** Enable audio output streaming. */
|
|
37
|
+
audioOutEnabled?: boolean;
|
|
38
|
+
/** Output audio sample rate in Hz. */
|
|
39
|
+
audioOutSampleRate?: number | null;
|
|
40
|
+
/** Number of output audio channels. */
|
|
41
|
+
audioOutChannels?: number;
|
|
42
|
+
/** Output audio bitrate in bits per second. */
|
|
43
|
+
audioOutBitrate?: number;
|
|
44
|
+
/** Number of 10ms chunks to buffer for output. */
|
|
45
|
+
audioOut10msChunks?: number;
|
|
46
|
+
/**
|
|
47
|
+
* Audio filter to apply to output audio of the default destination, before
|
|
48
|
+
* the mixer. Audio the transport generates itself (mixer audio, end
|
|
49
|
+
* silence, DTMF tones) is not filtered.
|
|
50
|
+
*/
|
|
51
|
+
audioOutFilter?: BaseAudioFilter | null;
|
|
52
|
+
/**
|
|
53
|
+
* Volume of the output audio, as a multiplier on its samples, applied after
|
|
54
|
+
* the filter and before the mixer. A `VolumeFrame` changes it while the
|
|
55
|
+
* transport runs, and a `VolumeGainFrame` adjusts it for some audio.
|
|
56
|
+
*/
|
|
57
|
+
audioOutVolume?: number;
|
|
58
|
+
/** Audio mixer instance or destination mapping. */
|
|
59
|
+
audioOutMixer?: AudioOutMixer | null;
|
|
60
|
+
/** List of audio output destination identifiers. */
|
|
61
|
+
audioOutDestinations?: string[];
|
|
62
|
+
/** How much silence (seconds) to send after an EndFrame (0 for no silence). */
|
|
63
|
+
audioOutEndSilenceSecs?: number;
|
|
64
|
+
/**
|
|
65
|
+
* Insert silence frames when the audio output queue is empty. When false,
|
|
66
|
+
* the transport will wait for audio data instead of inserting silence.
|
|
67
|
+
*/
|
|
68
|
+
audioOutAutoSilence?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* How long (seconds) a single write to the transport may take before the
|
|
71
|
+
* peer is considered gone. A client that stops reading leaves the write
|
|
72
|
+
* waiting with nothing to fail, so it would otherwise never return.
|
|
73
|
+
*/
|
|
74
|
+
audioOutWriteTimeoutSecs?: number;
|
|
75
|
+
/** Enable audio input streaming. */
|
|
76
|
+
audioInEnabled?: boolean;
|
|
77
|
+
/** Input audio sample rate in Hz. */
|
|
78
|
+
audioInSampleRate?: number | null;
|
|
79
|
+
/** Number of input audio channels. */
|
|
80
|
+
audioInChannels?: number;
|
|
81
|
+
/** Audio filter to apply to input audio. */
|
|
82
|
+
audioInFilter?: BaseAudioFilter | null;
|
|
83
|
+
/** Start audio streaming immediately on transport start. */
|
|
84
|
+
audioInStreamOnStart?: boolean;
|
|
85
|
+
/** Pass through input audio frames downstream. */
|
|
86
|
+
audioInPassthrough?: boolean;
|
|
87
|
+
/** Enable video input streaming. */
|
|
88
|
+
videoInEnabled?: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Video sources to capture from each user as they connect, keyed by source
|
|
91
|
+
* (`"camera"`, `"screenVideo"`, or a transport-specific custom source).
|
|
92
|
+
* Sources not listed here are captured only when the application asks for
|
|
93
|
+
* them, e.g. with the transport's `captureParticipantVideo()`. Requires
|
|
94
|
+
* `videoInEnabled`. Transports that don't support it log a warning and
|
|
95
|
+
* ignore it, so check the logs if video doesn't arrive as configured.
|
|
96
|
+
*/
|
|
97
|
+
videoInSources?: Record<string, VideoInSourceParams | VideoInSourceParamsOptions>;
|
|
98
|
+
/** Enable video output streaming. */
|
|
99
|
+
videoOutEnabled?: boolean;
|
|
100
|
+
/** Enable real-time video output streaming. */
|
|
101
|
+
videoOutIsLive?: boolean;
|
|
102
|
+
/** Video output width in pixels. */
|
|
103
|
+
videoOutWidth?: number;
|
|
104
|
+
/** Video output height in pixels. */
|
|
105
|
+
videoOutHeight?: number;
|
|
106
|
+
/** Video output frame rate in FPS. */
|
|
107
|
+
videoOutFramerate?: number;
|
|
108
|
+
/** Video output color format string. */
|
|
109
|
+
videoOutColorFormat?: string;
|
|
110
|
+
/** Preferred video codec for output (e.g., 'VP8', 'H264', 'H265'). */
|
|
111
|
+
videoOutCodec?: string | null;
|
|
112
|
+
/** List of video output destination identifiers. */
|
|
113
|
+
videoOutDestinations?: string[];
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Configuration parameters for transport implementations.
|
|
117
|
+
*
|
|
118
|
+
* See TransportParamsOptions for the meaning of each field.
|
|
119
|
+
*
|
|
120
|
+
* The deprecated `video_out_bitrate` parameter is not ported (use
|
|
121
|
+
* provider-specific settings instead).
|
|
122
|
+
*/
|
|
123
|
+
export declare class TransportParams {
|
|
124
|
+
audioOutEnabled: boolean;
|
|
125
|
+
audioOutSampleRate: number | null;
|
|
126
|
+
audioOutChannels: number;
|
|
127
|
+
audioOutBitrate: number;
|
|
128
|
+
audioOut10msChunks: number;
|
|
129
|
+
audioOutFilter: BaseAudioFilter | null;
|
|
130
|
+
audioOutVolume: number;
|
|
131
|
+
audioOutMixer: AudioOutMixer | null;
|
|
132
|
+
audioOutDestinations: string[];
|
|
133
|
+
audioOutEndSilenceSecs: number;
|
|
134
|
+
audioOutAutoSilence: boolean;
|
|
135
|
+
audioOutWriteTimeoutSecs: number;
|
|
136
|
+
audioInEnabled: boolean;
|
|
137
|
+
audioInSampleRate: number | null;
|
|
138
|
+
audioInChannels: number;
|
|
139
|
+
audioInFilter: BaseAudioFilter | null;
|
|
140
|
+
audioInStreamOnStart: boolean;
|
|
141
|
+
audioInPassthrough: boolean;
|
|
142
|
+
videoInEnabled: boolean;
|
|
143
|
+
videoInSources: Record<string, VideoInSourceParams>;
|
|
144
|
+
videoOutEnabled: boolean;
|
|
145
|
+
videoOutIsLive: boolean;
|
|
146
|
+
videoOutWidth: number;
|
|
147
|
+
videoOutHeight: number;
|
|
148
|
+
videoOutFramerate: number;
|
|
149
|
+
videoOutColorFormat: string;
|
|
150
|
+
videoOutCodec: string | null;
|
|
151
|
+
videoOutDestinations: string[];
|
|
152
|
+
constructor(options?: TransportParamsOptions);
|
|
153
|
+
}
|
|
154
|
+
export interface BaseTransportOptions {
|
|
155
|
+
/** Optional name for the transport instance. */
|
|
156
|
+
name?: string | null;
|
|
157
|
+
/** Optional name for the input processor. */
|
|
158
|
+
inputName?: string | null;
|
|
159
|
+
/** Optional name for the output processor. */
|
|
160
|
+
outputName?: string | null;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Base class for transport implementations.
|
|
164
|
+
*
|
|
165
|
+
* Provides the foundation for transport classes that handle media streaming,
|
|
166
|
+
* including input and output frame processors for audio and video data.
|
|
167
|
+
*/
|
|
168
|
+
export declare abstract class BaseTransport extends BaseObject {
|
|
169
|
+
protected _inputName: string | null;
|
|
170
|
+
protected _outputName: string | null;
|
|
171
|
+
/**
|
|
172
|
+
* Initialize the base transport.
|
|
173
|
+
*
|
|
174
|
+
* @param options.name Optional name for the transport instance.
|
|
175
|
+
* @param options.inputName Optional name for the input processor.
|
|
176
|
+
* @param options.outputName Optional name for the output processor.
|
|
177
|
+
*/
|
|
178
|
+
constructor(options?: BaseTransportOptions);
|
|
179
|
+
/**
|
|
180
|
+
* Get the input frame processor for this transport.
|
|
181
|
+
*
|
|
182
|
+
* @returns The frame processor that handles incoming frames.
|
|
183
|
+
*/
|
|
184
|
+
abstract input(): FrameProcessor;
|
|
185
|
+
/**
|
|
186
|
+
* Get the output frame processor for this transport.
|
|
187
|
+
*
|
|
188
|
+
* @returns The frame processor that handles outgoing frames.
|
|
189
|
+
*/
|
|
190
|
+
abstract output(): FrameProcessor;
|
|
191
|
+
/**
|
|
192
|
+
* Capture a participant's video source at a framerate.
|
|
193
|
+
*
|
|
194
|
+
* This captures a source on demand, where `TransportParams.videoInSources`
|
|
195
|
+
* captures the listed sources as each user connects, and takes precedence
|
|
196
|
+
* over it for the source. Transports that receive user video implement
|
|
197
|
+
* this; the others log a warning.
|
|
198
|
+
*
|
|
199
|
+
* The deprecated use of a `framerate` of `0` (instead of `onRequestOnly`)
|
|
200
|
+
* is not ported.
|
|
201
|
+
*
|
|
202
|
+
* @param participantId The participant to capture, as from `getClientId`.
|
|
203
|
+
* @param framerate Frames per second to pass on, or `null` for every frame.
|
|
204
|
+
* It doesn't apply with `onRequestOnly`.
|
|
205
|
+
* @param videoSource The video source, e.g. `"camera"` or `"screenVideo"`.
|
|
206
|
+
* @param options.onRequestOnly Pass on only the frames that answer image requests.
|
|
207
|
+
*/
|
|
208
|
+
captureParticipantVideo(_participantId: string, _framerate?: number | null, _videoSource?: string, _options?: {
|
|
209
|
+
onRequestOnly?: boolean;
|
|
210
|
+
}): Promise<void>;
|
|
211
|
+
/**
|
|
212
|
+
* The id of a client, as passed to `on_client_connected`.
|
|
213
|
+
*
|
|
214
|
+
* This is the `participantId` that `captureParticipantVideo` and image
|
|
215
|
+
* requests take. Transports with client events implement this; the others
|
|
216
|
+
* log a warning and return an empty string.
|
|
217
|
+
*
|
|
218
|
+
* @param client The client, as passed to the transport's client events.
|
|
219
|
+
* @returns The client's id.
|
|
220
|
+
*/
|
|
221
|
+
getClientId(_client: unknown): string;
|
|
222
|
+
}
|
|
223
|
+
//# sourceMappingURL=base_transport.d.ts.map
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/base_transport.py
|
|
6
|
+
import { BaseObject } from "../utils/base_object.js";
|
|
7
|
+
import { logger } from "../utils/logger.js";
|
|
8
|
+
/**
|
|
9
|
+
* How a transport captures one video source from the user.
|
|
10
|
+
*
|
|
11
|
+
* - `framerate`: Frames per second to pass on from this source.
|
|
12
|
+
* - `onRequestOnly`: Pass on frames only to answer a `UserImageRequestFrame`,
|
|
13
|
+
* rather than continuously at `framerate`.
|
|
14
|
+
*/
|
|
15
|
+
export class VideoInSourceParams {
|
|
16
|
+
framerate;
|
|
17
|
+
onRequestOnly;
|
|
18
|
+
constructor(options = {}) {
|
|
19
|
+
const framerate = options.framerate;
|
|
20
|
+
if (framerate === 0) {
|
|
21
|
+
throw new Error("a framerate of 0 isn't a rate; use on_request_only=True to pass on " +
|
|
22
|
+
"frames only to answer image requests");
|
|
23
|
+
}
|
|
24
|
+
if (framerate !== undefined && framerate < 1) {
|
|
25
|
+
throw new Error("framerate must be greater than or equal to 1");
|
|
26
|
+
}
|
|
27
|
+
this.framerate = framerate ?? 30;
|
|
28
|
+
this.onRequestOnly = options.onRequestOnly ?? false;
|
|
29
|
+
// Upstream checks whether `framerate` was explicitly set (pydantic's
|
|
30
|
+
// `model_fields_set`).
|
|
31
|
+
if (this.onRequestOnly && framerate !== undefined) {
|
|
32
|
+
throw new Error("framerate doesn't apply when on_request_only=True");
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Configuration parameters for transport implementations.
|
|
38
|
+
*
|
|
39
|
+
* See TransportParamsOptions for the meaning of each field.
|
|
40
|
+
*
|
|
41
|
+
* The deprecated `video_out_bitrate` parameter is not ported (use
|
|
42
|
+
* provider-specific settings instead).
|
|
43
|
+
*/
|
|
44
|
+
export class TransportParams {
|
|
45
|
+
audioOutEnabled;
|
|
46
|
+
audioOutSampleRate;
|
|
47
|
+
audioOutChannels;
|
|
48
|
+
audioOutBitrate;
|
|
49
|
+
audioOut10msChunks;
|
|
50
|
+
audioOutFilter;
|
|
51
|
+
audioOutVolume;
|
|
52
|
+
audioOutMixer;
|
|
53
|
+
audioOutDestinations;
|
|
54
|
+
audioOutEndSilenceSecs;
|
|
55
|
+
audioOutAutoSilence;
|
|
56
|
+
audioOutWriteTimeoutSecs;
|
|
57
|
+
audioInEnabled;
|
|
58
|
+
audioInSampleRate;
|
|
59
|
+
audioInChannels;
|
|
60
|
+
audioInFilter;
|
|
61
|
+
audioInStreamOnStart;
|
|
62
|
+
audioInPassthrough;
|
|
63
|
+
videoInEnabled;
|
|
64
|
+
videoInSources;
|
|
65
|
+
videoOutEnabled;
|
|
66
|
+
videoOutIsLive;
|
|
67
|
+
videoOutWidth;
|
|
68
|
+
videoOutHeight;
|
|
69
|
+
videoOutFramerate;
|
|
70
|
+
videoOutColorFormat;
|
|
71
|
+
videoOutCodec;
|
|
72
|
+
videoOutDestinations;
|
|
73
|
+
constructor(options = {}) {
|
|
74
|
+
this.audioOutEnabled = options.audioOutEnabled ?? false;
|
|
75
|
+
this.audioOutSampleRate = options.audioOutSampleRate ?? null;
|
|
76
|
+
this.audioOutChannels = options.audioOutChannels ?? 1;
|
|
77
|
+
this.audioOutBitrate = options.audioOutBitrate ?? 96000;
|
|
78
|
+
this.audioOut10msChunks = options.audioOut10msChunks ?? 4;
|
|
79
|
+
this.audioOutFilter = options.audioOutFilter ?? null;
|
|
80
|
+
this.audioOutVolume = options.audioOutVolume ?? 1.0;
|
|
81
|
+
this.audioOutMixer = options.audioOutMixer ?? null;
|
|
82
|
+
this.audioOutDestinations = options.audioOutDestinations ?? [];
|
|
83
|
+
this.audioOutEndSilenceSecs = options.audioOutEndSilenceSecs ?? 2;
|
|
84
|
+
this.audioOutAutoSilence = options.audioOutAutoSilence ?? true;
|
|
85
|
+
this.audioOutWriteTimeoutSecs = options.audioOutWriteTimeoutSecs ?? 10.0;
|
|
86
|
+
this.audioInEnabled = options.audioInEnabled ?? false;
|
|
87
|
+
this.audioInSampleRate = options.audioInSampleRate ?? null;
|
|
88
|
+
this.audioInChannels = options.audioInChannels ?? 1;
|
|
89
|
+
this.audioInFilter = options.audioInFilter ?? null;
|
|
90
|
+
this.audioInStreamOnStart = options.audioInStreamOnStart ?? true;
|
|
91
|
+
this.audioInPassthrough = options.audioInPassthrough ?? true;
|
|
92
|
+
this.videoInEnabled = options.videoInEnabled ?? false;
|
|
93
|
+
// Like pydantic, plain option objects are validated into VideoInSourceParams.
|
|
94
|
+
this.videoInSources = Object.fromEntries(Object.entries(options.videoInSources ?? {}).map(([source, params]) => [
|
|
95
|
+
source,
|
|
96
|
+
params instanceof VideoInSourceParams ? params : new VideoInSourceParams(params),
|
|
97
|
+
]));
|
|
98
|
+
this.videoOutEnabled = options.videoOutEnabled ?? false;
|
|
99
|
+
this.videoOutIsLive = options.videoOutIsLive ?? false;
|
|
100
|
+
this.videoOutWidth = options.videoOutWidth ?? 1024;
|
|
101
|
+
this.videoOutHeight = options.videoOutHeight ?? 768;
|
|
102
|
+
this.videoOutFramerate = options.videoOutFramerate ?? 30;
|
|
103
|
+
this.videoOutColorFormat = options.videoOutColorFormat ?? "RGB";
|
|
104
|
+
this.videoOutCodec = options.videoOutCodec ?? null;
|
|
105
|
+
this.videoOutDestinations = options.videoOutDestinations ?? [];
|
|
106
|
+
if (Object.keys(this.videoInSources).length > 0 && !this.videoInEnabled) {
|
|
107
|
+
throw new Error("video_in_sources requires video_in_enabled=True");
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Base class for transport implementations.
|
|
113
|
+
*
|
|
114
|
+
* Provides the foundation for transport classes that handle media streaming,
|
|
115
|
+
* including input and output frame processors for audio and video data.
|
|
116
|
+
*/
|
|
117
|
+
export class BaseTransport extends BaseObject {
|
|
118
|
+
_inputName;
|
|
119
|
+
_outputName;
|
|
120
|
+
/**
|
|
121
|
+
* Initialize the base transport.
|
|
122
|
+
*
|
|
123
|
+
* @param options.name Optional name for the transport instance.
|
|
124
|
+
* @param options.inputName Optional name for the input processor.
|
|
125
|
+
* @param options.outputName Optional name for the output processor.
|
|
126
|
+
*/
|
|
127
|
+
constructor(options = {}) {
|
|
128
|
+
super({ name: options.name ?? null });
|
|
129
|
+
this._inputName = options.inputName ?? null;
|
|
130
|
+
this._outputName = options.outputName ?? null;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Capture a participant's video source at a framerate.
|
|
134
|
+
*
|
|
135
|
+
* This captures a source on demand, where `TransportParams.videoInSources`
|
|
136
|
+
* captures the listed sources as each user connects, and takes precedence
|
|
137
|
+
* over it for the source. Transports that receive user video implement
|
|
138
|
+
* this; the others log a warning.
|
|
139
|
+
*
|
|
140
|
+
* The deprecated use of a `framerate` of `0` (instead of `onRequestOnly`)
|
|
141
|
+
* is not ported.
|
|
142
|
+
*
|
|
143
|
+
* @param participantId The participant to capture, as from `getClientId`.
|
|
144
|
+
* @param framerate Frames per second to pass on, or `null` for every frame.
|
|
145
|
+
* It doesn't apply with `onRequestOnly`.
|
|
146
|
+
* @param videoSource The video source, e.g. `"camera"` or `"screenVideo"`.
|
|
147
|
+
* @param options.onRequestOnly Pass on only the frames that answer image requests.
|
|
148
|
+
*/
|
|
149
|
+
async captureParticipantVideo(_participantId, _framerate = 30, _videoSource = "camera", _options = {}) {
|
|
150
|
+
logger.warning(`${this}: capturing participant video isn't supported.`);
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* The id of a client, as passed to `on_client_connected`.
|
|
154
|
+
*
|
|
155
|
+
* This is the `participantId` that `captureParticipantVideo` and image
|
|
156
|
+
* requests take. Transports with client events implement this; the others
|
|
157
|
+
* log a warning and return an empty string.
|
|
158
|
+
*
|
|
159
|
+
* @param client The client, as passed to the transport's client events.
|
|
160
|
+
* @returns The client's id.
|
|
161
|
+
*/
|
|
162
|
+
getClientId(_client) {
|
|
163
|
+
logger.warning(`${this}: getting a client id isn't supported.`);
|
|
164
|
+
return "";
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=base_transport.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/daily/__init__.py
|
|
6
|
+
// Upstream's __init__.py is empty: it only marks the package. The provider
|
|
7
|
+
// modules themselves live in their own packages (see porting/manifest.json).
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/heygen/__init__.py
|
|
6
|
+
// Upstream's __init__.py is empty: it only marks the package. The provider
|
|
7
|
+
// modules themselves live in their own packages (see porting/manifest.json).
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/__init__.py
|
|
6
|
+
// Upstream's `__init__.py` is empty: import the package's modules directly.
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/lemonslice/__init__.py
|
|
6
|
+
// Upstream's __init__.py is empty: it only marks the package. The provider
|
|
7
|
+
// modules themselves live in their own packages (see porting/manifest.json).
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/livekit/__init__.py
|
|
6
|
+
// Upstream's __init__.py is empty: it only marks the package. The provider
|
|
7
|
+
// modules themselves live in their own packages (see porting/manifest.json).
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/local/__init__.py
|
|
6
|
+
// Upstream's __init__.py is empty: it only marks the package. The provider
|
|
7
|
+
// modules themselves live in their own packages (see porting/manifest.json).
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/moq/__init__.py
|
|
6
|
+
// Upstream's __init__.py is empty: it only marks the package. The provider
|
|
7
|
+
// modules themselves live in their own packages (see porting/manifest.json).
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/smallwebrtc/__init__.py
|
|
6
|
+
// Upstream's __init__.py is empty: it only marks the package. The provider
|
|
7
|
+
// modules themselves live in their own packages (see porting/manifest.json).
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026, Daily
|
|
2
|
+
// Copyright (c) 2026, pipedog contributors
|
|
3
|
+
// SPDX-License-Identifier: BSD-2-Clause
|
|
4
|
+
//
|
|
5
|
+
// Ported from pipecat: src/pipecat/transports/tavus/__init__.py
|
|
6
|
+
// Upstream's __init__.py is empty: it only marks the package. The provider
|
|
7
|
+
// modules themselves live in their own packages (see porting/manifest.json).
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|