Jasna 视频修复 GUI 完全指南如何搞定系统检查、批量处理与激活排错的 5 个高频问题【免费下载链接】jasnaVideo restoration tool项目地址: https://gitcode.com/GitHub_Trending/ja/jasnaJasna 是一个开源的 GPU 视频修复桌面工具内置 GUI 可批量修复视频与静态图片、实时预览修复效果并通过激活解锁 UNet 4x、SD 1.5、LTX 等支持者模型。适合需要批量处理大量老旧素材、且出问题想快速定位到源码的用户。实际使用中最容易卡住的 5 个问题停止后写到一半的输出文件去哪了重跑会不会覆盖为什么视频播放器按钮置灰、点了没反应为什么玩家器状态栏的缓冲秒数反复归零为什么输出文件名多出 (1) 后缀、队列条目被高亮为什么粘贴激活密钥被拒或提示名额已满环境预检7 项检查、30 秒兜底与两类失败启动向导之前所有依赖都在后台线程里逐项检查UI 每 100ms 轮询一次结果30 秒兜底超时_CHECKS_TIMEOUT_SECONDS写在 jasna/gui/wizard.py到期后直接展示已完成的部分。每项检查的判定口径预检项怎么算通过不通过时表现安装路径纯 ASCIIcheck_ascii_install_pathjasna/os_utils.py把安装目录做 ASCII 编码无异常即通过红行底部按钮变退出阻塞启动FFmpeg 工具链check_ffprobejasna/gui/system_checks.py找到 ffprobe 且能跑-version主版本号必须等于 8红行阻塞启动GPU 硬件check_supported_gpuNVIDIA 计算能力不低于 7.5常量MIN_GPU_COMPUTEAMD 架构必须在本次构建编译的目标架构内红行阻塞启动CUDA / ROCmtorch.cuda.is_available()为 True 并能报出版本与计算能力红行阻塞启动GPU 驱动check_gpu_driver_versionNVIDIA 驱动主版本不低于 580Linux/ 610Windows常量MIN_DRIVER_VERSION红行阻塞启动NVIDIA 共享内存策略仅 Windowscheck_windows_nvidia_sysmem_fallback_policy读注册表值应为 Prefer No Sysmem Fallback仅警告该行显示 ⚠按钮仍是开始使用AMF 运行库仅 AMDcheck_amd_amf_runtime能加载amfrt64.dllWindows或libamfrt64.so.1Linux红行阻塞启动阻塞项与仅警告项的区分写死在源码里WARNING_ONLY_CHECKS这个集合里只有sysmem一个键其余任何一项失败底部按钮都从开始使用换成退出。机械盘检测install_on_hard_disk查磁盘寻道开销或 sysfs 的 rotational 标志不在向导内只在日志面板写一条hard_disk_warning警告——软警告不挡启动。⚠️ 30 秒兜底后从未跑完的检查项按失败计而不是通过evaluate_check_results的明确设计宁读成失败也不让红行和开始使用同时出现。看到红行先确认是不是卡住了别急着换环境。检查结果按版本记录get_system_check_passed_version()与当前__version__不一致才强制走向导jasna/gui/app.py之后随时可从页眉重跑。主窗口打开后还有后台 CUDA 预热_warm_up_cuda首次跑任务不会卡冷导入。环境通了接下来按出问题的频率从高到低过 5 张任务卡。按了停止写到一半的输出文件去哪了怎么做处理中按停止。stop()只做两件事置停止标志、取消当前管线不删任何文件。当前条目被_mark_stopped打回等待中PENDING未开始的条目原样留在队列。已写入的半成品输出文件留在磁盘上不删不清理。再按开始因为was_stopped为 True_on_start只继续跑列表里的等待项不会重跑已完成的。半成品文件重跑时按什么处理取决于基本处理里的文件冲突策略见第四张卡只想重跑个别失败项用条目菜单里的重新加入队列_requeue_job把完成/失败/跳过项挪回列表末尾并置为等待。隐藏约束停止后条目回到等待中是设计决定不是回滚失败。三个冲突策略的行为在_process_job里写死skip记为跳过、auto_rename调unique_path改名、overwrite直接写。队列非空、没有 LTX 模型在下载、预览没占 GPU 时开始按钮才可用_update_start_button_state。LTX 任务有断点工作目录重跑时若检测到旧工作目录与当前配置对不上ResumeMismatchError会弹确认框问是否丢弃续跑。去哪验证jasna/gui/processor.py_mark_stopped、_process_job、jasna/gui/app.py_on_start。想先看效果再正式跑别走整条管线直接开视频播放器——但它的按钮经常没反应原因在下面。为什么视频播放器按钮置灰、点了没反应怎么做先看队列里是否有正在处理的条目或修复预览是否在跑——这两者占着 GPU 时点播放器没有任何反馈。源码里就一句硬检查_preview_gpu_busy或处理器在跑时_open_video_player直接returnjasna/gui/app.py按钮置灰由_update_video_player_button_state同步显示。等处理结束或先按停止按钮恢复。打开后选检测模型、检测阈值需要时再选二次修复RTX Super Res 或 UNet 4x→ 选视频 → 按空格播放。快捷键空格播放/暂停左右方向键各跳 30 秒_SEEK_STEP_SECONDSF11 全屏全屏时鼠标移到底部 8px 边缘_FULLSCREEN_EDGE_PX控制栏自动浮出。隐藏约束播放器与批量处理互斥是硬约束静默拒绝、不弹提示设计决定不是显示 bug。Topaz Video AI 作为二次修复在播放器里不可用run_raw_restoration_passjasna/gui/raw_player.py直接抛ValueError这是源码写死的限制。音频播放依赖 python-vlc 和 libVLC 3缺失时自动退回静音的软件时钟SoftwareClock画面照常播。去哪验证jasna/gui/app.py_open_video_player、jasna/gui/raw_player.pyrun_raw_restoration_pass。播放器打开后状态栏那行已缓冲秒数就是判断 GPU 是否跟得上的尺子。为什么玩家器的缓冲秒数反复归零怎么做看状态栏显示的缓冲秒数后台修复线程往带时间戳的帧缓冲里写帧这个数表示比当前播放位置多修好了几秒。缓冲上限 3.0 秒 / 90 帧BUFFER_SECONDS、BUFFER_FRAMES要预滚满 1.5 秒PREROLL_SECONDS才真正开始播放显示帧率按 30fps 折算DISPLAY_FPS。秒数反复掉到零说明 GPU 修复速度低于播放速度画面等帧、音频暂停。换低一档的分辨率或模型档位从当前位置重播改设置会重建管线。同时瞄一眼底部状态条它每 1.5 秒采样一次 GPU 利用率、显存、内存、CPUread_system_statsNVIDIA 解析nvidia-smiAMD 读 sysfs显存吃紧就该降档。隐藏约束缓冲状态每 0.25 秒刷新一次_BUFFER_STATUS_INTERVAL_SECONDS数值跳得快不代表在抖。缓冲写满时是写线程阻塞等待背压不丢旧帧——归零不是数据丢失是修复跟不上。播放器里的模型、阈值、二次修复改动后从当前播放位置重建管线重播不是整片重跑。去哪验证jasna/gui/raw_player.pyTimestampFrameBuffer、jasna/gui/video_player.py_update_playing_buffer_status。效果确认后准备落盘下一个问题通常出在文件名上。为什么输出文件名多出 (1) 后缀、条目还被高亮怎么做看队列上方工具栏输出位置留空等价于与输入相同结果落在原文件旁边手动填路径或选文件夹会自动关掉与输入相同。命名用模板默认{original}_restored.mp4DEFAULT_OUTPUT_PATTERN定义在 jasna/gui/models.py{original}被输入文件名替换替换发生在folder_output_pathjasna/media/media_files.py。目标文件已存在且文件冲突策略是默认的auto_rename时unique_path把名字改成原名 (1).mp4最多尝试到 (9999)。想改行为去基本处理的文件冲突下拉框auto_rename默认/overwrite/skip增量补跑用。同一个列表里不同视频可以用不同的检测模型和阈值按视频覆盖的参数由JobItem.try_set_video_options记录仅在条目处于等待中状态时生效。隐藏约束改保存位置或模板的瞬间_refresh_conflictsjasna/gui/queue_panel.py立即重算每个等待条目的预期输出路径会覆盖已有文件的条目立刻高亮——重名提前暴露是设计决定。队列每页 20 条_PAGE_SIZE超过才出现翻页箭头拖动排序只能在同一页内完成跨页调整要先翻页。处理中队列里还能加文件、移除非当前条目但正在处理的那一条受保护拖不动也删不掉。⚠️ 选overwrite时弹出的 ⚠ 是界面唯一的防线已有文件被永久替换没有撤销。确认目标文件确实可以丢再选它。去哪验证jasna/media/media_files.pyfolder_output_path、unique_path、jasna/gui/queue_panel.py_refresh_conflicts。落盘稳了最后一类问题通常出在激活支持者模型的时候。为什么粘贴激活密钥被拒、或提示名额已满怎么做页眉打开激活 Jasna。所有网络与验签操作都在后台线程跑_start起的守护线程jasna/gui/activation_worker.py不卡 UI。在线激活默认输入许可证码点在线激活上传的只有许可证码和机器密钥之后完全离线工作。断网机器先复制机器密钥本机硬件生成在任意联网设备的激活页面填入机器密钥 许可证码拿到激活密钥粘回来点激活。提示license_cloud_cli_only时先检查密钥是否以JW1-开头——那是云端 CLI 专用身份密钥GUI 直接拒绝。提示license_service_slots_full已用完 3 个注册名额时一个许可证码最多注册 3 台电脑或云工作区回购买渠道更换一台再激活。隐藏约束start_activation与start_online_activation都会先判前缀JW1-开头直接抛ValueError源码写死。已激活后打开该窗口会联网查询已用名额start_device_count查不到时重开窗口重试即可修复功能不依赖这次查询。激活密钥只包含你许可证码里购买的模型不会顺带解锁其他支持者模型实测行为。读激活状态时JW1-身份同样按未激活计read_license_info。⚠️JW1-开头的密钥是给受支持容器里的 Linux 命令行版用的粘贴到 GUI 必然被拒——去正确的入口使用别反复重试。去哪验证jasna/gui/activation_worker.pystart_activation、jasna/gui/components.py激活对话框。故障速查表现象判断依据处理入口检查窗口红行按钮变退出某阻塞项失败或 30 秒超时后未跑完项按失败计页眉重跑系统检查按红行对应依赖修复日志有hard_disk_warninginstall_on_hard_disk判定装在机械盘软警告不阻塞迁移到 SSD输出文件名带 (1) 后缀文件冲突 auto_rename默认unique_path自动改名基本处理 → 文件冲突等待中的条目被高亮预期输出路径已存在_refresh_conflicts标记改命名模板或保存位置停止后磁盘有半成品文件停止只打回等待中状态文件保留按文件冲突策略处理后再跑点视频播放器无反应队列在处理或预览占 GPU硬互斥静默返回等处理结束或按停止播放器里 Topaz 不可用源码直接抛错TVAI 不支持播放器换 RTX Super Res / UNet 4x 或走批量处理玩家器秒数反复归零缓冲追不上 1.5 秒预滚GPU 慢于实时降分辨率 / 换模型档位激活被拒或名额已满密钥以JW1-开头或 3 个注册名额用满换本地激活密钥 / 购买渠道换机日志看不到早期信息环形缓冲只留最近 5000 行_MAX_LOG_ENTRIESjasna/gui/log_panel.py日志面板导出 .txt 再查主线环境预检ASCII 路径 FFmpeg 8 GPU/驱动→ 停止后先用文件冲突策略处理半成品 → GPU 空闲时才开播放器硬互斥→ 用缓冲秒数判断 GPU 是否跟得上实时 → 模板 冲突策略决定落盘 → 激活解锁支持者模型避开JW1-。界面里的每个约束都能在上面对应的源码位置找到一一对应实现。参考入口中文 GUI 文档docs/zh/gui.md中文 CLI 文档docs/zh/cli.md英文 GUI 文档docs/en/gui.mdGUI 模块jasna/gui/LTX 模型与内核jasna/ltx/许可证LICENSE【免费下载链接】jasnaVideo restoration tool项目地址: https://gitcode.com/GitHub_Trending/ja/jasna创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考