Implement meeting assistant v1

This commit is contained in:
2026-05-20 02:06:16 +02:00
parent 90df1edc03
commit 0297bcc0f6
120 changed files with 11883 additions and 180 deletions
@@ -0,0 +1,31 @@
namespace MeetingAssistant.Transcription;
public sealed class FunAsrSpeechRecognitionPipeline : StreamingSpeechRecognitionPipeline
{
private readonly IFunAsrBackendLifecycle backendLifecycle;
private readonly FunAsrTranscriptFinalizer transcriptFinalizer;
public FunAsrSpeechRecognitionPipeline(
FunAsrStreamingTranscriptionProvider transcriptionProvider,
IFunAsrBackendLifecycle backendLifecycle,
FunAsrTranscriptFinalizer transcriptFinalizer)
: base(transcriptionProvider)
{
this.backendLifecycle = backendLifecycle;
this.transcriptFinalizer = transcriptFinalizer;
}
public override Task WaitUntilReadyAsync(CancellationToken cancellationToken)
{
return backendLifecycle.EnsureStartedAsync(cancellationToken);
}
protected override Task<IReadOnlyList<TranscriptionSegment>> BuildFinishedTranscriptAsync(
string audioPath,
IReadOnlyList<TranscriptionSegment> liveSegments,
SpeechRecognitionPipelineOptions options,
CancellationToken cancellationToken)
{
return transcriptFinalizer.FinalizeAsync(audioPath, liveSegments, cancellationToken);
}
}