imeepos
|
d36475ff35
|
feat: 大幅增强MaterialCard显示信息 - 添加丰富的统计信息
功能增强:
为素材列表的MaterialCard添加了更多详细的统计信息,
让用户能够更全面地了解每个素材的详细情况。
新增信息展示:
1. 基本信息:
- 文件大小(格式化显示,如 MB/GB)
- 创建时间(本地化日期格式)
2. 视频元数据(蓝色主题):
- 视频时长(mm:ss格式)
- 分辨率(宽高)
- 比特率(自动单位转换)
- 帧率(fps)
- 编解码器
- 音频信息(如果有)
3. 音频元数据(绿色主题):
- 音频时长
- 比特率
- 采样率
- 音频编解码器
4. 图片元数据(紫色主题):
- 图片分辨率
- 图片格式
- DPI信息(如果有)
5. 处理统计信息(灰色主题):
- 场景检测结果(场景数量)
- 切分片段数量
- 处理状态
技术实现:
1. 辅助函数:
- formatTime: 时间格式化(秒转mm:ss)
- formatFileSize: 文件大小格式化
- formatBitrate: 比特率格式化
- formatResolution: 分辨率格式化
- formatDate: 日期本地化格式化
2. 响应式布局:
- 使用Grid布局优化信息展示
- 不同类型元数据使用不同颜色主题
- 图标+文字的直观展示方式
3. 条件渲染:
- 根据素材类型显示对应的元数据
- 智能检测元数据存在性
- 优雅处理缺失信息
用户体验提升:
一目了然的素材详细信息
颜色编码的信息分类
直观的图标标识
格式化的数据展示
响应式的布局设计
现在用户可以在素材列表中快速了解每个文件的详细技术参数和处理状态!
|
2025-07-13 22:20:01 +08:00 |
imeepos
|
4a377be983
|
fix: 实现MaterialCard中的打开文件位置功能
问题分析:
MaterialCard组件中的openFileLocation函数只是打印路径,
没有实际实现打开文件位置的功能,导致点击分片文件无响应。
修复内容:
1. 实现openFileLocation函数:
- 使用revealItemInDir在文件管理器中显示并选中文件
- 添加路径标准化处理,移除Windows长路径前缀
- 提供备用方案:如果revealItemInDir失败,尝试openPath打开目录
2. 错误处理优化:
- 双重备用机制确保功能可用性
- 用户友好的错误提示
- 详细的调试日志
3. TypeScript类型修复:
- 添加MaterialSegment类型导入到materialStore
- 在MaterialState接口中添加getMaterialSegments方法定义
- 清理未使用的导入项
4. 技术实现:
` ypescript
// 主要方法:在文件管理器中显示文件
await revealItemInDir(normalizedPath);
// 备用方法:打开文件所在目录
await openPath(normalizedDirPath);
`
功能特点:
点击分片文件的外链图标可以打开文件位置
自动处理Windows长路径格式
双重备用机制确保兼容性
用户友好的错误处理
现在用户可以方便地通过点击分片列表中的外链图标来打开文件位置了!
|
2025-07-13 22:12:15 +08:00 |
imeepos
|
704e6d8fff
|
feat: 添加视频切分片段查看功能
新增功能:
1. MaterialCard组件 - 增强的素材卡片
- 显示素材基本信息和状态
- 支持展开查看切分片段详情
- 片段时间格式化显示
- 文件位置快速访问
2. get_material_segments命令
- 获取指定素材的所有切分片段
- 返回完整的片段信息包括文件路径
3. 前端store集成
- getMaterialSegments方法
- 错误处理和加载状态
4. 用户界面改进
- 状态颜色编码(完成/处理中/失败/等待)
- 可折叠的片段列表
- 时间格式化显示(分:秒)
- 片段索引和时长信息
视频切分结果保存位置:
- 文件系统: 原视频路径_segments/原视频名_001.mp4
- 数据库: material_segments表存储片段元信息
- 前端: 通过MaterialCard组件可视化查看
现在用户可以:
查看每个素材的切分状态
展开查看具体的切分片段
了解每个片段的时间范围和文件位置
快速访问切分后的文件
|
2025-07-13 21:12:01 +08:00 |