pixRepaint for Nuke  v0.4.7（构建：git 32fc5e5，2026-10-25 02:15）

安装（A / B / C 效果一样：装到 %USERPROFILE%\.nuke\pixrepaint\，并在 .nuke\menu.py 末尾加一行 import pixrepaint.menu；用统一插件目录的看 D）
  A. 双击 pixrepaint-0.4.7-setup.exe，一路下一步（有这个文件的话；卸载在 Windows 设置 > 应用 里找 pixRepaint）。
     「选择组件」那页：「Nuke 插件」默认勾着；「Topaz 网络服务」只在装 Topaz 的那台机器上勾（见最后一段）
  B. 双击 install.bat（卸载双击 uninstall.bat）
  C. 手动：把 pixrepaint 文件夹整个拷到 %USERPROFILE%\.nuke\pixrepaint\（里面直接是 __init__.py 那一层），
     在 %USERPROFILE%\.nuke\menu.py 末尾加一行 import pixrepaint.menu
  D. 你们用统一插件目录（NUKE_PATH 指向的一个文件夹，里面每个插件一个子文件夹、会自动加载，比如「nuke 插件一键安装工具」装的那种）：
     把 pixrepaint 文件夹整个放进那个目录就行，不用改 menu.py。
  A / B / C 和 D 只选一种：两处都放，Nuke 会把两份都加载（启动后会弹提示，告诉你两份各在哪、各是什么版本，删掉一份就好）。
装完重启 Nuke。节点菜单里多出 pixRepaint；先开 pixRepaint > 账号与许可证 > 首次激活…，设置账号名和密码，
填订阅码（试用填 8888）、RunningHub ID 和 API Key。以后换电脑或重装用「登录…」，只要账号名和密码。
升级：用新版本再装一次就行（设置和缓存在 .nuke 下的 pixrepaint_*.json，不会丢）。
  0.2.9 起也可以在 Nuke 里点 pixRepaint > 检查更新…：有新版本时自动下载，确认后关闭 Nuke 自动安装（A / B / C 装法都行；
  D 统一插件目录的不自动更新，用新版本再放一次）。

文件放哪：提交前工程要先保存。上传前渲的素材缓存在工程旁边的 pixRepaint\_work\（随时可以删，下次提交会重新渲），
成片归档在 pixRepaint\<工程名>\<任务名>\，跟着工程走、不占 C 盘（C 盘只留一个很小的上传记录 %LOCALAPPDATA%\pixrepaint\uploads.json）。
从 0.2.5 之前的版本升级：以前的缓存和成片在 %LOCALAPPDATA%\pixrepaint\input\ 和 output\ 里，新版不再用，
  没有正在跑的任务时可以把这两个文件夹整个删掉。工程保存过的成片都已归档在工程旁边的 pixRepaint 里；
  老版本在没保存的工程里跑出来的成片只在 output\ 里，删之前看一眼。

支持：Windows，Nuke 16（开发和验证的版本）；Nuke 13 / 14 / 15 代码层面已适配（Python 3.7 起），没有逐版本实测。

bin\ffmpeg.exe 是 FFmpeg 项目的程序（GPL v3，许可文本见 bin\LICENSE，构建说明见 bin\README.txt；源码 https://ffmpeg.org/），
插件用它做「传输质量 = 快速」的转码和回传视频的转换。删掉它插件也能用，只是「快速」档会自动按高质量上传（慢一些）。

Topaz 装在局域网另一台机器上时：在那台机器上运行 pixrepaint-0.4.7-setup.exe，「选择组件」勾上「Topaz 网络服务」
  （那台机器不用 Nuke 的话把「Nuke 插件」的勾去掉），装完从开始菜单 pixRepaint > pixRepaint Topaz 服务 启动；
  没有 setup.exe 的话，把 pixrepaint 文件夹拷过去、双击里面的 topaz_service.bat 也一样。
  窗口里会显示端口和口令，窗口开着服务就在；每台 Nuke 在 pixRepaint > 选项… 里填「Topaz 服务地址」（那台机器的 IP）和「Topaz 服务口令」。
  Windows 防火墙第一次会问要不要放行，选允许。
bin\python\ 是 Python 官方的免安装版（Python Software Foundation License，许可文本见 bin\python\LICENSE.txt；https://www.python.org/），
  给 topaz_service.bat 用（Topaz 那台机器不用另装 Python），也给回贴节点的「对齐原片」在本机算位移场。插件别的功能都在 Nuke 里跑，不用它。
bin\pylibs\ 是「对齐原片」用的 numpy（BSD 许可，许可文本见 bin\pylibs\numpy-*.dist-info\LICENSE.txt；https://numpy.org/）
  和 OpenCV（Apache 2.0，许可文本见 bin\pylibs\cv2\LICENSE.txt 和 LICENSE-3RD-PARTY.txt；https://opencv.org/）。

==================== English ====================

pixRepaint for Nuke  v0.4.7

Install (A / B / C give the same result: files go to %USERPROFILE%\.nuke\pixrepaint\ and a line import pixrepaint.menu is added at the end of .nuke\menu.py;
if you use a shared plugin folder, see D)
  A. Double-click pixrepaint-0.4.7-setup.exe and follow the steps (uninstall from Windows Settings > Apps > pixRepaint).
     On the “Select Components” page, “Nuke plugin” is checked by default; check “Topaz network service” only on the machine with Topaz (see the last section)
  B. Double-click install.bat (uninstall.bat uninstalls)
  C. Manually: copy the whole pixrepaint folder to %USERPROFILE%\.nuke\pixrepaint\ (the level that directly contains __init__.py),
     and add the line import pixrepaint.menu at the end of %USERPROFILE%\.nuke\menu.py
  D. Shared plugin folder (a folder on NUKE_PATH with one subfolder per plugin that loads automatically):
     put the whole pixrepaint folder into it; no need to edit menu.py.
  Use only one of A / B / C or D: with both, Nuke loads two copies (a notice on startup tells you where each is; delete one).
Restart Nuke after installing. A pixRepaint menu appears; first open pixRepaint > Account & Licence > Activate…, set an account name and password,
and enter the subscription code (8888 for a trial), your RunningHub ID and API key. On another computer or after reinstalling, use “Sign in…” with just the account name and password.
The interface language follows the installer's language on first start; change it under pixRepaint > Options… (Nuke restart required).
Updating: install the new version over the old one (settings and caches in pixrepaint_*.json under .nuke are kept),
  or use pixRepaint > Check for Updates… in Nuke (not for the shared plugin folder setup: put the new version there again).

Where files go: save the project before submitting. Footage rendered for upload is cached in pixRepaint\_work\ next to the project (safe to delete),
results are archived in pixRepaint\<project>\<job>\, following the project instead of the C drive (only a small upload record stays in %LOCALAPPDATA%\pixrepaint\uploads.json).

Supported: Windows, Nuke 16 (developed and verified); Nuke 13 / 14 / 15 are supported in code (Python 3.7+) but not tested version by version.

bin\ffmpeg.exe is a program from the FFmpeg project (GPL v3, license in bin\LICENSE, build notes in bin\README.txt; source https://ffmpeg.org/);
the plugin uses it for “Transfer quality = Fast” encoding and for converting returned videos. Without it the plugin still works, but Fast falls back to High quality uploads.

If Topaz is on another machine on the local network: run pixrepaint-0.4.7-setup.exe there and check “Topaz network service” under Select Components
  (uncheck “Nuke plugin” if that machine has no Nuke); afterwards start it from Start menu > pixRepaint > pixRepaint Topaz service;
  without setup.exe, copy the pixrepaint folder over and double-click topaz_service.bat inside it.
  The window shows the port and passcode, and the service runs while it is open; on each Nuke machine enter the “Topaz service address” (that machine's IP)
  and “Topaz service passcode” in pixRepaint > Options…. Allow it when Windows Firewall asks the first time.
bin\python\ is the official embeddable Python (Python Software Foundation License, license in bin\python\LICENSE.txt; https://www.python.org/),
  used by topaz_service.bat (no separate Python needed on the Topaz machine) and by “Align to plate” on paste-back nodes. Everything else runs inside Nuke.
bin\pylibs\ contains numpy (BSD license, see bin\pylibs\numpy-*.dist-info\LICENSE.txt; https://numpy.org/) for “Align to plate”
  and OpenCV (Apache 2.0, see bin\pylibs\cv2\LICENSE.txt and LICENSE-3RD-PARTY.txt; https://opencv.org/).
