1.4.1 (2025-10-25)
- subtitles: implement comprehensive Chinese character loss detection and fallback for ASS subtitle parsing (#229) (77f9f97)
1.4.0 (2025-10-21)
1.3.0 (2025-10-19)
- asr: implement ASR subtitle generation features (#223) (d87a723)
- player: enhance video interaction area and progress bar behavior (20fbcc5)
- player: 优化进度条 seek 交互和性能 (600734d)
1.2.0 (2025-10-17)
1.1.1 (2025-10-16)
1.1.0 (2025-10-16)
- AppUpdater, FFmpegDownloadService: update default mirror source to global (83194b3)
- build: adjust resource handling for media-server in packaging (086bd1b)
- codec-compatibility: handle missing codec information gracefully (ea29f21)
- FFmpegSection: manage completion timeout for download process (39b43c0)
- FFprobeSection: add return statement to download progress polling function (49636cf)
- FFprobeSection: ensure timeout cleanup after download success (81a1431)
- FFprobeSection: manage success timeout for download completion (ce55d49)
- FFprobeSection: standardize font size using theme constants (6387445)
- FFprobeSection: standardize spacing in styled components (ba3c3d4)
- homepage: improve bottom spacing for card grid (#194) (801b6cd)
- make subtitle overlay container semantic (2d6ae60)
- MediaServerService: enhance error handling for file existence check (11b74ef)
- MediaServerService: replace fs.existsSync with async stat for file existence check (c9c98da)
- player: apply playback rate change through orchestrator when cycling speeds (#210) (fa9aa09)
- player: remove HLS player missing error handling (c7b593e)
- player: restore muted state when re-entering player page (1ec5c56)
- remove green glow effect from progress bar (#196) (abc6f3e), closes #e50914 #00b96
- semantic-release: enhance version increment rules for prerelease branches (#199) (5d1e533)
- theme: resolve theme color not updating immediately for Switch components and progress bars (#197) (eed9ea2)
- TranscodeLoadingIndicator: remove logging for loading indicator display (085db44)
- useSubtitleScrollStateMachine: start auto-return timer on user interactions (8496ae0)
- UvBootstrapperService: enhance UV download logic with cached path checks (fc0791a)
- UvBootstrapperService: ensure temp directory cleanup after download (02c7b16)
- UvBootstrapperService: prevent concurrent downloads by checking download controllers (19d31e7)
- VolumeIndicator: skip indicator display on initial render (82d2281)
- workflow: update artifact listing command for better compatibility (dfb6ee4)
- integrate session-backed HLS playback flow (#200) (ee972d1)
- intro backend for hls player (2d34e7b)
- media-server: add transcode cache cleanup for deleted videos (e2de9ad)
- media-server: implement runtime runtime management system (#204) (f5f68b0)
- optimize media-server build output to resources directory (#201) (1b8c28e)
- player: add animated loading progress bar to PlayerPage (#206) (8ba6f7f)
- player: add media server recommendation prompt for incompatible videos (#205) (63221a2)
- player: add subtitle search functionality (c3228c3)
- player: add toggle auto-pause functionality (98b59ef)
- player: HLS session progress polling with media server integration (#209) (a76e8c2)
- PlayerSettingsLoader: add mask mode to subtitle overlay (56e4f65)
- player: update seek button icons from rewind/fastforward to undo/redo (#193) (1612c43)
- RegionDetection: integrate region detection service for IP-based country identification (dbeb077)
- subtitle: introduce mask mode for subtitle overlay (e1fb3eb)
- SubtitleOverlay: enhance positioning and collision handling (92b061a)
- UvBootstrapperService: enhance download management with concurrency control (20522e9)
- "fix(build): adjust resource handling for media-server in packaging" (2133401)
- build: correct alpha channel update file naming (#79) (95e2ed2)
- build: Fix FFmpeg cross-platform build on macOS for Windows targets (#145) (2a0b3a5)
- build: 修复 Linux 构建产物架构命名转换问题 (1f732ba)
- ci: Failed to get next version (a63caa3)
- ci: resolve duplicate GitHub releases issue (#90) (3e0117e)
- ci: resolve GitHub Release creation issue with always publish strategy (#85) (712f0e8)
- ci: resolve semantic-release configuration issues (#88) (0a9e4a3)
- ci: resolve Windows build shell syntax compatibility issue (#84) (59b8460)
- ci: sync package.json version with manual trigger input (#116) (7008b6a)
- dictionary: support pronunciation extraction without UK/US distinction (#172) (bfc6bb7)
- fix type check (eae1e37)
- Fix TypeScript build errors and improve type safety (#77) (7861279)
- homepage: Fix UI desynchronization issue after deleting video records + i18n support (#120) (57b872d)
- improve release workflow and build configuration (#91) (2d9347f)
- logger: optimize logger memory management and reduce high-frequency logging (#156) (0a53c64)
- player: ensure video always starts paused and sync UI state correctly (#102) (83a0674)
- player: Fix subtitle navigation when activeCueIndex is -1 (#119) (05772a0)
- player: Fix subtitle overlay dragging to bottom and improve responsive design (#122) (a8a98db)
- player: improve play/pause button reliability (#141) (28f1156)
- player: improve subtitle overlay positioning and remove i18n dependencies (#109) (f7e8346)
- player: integrate volume state in player engine context (5ff32d9)
- player: persist relocated video file path to database (#162) (bf76a18)
- player: Prevent subtitle overlay interactions from triggering video play/pause (#128) (b1ae69c)
- player: resolve focus loss after dictionary popup interaction (#173) (b2d577d)
- player: resolve shortcut pause failure caused by state oscillation (#174) (6716c5b), closes #170
- player: resolve spacebar shortcut not working after clicking to pause (#182) (3e46a69)
- release: remove custom labels from GitHub release assets (#92) (848bace)
- remove cheerio dependency to resolve Electron packaging issues - Remove cheerio and @types/cheerio from package.json dependencies - Replace cheerio-based HTML parsing with native regex implementation - Refactor parseEudicHtml() to parseEudicHtmlWithRegex() in dictionaryHandlers.ts - Support multiple HTML formats: list items, phonetics, examples, translations - Delete related test files that depend on cheerio - Fix TypeScript type errors for regex variables - Improve Electron runtime compatibility and reduce bundle size Fixes #50 (b01fe4e)
- remove path unique constraint to allow duplicate video file addition (#97) (31c1486)
- renderer: resolve subsrt dynamic require issue in production build (#78) (028a8fb)
- resolve dead links in documentation and add missing pages (fc36263)
- subtitle: improve ASS subtitle parsing for bilingual text (#111) (85b7f82)
- subtitle: prevent overlay showing content during subtitle gaps (#138) (6f03bb8)
- subtitle: resolve overlay pause/seek update delays with immediate state sync (#153) (1672720)
- test: resolve SubtitleLibraryDAO schema validation and test framework improvements (#80) (4be2b8a)
- titlebar: keep title bar fixed at top during page scroll (b3ff5c2)
- ui: Remove white border shadow from modal buttons in dark mode (#124) (eb22660)
- ui: use system title bar for Windows and Linux platforms (#158) (4075b9c)
- updater: remove detailed release notes from system update dialog (#152) (f998d7b)
- updater: resolve auto-update channel handling and version-based test defaults (#98) (e92c7f0)
- updater: resolve pre-release version detection issue (#161) (0afad9e)
- windows: resolve file extension validation requiring double dots (.mp4 vs ..mp4) (#126) (91bab14), closes #118 #118
- 优化文件路径处理逻辑以支持不同平台 (dc4e1e3)
- 修复 settings 相关组件找不到的问题 (08f88ba)
- 修复全屏模式下速度选择窗口溢出的问题 (6309046)
- 修复在 Windows 上的 FFmpeg 文件下载和 ZIP 解压 (6347b4e)
- 修复在启用单句循环模式下,无法调整到下一句的问题 (ec479be)
- 修复文件路径处理逻辑以支持不同的 file URL 前缀 (740015d)
- 修复方向键冲突检测问题 (4a466c7)
- 修复无法通过按钮退出全屏模式的问题 (e69562b)
- 修复构建产物架构冲突问题 (2398bd7)
- 修复组件导出语句和优化字幕加载逻辑,移除未使用的状态 (39708ce)
- 删除上传到 cos 的步骤,因为网络波动问题上传失败 (1cac918)
- 在 UpdateNotification 组件中添加关闭对话框的逻辑,确保用户在操作后能够顺利关闭对话框 (845a070)
- 始终在脚本直接执行时运行主函数,确保功能正常 (a15378a)
- 忽略依赖项警告 (fc3f038)
- 更新主题样式,使用 token 中的 zIndex 替代硬编码值 (3940caf)
- 更新测试文件中的 useTheme 和 useVideoPlaybackHooks 的路径 (4fa9758)
- 移除构建和发布工作流中的空选项,始终将草稿发布设置为 true,以确保发布过程的一致性 (171028a)
- add API communication type definitions and unified export (ea9f1c0)
- add common base type definitions and interfaces for application (73bd604)
- add debounce hooks and corresponding tests (7646088)
- add domain type definitions and constants for video, subtitle, playback, and UI (a1c3209)
- add git hooks with lint-staged for automated code quality checks (1311af9)
- add handler to read directory contents (6ce1d9e)
- add IPC Client Service implementation with integration tests (fe4400f)
- add performance optimization hooks and corresponding tests (d7e1d0f)
- add selectors for subtitle, UI, and video states with computed properties and hooks (c64f41d)
- Add service layer type definitions for storage, video, subtitle, and dictionary services (c658217)
- add subtitle, UI, and video state actions for V2 (1a4042a)
- add unified export for V2 infrastructure layer type system (ad94ea8)
- add V2 state stores with type-safe validation and comprehensive documentation (264cc66)
- add Windows ARM64 architecture support (#157) (3d5152d)
- api: add request and response type definitions for video, subtitle, file operations, and playback settings (c0e9324)
- AutoResumeCountdown: add auto-dismissal when playback manually resumed (3852bca)
- ci: add alpha and beta branch support to test workflow (#94) (f3cb1aa)
- ci: add dynamic workflow names to show release version in actions list (#115) (5742ac8)
- ci: configure CodeRabbit for alpha, beta, and main branch PR reviews (#108) (074e94d)
- ci: implement semantic-release with automatic version detection (#117) (39b69fd)
- ci: implement semantic-release with three-branch strategy (#89) (5c6d4c5)
- ci: integrate semantic-release automation with GitHub workflow (#87) (874bd5a)
- ci: migrate from action-gh-release to native electron-builder publishing (#82) (eab9ba1)
- comprehensive auto-update system implementation (#73) (0dac065)
- ControllerPanel: add disabled state for Loop and AutoPause controls when subtitles are empty (a35f3e6)
- ControllerPanel: implement centralized menu management system for player controls (1523758)
- db: implement complete SQLite3 database layer with migrations and DAOs (0a8a7dd)
- db: migrate from Dexie to Kysely with better-sqlite3 backend (6b75cd8)
- define domain types for video, subtitle, and UI, and refactor RecentPlayItem interface imports (f632beb)
- dictionary: expose DictionaryService API in preload and add comprehensive tests (#143) (58fe719)
- enhance macOS build configuration with additional entitlements and notarization support (d6e8ced)
- ffmpeg: add China mirror support for FFmpeg downloads (#164) (8a53634)
- ffmpeg: implement dynamic FFmpeg download system with runtime management (#155) (161c8c7)
- ffmpeg: integrate bundled FFmpeg with automatic fallback mechanism (#112) (e826ad2)
- home: implement empty state with video file selection integration (b6f6e40)
- implement Ctrl+C subtitle copy with lightweight toast notification (#140) (e497f86), closes #142
- Implement dictionary engine framework (0d74a83)
- implement useThrottle hooks and corresponding tests (da30344)
- implement version parsing and channel mapping logic (8c95a2f)
- infrastructure: add entry points for constants and shared modules, and refine video playback rate type (94da255)
- logger: export logger instance for easier access in modules (5328152)
- performance: implement video import performance optimization with parallel processing and warmup strategies (#121) (e7fa955)
- persistence: add V2 state persistence manager and configuration files (a545020)
- playback: update playback rate label for clarity and add storage type definitions (5c40b98)
- player page (aa79279)
- player,logging,state: orchestrated player engine with intent strategies and new controller panel (73d7cfd)
- player: add Ctrl+] shortcut for subtitle panel toggle (#69) (e1628f2)
- player: comprehensive dictionary popover with pronunciation and theme support (#171) (1987f61)
- player: hide sidebar and optimize navbar for player page (#70) (5bb71e4)
- player: implement auto-resume countdown with UI notification (5468f65)
- player: implement comprehensive video error recovery (#113) (1e27033)
- player: implement favorite playback rates with hover menu system (#100) (c742fab)
- player: Implement fullscreen toggle functionality with keyboard shortcuts (#127) (586b064)
- player: implement hover menu system for control panel components (#99) (de2363a)
- player: implement volume wheel control with intelligent acceleration (#105) (351439b)
- player: reposition progress bar between video and controls (#71) (248feed)
- refine RecentPlayItem interface with detailed video info and playback metrics (81679b6)
- replace FFmpeg with MediaInfo for video metadata extraction (#95) (6326c80)
- scripts: optimize FFmpeg download progress display (#125) (992c233)
- search: implement video search engine with live results and highlighting (#110) (e459afa)
- setup GitHub Pages deployment for documentation (b8a42b9)
- sidebar: 禁用收藏按钮并添加开发中提示 (#81) (76e9b54)
- SplashScreen: add animated splash screen with typewriter effect and smooth transitions (31cfeca)
- startup: implement configurable startup intro with preloading optimization (#104) (7964b51)
- state.store: 新增多个 store (54e7ff5)
- state: implement V2 state management infrastructure with storage engine, middleware, and utility functions (e225746)
- storage: implement application configuration storage service (1209b56)
- subtitle-library: Add subtitle data caching for improved loading performance (#86) (40be325)
- SubtitleContent: implement word-level tokenization and interactive text selection (10c0cdf)
- telemetry: integrate Sentry error monitoring across main and renderer processes (#175) (f71c2da)
- types: add Serializable interface for flexible data structures (32981df)
- ui: enhance video selection clarity and simplify display (#101) (051ed71)
- update macOS notarization configuration to enable automatic notarization (6630e79)
- updater: integrate China-specific feed URLs for better update experience (#177) (4111cfb)
- video.store: add format property to CurrentVideoState and update video loading simulation (0349a63)
- VolumeControl: change volume popup from horizontal to vertical layout (d4d435b)
- workflow: auto-fetch GitHub release description when manual trigger without description (#179) (9a9d932)
- wsl: add WSL detection and hardware acceleration optimization (c99403e)
- 为字幕组件新增右键菜单功能 (62334d5)
- 为音量控制组件添加音量调节快捷键 (144d49c)
- 优化 PlayPage 组件性能,减少不必要的重新渲染;重构播放状态管理逻辑,提升用户体验 (24a2ebc)
- 优化最近观看记录加载状态显示 (e5f7e11)
- 优化单词查询逻辑,增加超时处理和取消请求功能,提升用户体验和性能 (c98dc4b)
- 优化字幕列表滚动体验 (63807c5)
- 优化字幕控制功能,新增字幕模式选择器,提升用户交互体验;重构相关组件,移除不必要的代码,简化逻辑 (559aada)
- 优化字幕文本分段逻辑 (33e591c)
- 优化字幕模式选择器组件,增强用户体验和视觉一致性,添加响应式设计和毛玻璃效果 (4b59a1b)
- 优化快捷键设置界面,增强输入状态反馈,更新样式以提升用户体验和一致性 (64db31c)
- 优化日志记录功能,新增组件渲染节流和数据简化处理,提升性能和可读性 (a6e8480)
- 优化标题栏平台信息处理 (fb5a470)
- 优化视频卡片和视频网格组件的样式与布局 (af59b44)
- 优化词典查询逻辑,增加未找到释义时的警告提示,并调整相关代码结构 (9f528bd)
- 优化进度条handler显示和对齐 (77d0496)
- 在 FullscreenTestInfo 组件中新增折叠功能 (b2eac46)
- 在 HomePage 组件中新增音频兼容性诊断功能,优化视频播放体验;更新视频兼容性报告以支持音频编解码器检测;重构相关逻辑以提升代码可读性和维护性 (3cac307)
- 在 SubtitleListContent 组件中引入 rc-virtual-list 以优化字幕列表渲染性能,增强自动滚动功能 (30165dc)
- 在 UpdatePromptDialog 组件中添加内容展开/折叠功能 (96d9b1f)
- 在构建和发布工作流中添加Windows、Mac和Linux平台的上传步骤,优化版本变量设置和上传路径逻辑 (3cfacb9)
- 在构建和发布工作流中添加更新 package.json 版本的步骤,确保版本号自动更新;优化草稿发布条件以支持预发布版本 (a78fbc7)
- 在构建和发布工作流中添加测试构建选项,更新版本变量设置和上传路径逻辑 (2848f92)
- 在视频上传时重置字幕控制状态,新增重置状态功能;更新快捷键设置以支持单句循环功能,优化用户体验 (688dcd6)
- 增强全屏模式下的样式支持 (94a77b1)
- 增强全屏模式的快捷键支持 (218882c)
- 增强字幕显示组件,新增中文字符检测和智能文本分割功能,优化用户交互体验 (8cd50d9)
- 增强字幕空状态组件,支持拖拽文件导入 (db1f608)
- 增强字幕组件交互功能 (3e7e8c7)
- 增强字幕组件和文本选择功能 (36c44aa)
- 增强快捷键设置功能,新增快捷键冲突检查和平台特定符号显示,优化用户输入体验和界面样式 (bde034b)
- 增强更新通知系统,添加红点提示和用户交互逻辑 (fdf4c81)
- 增强版本比较逻辑,优化更新通知系统 (f29a25f)
- 增强视频兼容性模态框功能,支持初始步骤和分析结果 (3aba45c)
- 多平台构建和发布 (cc521ea)
- 实现动态 electron-updater 渠道配置 (28d2836), closes #3
- 将发布提供者从 generic 更改为 github,更新仓库和所有者信息,以支持自动更新功能 (b6d4076)
- 引入常量以支持视频容器格式检查 (da68183)
- 新增 AimButton 组件以支持手动定位当前字幕并启用自动滚动;更新 SubtitleListContent 组件以集成 AimButton,优化用户滚动体验与字幕自动滚动逻辑 (3c8a092)
- 新增 AppHeader 组件并更新样式,调整导航菜单布局以提升用户体验 (94e35c3)
- 新增 cmd-reason.mdc 文件并更新 cmd-refactor-theme.mdc 规则 (43d2222)
- 新增 E2E 测试用例和文件选择器助手 (9928349)
- 新增 git commit 内容生成规则文件 (6e0ee23)
- 新增主题系统 (369d828)
- 新增全屏模式支持 (e8c9542)
- 新增全屏视频进度条组件并重构视频控制逻辑 (7fc587f)
- 新增划词选中和快捷复制功能 (9e22b44)
- 新增单词卡片组件,支持单词点击后显示详细信息和发音功能;优化字幕显示样式,提升用户交互体验 (c6a4ab6)
- 新增字幕列表上下文及相关钩子,重构播放页面以使用新的字幕管理逻辑,提升代码可读性与功能性 (7766b74)
- 新增字幕列表项样式并禁用焦点样式 (654a0d1)
- 新增字幕布局锁定功能 (82e75dc)
- 新增字幕模式覆盖层组件及相关逻辑 (e75740c)
- 新增字幕空状态组件和外部链接打开功能 (5bd4bd6)
- 新增字幕组件样式,重构相关组件以支持主题系统,提升视觉一致性和用户体验 (822cb74)
- 新增字幕重置功能,优化字幕设置管理;重构相关组件以提升用户体验和代码可维护性 (f4702a5)
- 新增存储管理功能,添加最近播放项的增删改查接口,优化用户体验;重构相关组件,提升代码结构与可维护性 (a746ed3)
- 新增当前字幕显示上下文管理,优化字幕点击交互逻辑,确保用户体验流畅;重构相关组件以提升代码可维护性 (91a215d)
- 新增快捷键设置模态框和快捷键显示组件,优化用户输入体验 (b605257)
- 新增控制弹窗样式并优化字幕模式选择器的交互体验;重构相关组件以提升代码可读性和用户体验 (79eabdf)
- 新增播放设置上下文,重构相关组件以支持播放设置的管理;更新播放页面以使用新的播放设置上下文,提升代码可读性与功能性 (6fe8b4f)
- 新增播放速度覆盖层和相关功能 #1 (d8637eb)
- 新增数据清理功能,优化日志记录中的数据序列化,确保记录的日志信息更为准确和安全 (8ada21a)
- 新增数据目录管理功能 (2c93e19)
- 新增日志系统,集成 electron-log 以支持主进程和渲染进程的日志记录;更新相关 API 以便于日志管理和调试 (1f621d4)
- 新增智能分段功能及相关测试 (f5b8f5c)
- 新增视频UI配置管理功能 (eaf7e41)
- 新增视频管理组件和确认模态框 (4263c67)
- 新增视频转码功能及兼容性警告模态框 (4fc86a2)
- 新增第三方服务配置组件,整合 OpenAI 和词典服务设置,优化用户界面和交互体验;引入模块化样式,提升整体一致性 (3e45359)
- 新增获取所有字幕的功能,优化字幕查找逻辑以支持根据当前时间查找上下句字幕,提升用户体验 (04c5155)
- 新增词典服务相关的 IPC 处理器,支持有道和欧陆词典的 API 请求;实现 SHA256 哈希计算功能,增强应用的词典查询能力 (707ee97)
- 新增边距验证逻辑,优化字幕拖拽和调整大小功能,确保字幕区域不超出容器边界 (2294bcf)
- 更新 AppHeader 组件,增加背景装饰、应用图标和名称,优化导航按钮和辅助功能按钮的样式,提升用户体验 (651c8d7)
- 更新 AppHeader 组件,调整文本样式和名称,提升视觉效果 (f208d66)
- 更新 GitHub Actions 工作流和文档,支持更多发布文件 (c4bf6f7)
- 更新 index.html 文件,修改内容安全策略以支持新的脚本源,添加本地开发服务器的支持,优化页面加载逻辑 (8c11edf)
- 更新 PlaybackRateSelector 组件样式和文本 (034e758)
- 更新 SubtitleListContent 组件,替换 rc-virtual-list 为 react-virtualized,优化字幕列表渲染性能与用户体验;调整样式以适配虚拟列表,增强滚动效果与响应式设计 (63d9ef4)
- 更新 SubtitleListContent 组件,添加激活字幕索引状态以优化渲染逻辑;重构字幕项组件以减少不必要的重渲染并提升性能;增强自动滚动逻辑,确保用户体验流畅 (c997109)
- 更新E2E测试,移除冗余测试用例并优化测试ID使用 (51fd721)
- 更新E2E测试配置,添加Linux虚拟显示器支持并检查构建输出 (ac1999f)
- 更新主题系统,新增字体粗细、间距、圆角等设计令牌,优化组件样式一致性 (62f87dd)
- 更新侧边栏导航功能和禁用状态提示 (d41b25f)
- 更新最近播放项管理,使用文件ID替代原有ID,新增根据文件ID获取最近播放项的功能,优化播放设置管理,提升代码可维护性 (920856c)
- 更新图标文件,替换Mac和Windows平台的图标,优化SVG图标文件结构 (bfe456f)
- 更新图标资源,替换 PNG 格式图标并新增 SVG 格式图标,提升图标的可扩展性与清晰度 (8eaf560)
- 更新字典引擎设置,默认选择为 'eudic-html',提升用户体验 (ebaa5d2)
- 更新字幕上下文菜单,优化重置按钮状态和样式 (cc542f2)
- 更新字幕列表项组件,添加注释以说明仅展示学习语言,优化双语字幕显示逻辑 (89e2b33)
- 更新字幕加载功能,新增对 ASS/SSA 格式的支持;优化字幕文件扩展名和解析逻辑,提升用户体验 (9cab843)
- 更新字幕加载模态框样式,新增加载状态提示与取消功能;重构相关逻辑以提升用户体验与代码可读性 (1f8442a)
- 更新字幕展示组件样式,添加浮动控制按钮及其样式,优化响应式设计 (ac586e2)
- 更新字幕控制功能,添加自动暂停选项,修改快捷键设置,优化相关逻辑和组件交互 (428e4cf)
- 更新字幕模式选择器,整合字幕显示模式的获取逻辑,优化状态管理,增强调试信息 (c2d3c90)
- 更新循环播放设置,支持无限循环和自定义次数 (e6c5d2e)
- 更新快捷键设置,修改单句循环和字幕导航的快捷键,优化用户体验 (ce66e62)
- 更新总结规则,启用始终应用选项;新增指令处理逻辑以提取项目开发指导内容并编写开发文档,确保文档规范性 (d627e2e)
- 更新构建产物处理逻辑,支持多架构文件重命名和 YAML 文件引用更新 (e206e1d)
- 更新构建配置,支持多架构构建和文件重命名 (17b862d)
- 更新样式文件,优化警告框和卡片组件的视觉效果,增强响应式设计支持 (ea6b4ab)
- 更新滚动条样式以支持 WebKit 规范 (224f41d)
- 更新视频上传钩子,使用日志系统记录视频DAR信息和错误警告,提升调试能力 (2392b38)
- 更新视频兼容性模态框样式,提升用户体验 (f5c1ba5)
- 更新视频播放器和播放状态管理逻辑,重构字幕处理方式,统一使用 subtitleItems 以提升代码一致性与可读性;优化播放状态保存与恢复机制,确保更流畅的用户体验 (0cbe11d)
- 更新视频播放器的时间跳转逻辑,支持来源标记 (f170ff1)
- 更新视频文件信息样式,添加文件名截断功能,优化头部布局以提升用户体验 (a6639f1)
- 更新窗口管理和标题栏组件,优化样式和功能 (a1b50f6)
- 更新窗口管理器的窗口尺寸和最小尺寸,优化用户界面;移除不必要的响应式设计样式,简化 CSS 结构 (dd561cf)
- 更新第三方服务配置组件,修改标签和提示文本为中文,增强用户友好性;新增申请应用ID和密钥的链接提示,提升信息获取便利性 (5e68e85)
- 更新设置导航组件样式和功能 (535f267)
- 更新设置页面,移除视频转换相关功能 (0d96fac)
- 更新设置页面,简化快捷键和数据管理部分的渲染逻辑,新增存储设置选项,优化用户界面和交互体验 (9942740)
- 更新设置页面样式和主题支持 (816ca6d)
- 更新设置页面的按钮样式和移除音频兼容性警告 (f0be1e2)
- 更新通知系统优化,增强用户交互体验 (6df4374)
- 更新页面渲染逻辑,添加页面冻结功能,确保首页始终挂载并优化其他页面的条件渲染,提升用户体验 (7a4b2ba)
- 替换应用头部为侧边栏组件 (0e621fc)
- 沉浸式标题栏 (9c7c7d9)
- 添加 @ant-design/v5-patch-for-react-19 支持 React19 (95d1019)
- 添加 Stagewise 工具栏支持,仅在开发模式下初始化,更新 CSP 设置以允许外部样式源 (ededb64)
- 添加Codecov配置文件,更新测试配置以支持覆盖率报告上传 (d9ec00d)
- 添加E2E测试支持,更新Playwright配置和相关脚本 (247b851)
- 添加全屏功能支持,优化视频播放器组件,更新样式以移除不必要的自定义样式,提升用户体验 (a7d4b1c)
- 添加字幕控制组件,支持单句循环和自动循环功能,更新快捷键设置,优化样式和响应式设计 (2902f2d)
- 添加应用图标 (b86e142)
- 添加应用图标并优化代码中的事件监听和清理逻辑 (c39da08)
- 添加当前字幕展示组件,支持多种字幕显示模式及单词hover交互,优化视频控制区样式和响应式设计 (df4b74a)
- 添加循环播放功能,支持自定义循环次数设置 (1dbccfa)
- 添加文件系统相关的 IPC 处理器,支持文件存在性检查、读取文件内容、获取文件 URL、文件信息获取及文件完整性验证;更新 preload 和 renderer 逻辑以支持视频和字幕文件的选择与恢复功能,优化用户体验 (6d361eb)
- 添加更新通知和提示对话框组件 (38df4d2)
- 添加更新通知跳过版本功能,优化用户体验 (165adb6)
- 添加本地更新测试环境脚本和相关功能 (00aa019)
- 添加构建产物重命名和验证脚本 - 新增 rename-artifacts.ts 用于重命名构建产物以符合发布要求 - 新增 verify-build-artifacts.ts 用于验证构建产物的存在性和完整性 (696cedc)
- 添加构建和发布工作流,更新测试和发布脚本 (2744005)
- 添加欧陆词典HTML解析服务和单元测试框架 (52ace3e)
- 添加测试Electron CDP连接的脚本 (9982514)
- 添加版本管理脚本,支持版本类型检测和版本号递增功能;更新构建和发布工作流,优化版本变量设置和上传路径逻辑;新增发布指南文档,详细说明版本管理和发布流程 (282bde8)
- 添加视频播放器点击事件处理,优化用户交互体验 (69c378f)
- 添加视频文件选择加载状态和清空确认模态框 (ca95a7d)
- 添加视频格式转换功能,新增视频兼容性检测与转换指南,优化视频播放器与文件上传逻辑,提升用户体验;重构相关组件,简化代码结构 (5fd89fe)
- 添加腾讯云COS上传功能,支持发布文件和自动更新文件的上传 (e79e5a9)
- 添加自动更新功能,整合更新处理器,更新设置界面,支持版本检查和下载 (5e5a03e)
- 添加页面切换过渡效果,优化播放页面与性能监控功能;重构相关组件,提升用户交互体验与代码结构 (e583ecc)
- 添加页面导航功能,重构 App 组件以支持多页面切换,新增关于、收藏、设置等页面,优化样式和用户体验 (51f4263)
- 添加高效测试标识符管理指南及相关工具函数,优化E2E测试中的测试ID使用 (2dcfe5e)
- 现代化视频控制组件,优化样式和交互逻辑,增强用户体验;添加音量和设置控制,支持自动隐藏功能 (dc45b83)
- 移除 HomePage 组件中的 subtitleIndex 属性,优化视频播放状态管理逻辑;调整视频网格布局以提升用户界面的一致性与可读性 (8f54e7f)
- 移除 PlayPageHeader 的 CSS 模块,改为使用主题系统样式管理,提升组件的可维护性和一致性 (52cedbc)
- 移除 useSidebarResize 钩子及相关样式,改用 Ant Design 的 Splitter 组件实现侧边栏调整功能,优化播放页面布局与用户体验 (bead645)
- 移除字幕位置控制相关组件及其逻辑,简化视频控制界面以提升用户体验 (1edc857)
- 移除字幕设置相关功能和组件 (32f0138)
- 移除推荐视频假数据,更新欢迎信息,优化首页布局和用户体验 (78b000f)
- 移除视频播放器和播放控制钩子,简化代码结构以提升可维护性 (513ba3c)
- 移除视频播放器的响应式设计中不必要的内边距,简化 CSS 结构 (f8c8c28)
- 调整 HomePage 组件的响应式布局,优化列宽设置以提升用户体验 (3c435bf)
- 调整主题样式宽度 (2fe9ff2)
- 调整全屏视频控制组件的进度条位置和样式 (679521f)
- 调整字幕覆盖层样式,修改底部位置为0%,移除移动端特定样式,简化 CSS 结构 (515151d)
- 重命名视频控制组件为 VideoControlsFullScreen,更新相关导入,提升代码可读性 (0fe7954)
- 重构 SidebarSection 和 SubtitleListContent 组件,简化属性传递,增强字幕索引处理逻辑,优化自动滚动功能;新增获取指定时间点字幕索引的功能,提升用户体验与代码可读性 (dabcbeb)
- 重构字幕控制组件样式,使用主题系统优化按钮和图标样式,提升视觉一致性和用户体验 (12e38f2)
- 重构字幕状态管理,新增视频特定字幕设置 (ff5b5de)
- 重构字幕组件,新增字幕覆盖层和文本组件,优化字幕显示逻辑和性能;移除旧版字幕组件,提升代码可维护性 (4fbef84)
- 重构存储处理器模块,优化应用配置和通用存储功能 (065c30d)
- 重构存储管理功能,更新最近播放项的类型定义,优化播放设置管理,增强用户体验;新增播放设置的深度合并逻辑,提升代码可维护性 (3f928d4)
- 重构应用布局与样式,新增主页与播放页面组件,优化用户交互体验;整合最近文件管理功能,提升视频文件选择与加载逻辑 (f3fefad)
- 重构循环切换功能,简化状态管理和播放逻辑 (fe11037)
- 重构播放状态管理,替换为使用最近播放列表钩子,简化参数传递并优化代码逻辑;新增最近播放列表钩子以支持播放项的增删改查功能 (1ec2cac)
- 重构播放页面,整合视频播放器与字幕控制逻辑,新增 VideoPlayerProvider 以管理视频播放状态,优化组件结构与性能;移除不再使用的 SubtitleControls 组件,简化属性传递,提升代码可读性 (e4111c9)
- 重构视频控制组件,新增全屏控制样式与逻辑,优化播放控制体验;更新相关类型定义,提升代码可读性与功能性 (5c72a1b)
- 重构视频播放上下文,新增视频文件上传和选择功能;更新相关组件以支持新的上下文逻辑,提升代码可读性与功能性 (37e128e)
- 重构视频播放器组件,移除 CSS Modules,采用主题系统样式管理,提升代码可维护性和一致性 (b3981bc)
- 重构视频播放器逻辑,整合视频播放状态管理,优化组件结构;移除不再使用的 usePlayingVideoContext 钩子,新增多个视频控制钩子以提升性能与可读性 (b1a6dc2)
- 重构视频播放设置管理,整合字幕显示设置,优化状态管理逻辑,提升用户体验和代码可维护性 (6c3d852)
- 重构设置页面,新增快捷键、数据管理和占位符组件,优化用户界面和交互体验;引入快捷键上下文管理,支持自定义快捷键功能 (a498905)
- Revert "build: 在构建和发布工作流中添加调试步骤,列出下载的文件并检查Windows、Mac和Linux平台的自动更新配置文件是否存在" (d0f8fc4)
- Revert "chore: 更新 Linux 构建环境配置" (cc179a0)
- Revert "feat: 在构建和发布工作流中添加更新 package.json 版本的步骤,确保版本号自动更新;优化草稿发布条件以支持预发布版本" (be1cf26)
-
ffmpeg: Service now defaults to China mirror for better performance in Chinese regions
-
fix(test): remove unused parameter in FFmpegDownloadService test
- Fix TypeScript error TS6133 for unused 'url' parameter
- Replace unused 'url' with underscore in mock implementation
- player,logging,state: - Removed TransportBar and deprecated hooks (usePlayerControls/useVideoEvents/useSubtitleSync). Migrate to ControllerPanel with usePlayerEngine/usePlayerCommandsOrchestrated.
- Player store control actions are engine-only; components should send commands via the orchestrator instead of mutating store directly.
v0.2.0-alpha.7(2025-06-20)
- 为 macOS 包签名以避免不信任警告
v0.2.0-alpha.6(2025-06-14)
- 构建修复: 发布流程修复,尝试解决打包问题
v0.2.0-alpha.5(2025-06-14)
- 自动更新: 新增自动更新功能,支持自动检查和下载更新
- 构建修复: 发布流程修复,尝试解决打包问题
v0.2.0-alpha.4(2025-06-13)
- Windows: 支持 x64 和 arm64 架构
- macOS: 支持 x64 和 arm64 架构
- Linux: 支持 x64 架构
v0.2.0-alpha.3(2025-06-12)
- 依赖优化: 移除 cheerio 依赖以解决 Electron 打包问题,使用原生正则表达式替代 HTML 解析 #50
- 字典解析: 重构 parseEudicHtml() 为 parseEudicHtmlWithRegex(),支持多种 HTML 格式解析
- 运行时兼容: 提升 Electron 运行时兼容性,减少打包体积
- 发布流程: 新增自动化发布和版本检查功能,包括 release:auto 和 release:check 命令
- Git Hook: 添加 Git pre-push hook,在推送前自动检查版本状态
- 版本管理: 新增版本管理和发布指南文档,详细说明版本管理流程
- 发布检查: 实现发布前检查脚本,验证版本号、Git 状态和基本测试
- 构建目标: 移除 Linux 构建目标中的 snap 选项,简化构建配置
- 自动化脚本: 实现自动化发布脚本,支持用户选择版本类型和发布渠道
v0.2.0-alpha.2(2025-06-12)
- 字幕模式覆盖层: 新增字幕模式覆盖层组件,支持实时显示当前字幕模式状态
- 快捷键切换: 完善字幕模式快捷键功能,提供即时的视觉反馈
- 模式监控: 新增字幕模式监控钩子,自动跟踪字幕模式变化
- 测试覆盖: 增加字幕覆盖层组件的单元测试,提升代码质量
- 依赖管理: 更新核心依赖版本,包括 electron、antd、cheerio 等
- 版本约束: 在 package.json 中新增 overrides 配置,确保依赖版本一致性
- 构建简化: 简化 CI/CD 流程,移除不必要的测试和检查步骤
- 多架构支持: 优化 electron-builder 配置,支持 x64 和 arm64 多架构打包
- 类型配置: 优化 tsconfig.node.json 配置,简化包含路径
- 代码质量: 修复依赖版本不一致问题,提升项目稳定性
- 构建缓存: 优化构建缓存机制,提高构建效率
v0.2.0-alpha.1(2025-06-11)
- 统一设计: 全面重构UI组件,采用统一的主题系统管理样式
- 一致体验: 所有组件移除CSS Modules,使用标准化设计令牌(spacing、font-weights、border-radius等)
- 主题切换: 完善的明暗主题支持,提供更加流畅的主题切换体验
- 响应式布局: 优化组件响应式设计,提升不同屏幕尺寸下的用户体验
- 沉浸式体验: 全新的沉浸式全屏播放体验
- 智能控制: 全屏模式下的专用控制界面,支持进度条、音量控制等功能
- 快捷键优化: 增强全屏模式下的快捷键支持
- 自适应样式: 全屏模式下自动切换深色主题,提供最佳视觉效果
- 智能分段: 新增智能字幕分段功能,自动优化字幕显示效果
- 文本选择: 支持字幕文本选择和快捷复制功能
- 右键菜单: 新增字幕右键菜单,提供更多操作选项
- 布局锁定: 字幕位置锁定功能,避免意外拖拽
- 空状态优化: 改进字幕空状态显示,支持拖拽导入字幕文件
- 播放速度: 新增播放速度覆盖层显示,实时反馈速度变化
- 音量控制: 优化音量控制组件,提供更精确的音量调节
- 进度管理: 改进播放进度管理,更好的进度保存和恢复
- 视频兼容性: 新增视频兼容性检测和转码功能
- 状态管理: 引入Zustand状态管理,提升性能和维护性
- 组件解耦: 大规模重构VideoPlayer和SubtitleV3模块,提高代码可维护性
- 样式系统: 移除CSS Modules依赖,统一使用主题系统管理样式
- 性能优化: 优化渲染性能,减少不必要的重渲染
- 最近播放: 优化最近观看记录的加载状态显示
- 视频管理: 新增视频文件管理组件和确认模态框
- 数据目录: 新增数据目录管理功能
- 外部链接: 支持外部链接打开功能
- 完整文档: 新增EchoLab完整文档和用户指南
- GitHub Pages: 设置GitHub Pages部署,提供在线文档访问
- E2E测试: 新增端到端测试用例,提升代码质量
- 开发指南: 完善开发者文档和贡献指南
v0.1.0-beta.1(2025-06-04)
- 一键跳转: 快速跳转到上一句/下一句字幕
- 自动暂停: 每句结束后自动暂停,便于消化理解
- 单句循环: 重复播放当前句子,强化练习效果
- 精确同步: 字幕与视频完美同步显示
- 变速播放: 支持 0.25x - 2.0x 多档速度调节
- 精确跳转: 10秒前进/后退功能
- 音量控制: 快捷键调节音量
- 多格式支持: 兼容 SRT、VTT、ASS/SSA、JSON 格式
- 自动检测: 智能识别同名字幕文件
- 双语显示: 支持原文、译文、双语三种模式
- 自由定位: 字幕位置可拖拽调整
- 播放记录: 自动保存观看进度
- 文件管理: 智能的最近播放列表
- 进度恢复: 自动恢复上次播放位置
| 功能 | 快捷键 | 说明 |
|---|---|---|
| 播放/暂停 | 空格键 |
切换播放状态 |
| 上一句字幕 | H |
跳转到上一句 |
| 下一句字幕 | L |
跳转到下一句 |
| 单句循环 | R |
开启/关闭循环 |
| 自动暂停 | P |
开启/关闭自动暂停 |
| 音量调节 | ↑/↓ |
调大/调小音量 |
| 快速跳转 | ←/→ |
后退/前进10秒 |
- 常见格式: MP4, AVI, MKV, MOV, WMV, FLV
- 高清支持: 4K/1080P 高清视频
- 编码兼容: 支持主流视频编码格式
- SRT: 最常用的字幕格式
- VTT: Web 标准字幕格式
- ASS/SSA: 高级样式字幕格式
- JSON: 自定义 JSON 字幕格式