nuked the code that marks user audio in favor for InputAudioRawFrame. also moving to stereo instead of mono with the human and bot on their own channel.

This commit is contained in:
Adrian Cowham
2024-10-03 14:10:03 -07:00
parent 2d82702e04
commit 4d81a2ebfe
6 changed files with 72 additions and 83 deletions

View File

@@ -22,7 +22,6 @@ from pipecat.processors.aggregators.llm_response import (
LLMAssistantResponseAggregator, LLMUserResponseAggregator)
from pipecat.processors.audio.audio_buffer_processor import \
AudioBufferProcessor
from pipecat.processors.user_marker_processor import UserMarkerProcessor
from pipecat.services.canonical import CanonicalMetricsService
from pipecat.services.elevenlabs import ElevenLabsTTSService
from pipecat.services.openai import OpenAILLMService
@@ -115,14 +114,12 @@ async def main():
assistant="pipecat-chatbot",
assistant_speaks_first=True,
)
usermarker = UserMarkerProcessor()
pipeline = Pipeline([
transport.input(), # microphone
usermarker,
user_response,
llm,
tts,
audio_buffer_processor, # captures audio into a buffer
audio_buffer_processor, # captures audio into a buffer
canonical, # uploads audio buffer to Canonical AI for metrics
transport.output(),
assistant_response,

View File

@@ -19,8 +19,8 @@ from pipecat.pipeline.runner import PipelineRunner
from pipecat.pipeline.task import PipelineParams, PipelineTask
from pipecat.processors.aggregators.llm_response import (
LLMAssistantResponseAggregator, LLMUserResponseAggregator)
from pipecat.processors.audio.audio_buffer_processor import AudioBufferProcessor
from pipecat.processors.user_marker_processor import UserMarkerProcessor
from pipecat.processors.audio.audio_buffer_processor import \
AudioBufferProcessor
from pipecat.services.elevenlabs import ElevenLabsTTSService
from pipecat.services.openai import OpenAILLMService
from pipecat.transports.services.daily import DailyParams, DailyTransport
@@ -98,10 +98,8 @@ async def main():
assistant_response = LLMAssistantResponseAggregator()
audiobuffer = AudioBufferProcessor()
usermarker = UserMarkerProcessor()
pipeline = Pipeline([
transport.input(), # microphone
usermarker, # used to mark the user's audio in the pipeline
user_response,
llm,
tts,