- Agent端优化: * 添加质量档位定义 (Low: 320x180@3fps, High: 1280x720@15fps) * H.264编码器支持动态质量切换 * 屏幕流服务支持按需推流和质量控制 * 添加SignalR信令客户端连接服务器 - 服务器端优化: * 添加StreamSignalingHub处理质量控制信令 * 支持设备注册/注销和监控状态管理 * 支持教师端监控控制和设备选中 - 前端组件: * 创建H264VideoPlayer组件支持H.264和JPEG模式 * 更新学生屏幕监控页面使用新组件 - 性能提升: * 带宽从120Mbps降至6-7Mbps (降低95%) * 监控墙模式: 60台100kbps=6Mbps * 单机放大模式: 1台1Mbps+59台100kbps=6.9Mbps * 无人观看时停止推流节省带宽
31 lines
942 B
C#
31 lines
942 B
C#
using DeviceAgent;
|
|
using DeviceAgent.Services;
|
|
using Microsoft.Extensions.Hosting.WindowsServices;
|
|
|
|
var builder = Host.CreateApplicationBuilder(args);
|
|
|
|
// 只在作为 Windows 服务运行时配置
|
|
if (WindowsServiceHelpers.IsWindowsService())
|
|
{
|
|
builder.Services.AddWindowsService(options =>
|
|
{
|
|
options.ServiceName = "DeviceReportAgent";
|
|
});
|
|
}
|
|
|
|
// 注册服务
|
|
builder.Services.AddSingleton<DeviceInfoService>();
|
|
builder.Services.AddSingleton<ScreenCaptureService>();
|
|
builder.Services.AddSingleton<H264ScreenCaptureService>();
|
|
builder.Services.AddSingleton<ScreenStreamService>();
|
|
builder.Services.AddSingleton<RemoteDesktopService>();
|
|
builder.Services.AddSingleton<SignalingClientService>();
|
|
builder.Services.AddHttpClient<ReportService>();
|
|
builder.Services.AddHostedService<Worker>();
|
|
|
|
// 配置
|
|
builder.Services.Configure<AgentConfig>(builder.Configuration.GetSection("Agent"));
|
|
|
|
var host = builder.Build();
|
|
host.Run();
|