Jasna 完整指南:从首次启动到批量修复,一篇走完 GUI 视频修复全流程

发布时间:2026/11/4 6:08:46
Jasna 完整指南:从首次启动到批量修复,一篇走完 GUI 视频修复全流程 Jasna 完整指南从首次启动到批量修复一篇走完 GUI 视频修复全流程【免费下载链接】jasnaVideo restoration tool项目地址: https://gitcode.com/GitHub_Trending/ja/jasnaJasna 是一款开源视频修复工具GUI 版把批量队列、预设管理、实时预览播放器与模型激活整合进同一套窗口。本文带你走完五个环节安装位置与首次启动检查、把视频加进队列并拿到成片、用预设减少重复配置、边修边看的播放器缓冲机制以及日常维护与支持者模型激活全程附关键默认值与异常处置不必再反复翻官方文档。Jasna 装在哪里最不容易出问题首次启动向导的检查项与硬性要求安装位置有硬性要求本地盘、纯 ASCII 路径强烈建议 SSD界面上你只会看到首次启动向导逐项打勾但有几个前提是硬性约束装错位置后面每一步都会受影响必须装在本地磁盘Windows 侧要求 NTFSLinux 侧支持 ext4、Btrfs、XFS网络挂载路径不支持。安装路径必须纯 ASCII目录里出现中文、日文或带重音的字母都会让检查失败。对应实现在jasna/os_utils.py的check_ascii_install_path它对安装目录做一次 ASCII 编码一旦编码失败即判负结果直接显示在向导里。强烈建议 SSD机械盘不是不能跑而是启动和加载模型都会明显变慢——jasna/gui/app.py的_warn_if_installed_on_hard_disk会调用jasna/os_utils.py的install_on_hard_disk实测磁盘类型Windows 通过驱动查询是否有寻道开销Linux 读取/sys下块设备的 rotational 标志对 Btrfs 匿名设备也做了兼容。判定为 HDD 时日志面板落一条hard_disk_warning警告而不是弹窗拦截。向导到底在查哪几项必查项失败会挡住进入主界面向导窗口打开后逐项显示进度。基础检查项共 6 项外加两个条件项Windows 下追加共享内存策略项使用 AMD 卡时追加 AMF 运行时项。检查项验证内容失败后的后果安装路径是否为纯 ASCII 本地盘路径阻塞按钮变「退出」ffprobe能否调起 ffprobe且 FFmpeg 主版本须为 8阻塞GPU是否检测到受支持显卡、计算能力是否达标阻塞CUDA / ROCm运行时是否可用顺带报告版本与计算能力阻塞驱动GPU 驱动版本是否合规阻塞共享内存仅 WindowsNVIDIA 回退策略是否为「Prefer No Sysmem」仅警告不阻塞启动共享内存项被列入jasna/gui/system_checks.py的WARNING_ONLY_CHECKS所以它失败只是警告。检查 30 秒跑不完会怎样未完成的项按失败计检查跑在后台线程jasna/gui/wizard.py的_start_checks_in_backgroundUI 每 100ms 轮询一次结果如果 30 秒内线程还没跑完常见于驱动查询卡住或 torch 冷导入很慢向导就停止等待、直接展示已有结果没跑完的项一律按失败计而不是通过判定逻辑见jasna/gui/system_checks.py的evaluate_check_results。底部按钮只有在必查项失败时才会变成「退出」只剩警告时照样可以进入主界面。向导只在该版本首次启动时强制弹出通过版本由jasna/gui/models.py的set_system_check_passed_version记录决定某版本是否需要重新走检查流程。补充资料docs/zh/gui.md从加视频到拿到成片Jasna 队列操作、输出命名与冲突策略往队列里加视频有几种入口处理顺序怎么定主操作区就是队列面板jasna/gui/queue_panel.py日常动作有四个入口「添加文件」按钮加视频或图片_on_add_files旁边的文件夹图标整目录导入_on_add_folder直接把文件拖到队列区域上基于TkinterDnD的_on_file_drop拖目录会递归导入队列项之间可拖拽换序。处理顺序固定为从上到下。超过 20 个条目时自动分页常量_PAGE_SIZE 20用底部箭头翻页翻到第几页都按完整顺序执行注意拖拽换序只能在当前页内完成。每一行条目上有四个入口jasna/gui/job_list_item.py的JobListItem剪刀图标打开区间编辑器播放图标把该视频送入视频播放器并停在暂停状态三点菜单或右键可打开所在文件夹、复制路径、打开已修复的输出、把已完成/失败/跳过的条目重新放回队尾叉号整行移除。跑起来之后每行实时显示进度百分比、FPS 与预计剩余时间update_job_status把progress、fps、eta_seconds刷到对应行。两个全局按钮▶ 开始会处理队列里的全部条目包含之前已完成或失败的——所以中途改了配置直接再按一次即可不用重新导入文件■ 停止会结束本轮任务正在处理的条目退回等待状态jasna/gui/processor.py的_mark_stopped写到一半的输出文件会保留在磁盘上下次遇到它时按「文件冲突」策略处理。「清除已完成」移除完成项「清空」移除全部条目。开始按钮为什么是灰的按这个顺序点亮它界面上按钮旁会带一句原因提示。逻辑集中在jasna/gui/app.py的_update_start_button_state队列非空、没有模型正在下载、没有修复预览占用 GPU三者同时满足才点亮缺哪一条提示文案就指向哪一条无文件 / 模型下载中 / 预览恢复中。输出文件撞名怎么办三种冲突策略各自的行为输出设置区位于队列面板上方三个控件各管一件事「与输入相同」把每个结果保存在原文件旁边输出位置直接输入文件夹路径或点文件夹按钮浏览选定——选定即自动关闭「与输入相同」之后想恢复再点一次该开关命名模板里{original}代表输入文件名不含扩展名。替换发生在jasna/media/media_files.py的folder_output_path即output_pattern.replace({original}, input_path.stem)出厂默认模板是{original}_restored.mp4jasna/gui/models.py的DEFAULT_OUTPUT_PATTERN输入my_video.mp4就得到my_video_restored.mp4。撞名不是等文件写出来才暴露输出路径或模板一变相关队列条目会立刻被高亮_refresh_conflicts重新计算后调用set_conflict。真正落到已有同名文件上时行为由「基本处理」分区的file_conflict下拉框jasna/gui/settings_sections/basic.py决定策略遇到同名已有文件时的行为默认界面提示auto_rename新文件改名保存两者都保留是无overwrite直接替换已有文件否选中时额外显示警告图标与提示skip不输出该文件条目标为已跳过否无预设与按视频覆盖Jasna 如何减少重复配置怎么把当前设置一键存成预设重启后还停留在上次方案设置面板顶部工具条jasna/gui/settings_panel.py的_build_preset_bar可以把当前全部设置存成一个名字。比如给「1080p 快速」和「4K 最佳质量」各建一个处理不同素材前一键切换。底层是jasna/gui/models.py的PresetManagercreate_preset/update_preset/delete_preset负责增删改get_last_selected/set_last_selected记录上一次使用的预设——「Jasna 重启后还停留在你上次的预设」就是靠它旧版本保存的预设数据经过_migrate_preset_dict自动迁移无需手工转换手动改动任意设置后面板会亮起「已修改」标记_mark_modified防止你以为当前仍是某个出厂方案出厂预设与用户预设分开存放对出厂预设的删除操作会被拒绝。同一队列里为什么有的视频用不同的检测阈值全局配置归预设管但有一类例外按视频单独存在区间编辑器里设置的检测模型与检测阈值只属于当前这个视频。队列项通过JobItem.try_set_video_optionsjasna/gui/models.py单独记账其余视频保持各自参数。一个队列里完全可以混放「高阈值粗检」和「低阈值精检」的素材互不干扰。图片怎么逐张对比后再保存只留满意的结果静态图片走「交互式处理图片」入口分区定义在jasna/gui/settings_sections/image_restoration.py窗口实现为jasna/gui/interactive_image_restore.py打开后是一个左右对比视图逐张浏览_previous_image/_next_image_clicked换种子立即重看_change_seed在原图、遮罩、结果三种视图间切换_mask生成遮罩层_set_view切换模式只对满意的结果点保存_save_current。它比「每次重跑整个任务」快是因为渲染放在后台 worker 线程按单帧执行_worker_loop/_render换种子只是在同一张已准备好的帧上再做一次前向推理。补充资料docs/zh/advanced_processing.md边修边看Jasna 实时预览播放器的缓冲机制与打开限制点页眉的「视频播放器」jasna/gui/app.py的_open_video_player可以边修复边观看全程不产生输出文件。操作三步1. 选检测模型与检测阈值需要的话再叠加二次修复——RTX Super Res 或 UNet 4xjasna/gui/video_player.py的available_player_secondary_restorations给出可选集合2. 点「选择视频」3. 按播放。播放器为什么有时打不开互斥是硬约束队列处理或修复预览任一在跑播放器就打不开——_open_video_player入口处检查_preview_gpu_busy与processor.is_running()任一为真直接返回同时_update_video_player_button_state把页眉按钮置灰避免你点半天没反应还猜不出原因。「就绪秒数」反复归零是 GPU 修不过实时速度实时性的保证在jasna/gui/raw_player.py的带时间戳帧缓冲里后台修复最多领先播放 3 秒BUFFER_SECONDS 3.0预滚满 1.5 秒才真正开声PREROLL_SECONDS 1.5。修复线程把帧写进环形缓冲播放端按时间戳弹出到期帧pop_due缓冲溢出时新帧顶掉旧帧_would_overflow_locked。所以「就绪秒数」反复归零对应的正是 GPU 修复速度追不上播放速度音频会停住等更多画面就绪而不是程序出错。改参数后从当前位置重播方向键各跳 30 秒修改模型、阈值或二次修复后管线会重建并从当前位置重新播放_request_pipeline_reload。空格播放/暂停_space_pressed左/右方向键各跳 30 秒_SEEK_STEP_SECONDS 30.0全屏状态下把鼠标移到底部边缘控制栏自动浮现。状态栏持续显示「已提前修复好的秒数」。播放器固定使用 BasicVSR不走 LTX 管线。补充资料docs/zh/streaming.md日常维护重跑系统检查、切换语言、日志与系统状态刚更新完驱动怎么重跑系统检查除每个版本首次启动必跑之外页眉随时可以重跑jasna/gui/app.py的_show_system_check典型场景是刚更新完驱动。结果按版本记录set_system_check_passed_version决定某版本是否需要重新走检查流程。切换语言后为什么还要重启一次首次启动跟随系统语言页眉可切换。切换瞬间已构建控件的文字会立即刷新_on_language_changed触发_refresh_ui_text但完整生效需要重启 Jasna。内置语言包为zh、en、ja、ko、th五套位于jasna/gui/locales/。日志环形缓冲只留最后 5000 行反馈前先导出底部工具条的日志按钮展开 LogPaneljasna/gui/log_panel.py实时滚动支持 debug / info / warning / error 四级过滤。导出只包含最后 5000 行——上限常量_MAX_LOG_ENTRIES 5000底层环形缓冲deque(maxlen5000)自动丢弃最旧条目export_log_entries_txtjasna/gui/log_export.py写成.txt。反馈问题请附上这份文件。处理期间底部工具条在显示什么GPU、显存、内存与 CPU数据源是jasna/gui/system_stats.py的read_system_statsNVIDIA 解析nvidia-smi的 CSV 输出AMD 走 sysfs由jasna/gui/app.py的轮询线程每 1.5 秒采样一次并 post 回 UI 线程。补充资料docs/zh/tuning.md支持者模型激活Jasna 在线与离线激活步骤、名额规则与边界情况UNet 4x、SD 1.5、LTX 属于支持者模型使用前需要激活。页眉「激活 Jasna」打开对话框jasna/gui/components.py所有会阻塞的操作都放在后台线程jasna/gui/activation_worker.py界面不会卡死。在线激活与离线手动激活两条路径怎么走在线激活是最快路径输入许可证码点「在线激活」start_online_activation。此过程只上传许可证码和机器密钥两项激活完成后 Jasna 离线使用不再联系服务器。离线机器的手动激活分三步1. 复制机器密钥start_machine_key由本机硬件生成调用machine_key(cloud_workspaceFalse)2. 在任意联网设备打开激活页面或点「打开激活页面」填入机器密钥与许可证码也可以把这两个值直接发给出售方3. 把拿到的激活密钥粘回 Jasna点「激活」start_activation。名额规则一个许可证码覆盖 3 台电脑或云工作区同一台机器重复激活不占用新名额释放名额只能由所有者操作。更换主板Windows或重装 Linux 视为新电脑占用一个名额重装 Windows、更换显卡/硬盘/内存不占名额重新激活即可。激活密钥只包含你许可证码对应的模型不会多送。密钥被拒时怎么排查机器密钥、完整度与旧版签署先核对机器密钥再完整重抄一遍激活密钥为旧版 Jasna 生成的密钥需向出售方申请新密钥。以JW1-开头的身份密钥属于云端 CLI 用途直接粘进 GUI 会抛出license_cloud_cli_only错误start_activation内的显式检查提醒你在正确入口使用。许可证码仅官方渠道出售。中文界面下激活对话框与首次启动向导页脚会出现「闲鱼」按钮XianyuButton由shows_xianyu_seller按当前语言决定点击展示卖家二维码用闲鱼 App 扫码直达卖家主页界面顶部的「闲鱼」按钮同样弹出该二维码。补充资料docs/zh/models.md速查项目默认值 / 阈值出处文件 · 符号队列分页每页 20 项jasna/gui/queue_panel.py·_PAGE_SIZE输出命名模板{original}_restored.mp4jasna/gui/models.py·DEFAULT_OUTPUT_PATTERN文件冲突策略auto_rename自动重命名jasna/gui/models.py·AppSettings.file_conflict播放器预缓冲3.0 秒jasna/gui/raw_player.py·BUFFER_SECONDS播放器预滚开声1.5 秒jasna/gui/raw_player.py·PREROLL_SECONDS方向键跳转步长30 秒jasna/gui/video_player.py·_SEEK_STEP_SECONDS日志保留 / 导出行数5000 行jasna/gui/log_panel.py·_MAX_LOG_ENTRIES启动向导等待上限30 秒jasna/gui/wizard.py·_CHECKS_TIMEOUT_SECONDSFFmpeg 主版本要求8jasna/gui/system_checks.py·check_ffprobe系统状态采样周期1.5 秒jasna/gui/app.py·_start_system_stats_poller故障自查清单启动向导某项不过依次核对纯 ASCII 路径、FFmpeg 8 本体、驱动版本与 GPU 计算能力共享内存项失败只是警告不用处理。开始按钮灰着按「队列为空 → 模型下载中 → 预览占着 GPU」的顺序排查按钮旁的提示文案会直接告诉你原因。输出文件名不符合预期先看命名模板里{original}的替换结果再看自动重命名是否被动触发过。播放器「就绪秒数」反复归零当前配置下 GPU 修不过实时速度降分辨率或减轻修复配置再试。日志里找不到早先的报错环形缓冲只留最后 5000 行出问题先点导出再排查。激活密钥被拒机器密钥是否抄错、激活密钥是否完整、是否为旧版本 Jasna 所签JW1-开头的密钥不能进 GUI。【免费下载链接】jasnaVideo restoration tool项目地址: https://gitcode.com/GitHub_Trending/ja/jasna创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询