Skip to content

[pull] master from CHKZL:master#44

Open
pull[bot] wants to merge 1751 commits intoHan-tiv:masterfrom
CHKZL:master
Open

[pull] master from CHKZL:master#44
pull[bot] wants to merge 1751 commits intoHan-tiv:masterfrom
CHKZL:master

Conversation

@pull
Copy link

@pull pull bot commented May 28, 2024

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

CHKZL and others added 30 commits November 23, 2025 21:37
新增 `get_cut_according_config` 控制器,用于获取全局配置中根据录制文件大小和时长切割视频文件的设置,支持通过 `HttpGet` 方法返回包含 `size` 和 `time` 的配置字典。

新增 `get_room_cut_according_config` 控制器,用于获取房间维度的录制文件切割配置,支持通过 `HttpPost` 方法根据 `uid` 或 `roomid` 查询房间的切割配置,返回包含 `size` 和 `time` 的配置字典。

两个接口均添加了必要的特性(如 `[ApiController]`、`[Route]` 等),并使用 `MessageBase.MssagePack` 方法封装返回内容。
重构了文件大小和时间限制分割的逻辑:
- 优先检查房间级别的限制条件,未设置时再检查全局配置。
- 增加日志记录,分别标识房间级别和全局级别的分割触发。

在 `RoomInfo` 类中新增字段:
- `RoomCutAccordingToTime`:房间级别的时间限制条件。
- `RoomCutAccordingToSize`:房间级别的文件大小限制条件。

更新了 `FLV.cs` 和 `HLS.cs` 中的分割逻辑,支持房间级别配置。
在 `CardControl.xaml.cs` 中:
- 为 `MenuItem_OpenLiveUlr_Click` 方法添加 `try-catch` 异常处理。
- 在打开直播间网址失败时记录错误日志。

在 `SettingsPage.xaml.cs` 中:
- 为 `OpenRecordingFolderInExplorer_Click` 方法添加路径有效性检查。
- 增加多层次的错误提示,包括路径为空、无效或不存在的情况。
- 优化文件夹打开逻辑,避免重复创建 Explorer 进程。
- 在打开文件夹失败时通过 `SnackbarService` 提示用户。
添加了右键卡片打开录播目录的功能
新增弹幕重连功能:
- 添加 `ReconnectRoomDanmaObjects` 方法和 `DanmaTriggerReconnect` 事件,用于实现弹幕对象的重连逻辑。
- 在多个模块中订阅 `DanmaTriggerReconnect` 事件,处理重连后的操作。

优化日志记录:
- 在 `Config.cs` 中添加 `#if DEBUG` 条件编译块,仅在调试模式下记录初始化日志。
- 注释掉生产环境中不必要的调试日志输出。

代码结构优化:
- 调整 `using` 引用顺序,删除未使用的引用。
- 修改 `LiveChatListener` 构造函数,支持可选参数 `DanmuMessage`。

增强 UI 交互:
- 在弹幕重连时更新 UI 提示信息。
- 确保重连后重新订阅 `MessageReceived` 事件。
调整 LiveChatListener 的资源管理与状态控制:
- 将 `_Cancel` 字段从 `private` 修改为 `public`。
- 修改 `Close` 方法逻辑,增加条件判断,避免不必要的事件触发。
- 在释放资源前显式设置 `_Cancel` 状态,确保逻辑一致性。

调整弹幕发送逻辑:
- 在 `Send_Danma_Button_Click` 方法中新增房间弹幕对象重新连接的调用。
在 LiveChatListener.cs 中优化 Close 方法的重连逻辑:
- 增加日志记录,便于调试和监控。
- 新增触发 MessageReceived 事件的逻辑,发送 Reconnect 消息。
- 增加 _Cancel 的赋值操作,确保状态一致性。

在 DetectRoom.cs 中简化重连逻辑:
- 移除冗余的 Dispose 和 Thread.Sleep 操作。
- 改为调用统一的重连方法 Danmu.ReconnectRoomDanmaObjects。

整体提升了代码的可读性、逻辑一致性和运行效率。
更新了多个项目文件中的依赖包版本:
- Client.csproj: 升级 Microsoft.Web.WebView2 和 System.Drawing.Common。
- Core.csproj: 升级 Microsoft.Data.Sqlite 和 System.Drawing.Common。
- Desktop.csproj: 升级 LibVLCSharp.WPF、Microsoft.Extensions.DependencyInjection、Microsoft.Web.WebView2 和 System.Drawing.Common。
- Server.csproj: 升级 Microsoft.Extensions.Hosting.WindowsServices 和 Swashbuckle.AspNetCore 相关依赖。
升级所有项目的目标框架至 .NET 10.0 或 .NET 10.0-windows7.0,以支持更高版本的 .NET 平台。更新了以下依赖项版本:
- `AWSSDK.S3` 从 3.7.310.8 升级到 4.0.14.1
- `Downloader` 从 3.0.6 升级到 4.0.3
- `WPF-UI` 和 `WPF-UI.Tray` 分别从 4.0.3 和 4.0.2 升级到 4.1.0

修复了命名空间冲突问题,将 `ContextMenu` 替换为 `System.Windows.Controls.ContextMenu`。在 `MainWindow.xaml.cs` 中添加了异步任务以显示当前 .NET 版本的消息框,并优化了注释格式。

统一所有项目的版本号为 5.0.0.0。
更新 .NET SDK 至 10.0.100 并优化 CI 配置

移除对 .NET SDK 版本 8.0.303 的设置步骤,更新为 10.0.100。
将 actions/setup-dotnet 的版本从 v3 升级到 v4。
删除 Windows 环境下清理所有 .NET SDK 的步骤。
保留检查 .NET SDK 版本的步骤。
确保不同操作系统(Linux/macOS 和 Windows)支持下载和提取最新发布版本。
"""
Updated .NET version references from 8 to 10 in the README.
在 `DDTV_Dev.yml` 和 `DDTV_Release.yml` 文件中:
- 将 .NET SDK 版本从 `8.0.303` 更新为 `10.0.100`。
- 升级 `actions/setup-dotnet` 至 v4。
- 移除对 .NET SDK 版本 `8.0.303` 的设置步骤。
- 移除 Windows 环境下清理所有 .NET SDK 的步骤。
- 保留检查 .NET SDK 版本的步骤。
- 保留针对不同操作系统的下载和提取最新发布版本的步骤。
HLS.cs 中新增了分辨率检测相关日志,首次请求时初始化分辨率追踪变量,并为后续 M3U8 定时刷新预留了变量和注释代码,提升了调试能力和代码健壮性。
用MailKit代替原本的SMTP库,提高邮件提醒的兼容性
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants