diff --git a/VideoAnalysis/Program.cs b/VideoAnalysis/Program.cs
index f537f54..81a8022 100644
--- a/VideoAnalysis/Program.cs
+++ b/VideoAnalysis/Program.cs
@@ -38,11 +38,11 @@ namespace Learn.VideoAnalysis
loggingBuilder.SetMinimumLevel(LogLevel.Warning); // 设置最小日志级别为 Warning
});
+ //绑定 appsetting 配置
+ builder.Configuration.AddAppConfig(args);
//初始化 插件
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerExpand("AI视频分析");
- //绑定 appsetting 配置
- builder.Configuration.AddAppConfig(args);
builder.Services.AddPermissionAuthentication();
builder.Services.AddSqlSugarExpand();
builder.Services.AddRedisExpand();
diff --git a/VideoAnalysisCore/AICore/SherpaOnnx/FunASRNano.cs b/VideoAnalysisCore/AICore/SherpaOnnx/FunASRNano.cs
index 89d41da..5c97cf1 100644
--- a/VideoAnalysisCore/AICore/SherpaOnnx/FunASRNano.cs
+++ b/VideoAnalysisCore/AICore/SherpaOnnx/FunASRNano.cs
@@ -26,7 +26,7 @@ namespace VideoAnalysisCore.AICore.SherpaOnnx
///
public static void AddFunASRNanoExpand(this IServiceCollection services)
{
- services.AddSingleton();
+ services.AddSingleton();
}
}
///
@@ -97,8 +97,9 @@ namespace VideoAnalysisCore.AICore.SherpaOnnx
public List RunTask(Stream s)
{
if (s is null) throw new Exception("闊抽璺緞 is null");
+ if (OR is null) Init();
return serviceProvider.GetRequiredService()
- .TaskHandle(new WaveReader(s), null, SoundHandle, SherpaVadVersion.silero_vad_v5);
+ .TaskHandle(new WaveReader(s), null, SoundHandle, SherpaVadVersion.ten_vad_324);
}
///
/// 鑾峰彇璇煶瀛楀箷
@@ -110,8 +111,9 @@ namespace VideoAnalysisCore.AICore.SherpaOnnx
var filePath = Path.Combine(task.LocalPath(), "task.wav");
if (string.IsNullOrEmpty(filePath) || !File.Exists(filePath))
throw new Exception("task 闊抽璺緞鏈壘鍒");
+ if (OR is null) Init();
serviceProvider.GetRequiredService()
- .TaskHandle(new WaveReader(filePath), null, SoundHandle, SherpaVadVersion.silero_vad_v5);
+ .TaskHandle(new WaveReader(filePath), null, SoundHandle, SherpaVadVersion.ten_vad_324);
return Task.CompletedTask;
}
diff --git a/VideoAnalysisCore/AICore/SherpaOnnx/SenseVoice.cs b/VideoAnalysisCore/AICore/SherpaOnnx/SenseVoice.cs
index cbe1d0a..50663fa 100644
--- a/VideoAnalysisCore/AICore/SherpaOnnx/SenseVoice.cs
+++ b/VideoAnalysisCore/AICore/SherpaOnnx/SenseVoice.cs
@@ -99,7 +99,9 @@ namespace VideoAnalysisCore.AICore.SherpaOnnx
///
public List RunTask(Stream s)
{
+
if (s is null) throw new Exception("闊抽璺緞 is null");
+ if (OR is null) Init();
return serviceProvider.GetRequiredService()
.TaskHandle(new WaveReader(s), null, SoundHandle, SherpaVadVersion.silero_vad_v5);
}
@@ -113,6 +115,7 @@ namespace VideoAnalysisCore.AICore.SherpaOnnx
var filePath = Path.Combine(task.LocalPath(), "task.wav");
if (string.IsNullOrEmpty(filePath) || !File.Exists(filePath))
throw new Exception("task 闊抽璺緞鏈壘鍒");
+ if (OR is null) Init();
serviceProvider.GetRequiredService()
.TaskHandle(new WaveReader(filePath), null, SoundHandle, SherpaVadVersion.silero_vad_v5);
diff --git a/VideoAnalysisCore/Controllers/VideoTaskController.cs b/VideoAnalysisCore/Controllers/VideoTaskController.cs
index 614c208..12b37b7 100644
--- a/VideoAnalysisCore/Controllers/VideoTaskController.cs
+++ b/VideoAnalysisCore/Controllers/VideoTaskController.cs
@@ -37,10 +37,12 @@ namespace VideoAnalysisCore.Controllers
readonly RedisManager redisManager;
public readonly SenseVoice senseVoice;
+ public readonly FunASRNano funASRNano;
+
private readonly IMapper mp;
public VideoTaskController(Repository baseService, RedisManager redisManager,
Repository videoQuestionDB,
- Repository videoQuestionKonwDB, Repository videoKonwPointDB, SenseVoice senseVoice, IMapper mp, Repository taskLogDB) : base(baseService)
+ Repository videoQuestionKonwDB, Repository videoKonwPointDB, SenseVoice senseVoice, IMapper mp, Repository taskLogDB, FunASRNano funASRNano) : base(baseService)
{
this.baseService = baseService;
this.redisManager = redisManager;
@@ -50,6 +52,7 @@ namespace VideoAnalysisCore.Controllers
this.senseVoice = senseVoice;
this.mp = mp;
this.taskLogDB = taskLogDB;
+ this.funASRNano = funASRNano;
}
@@ -147,6 +150,16 @@ namespace VideoAnalysisCore.Controllers
{
using var s = file.OpenReadStream();
var res = senseVoice.RunTask(s);
+ s.Position = 0;
+ var res1 = funASRNano.RunTask(s);
+
+ for (int i = 0; i < res.Count(); i++)
+ {
+ Console.WriteLine($"绗瑊res[i].Start}绉");
+ Console.WriteLine($"ssv=> {res[i].Text}");
+ Console.WriteLine($"fun=> {res1[i].Text}");
+ Console.WriteLine();
+ }
return Ok(res);
}