Trakt 集成
登录 Trakt 账号,启用实时追踪、续播检查,并在详情页双向同步已看状态
Trakt 是一个跨平台的影视追踪服务。小幻影视内置了 Trakt 客户端,可以把 Emby / Jellyfin / Plex 上的播放进度与已看状态同步到 Trakt,也可以反过来用 Trakt 上的记录补全本地服务器。

设置位置
设置 → 外部服务设置 → Trakt。
该面板是一个可展开的设置项,登录前只显示「登录」按钮,登录后会显示账号信息和三个子开关。
登录
点击「登录」按钮会打开一个内嵌窗口,里面用 WebView2 加载 Trakt 官方授权页。在该窗口里输入账号密码并授权后,应用会自动读取回调中的 code 并换取 access token / refresh token,token 过期时会自动刷新。
登录窗口使用 http://rodelplayer.local 作为本地回调地址,不需要在路由器或防火墙上做任何配置——这只是一个被应用拦截的 URL,并不会真的发起网络请求。
登录成功后,账号头像、用户名等信息会显示在「Trakt」设置项的描述区。点击「登出」可以清除本地保存的 token。
三个子开关
登录后会出现三个独立的开关,互不依赖,可以按需启用:
实时追踪(Scrobble)
播放时自动向 Trakt 报告观看进度
开启后,每次在线媒体(Emby / Jellyfin / Plex)开始 / 暂停 / 停止播放时,应用会调用 Trakt 的 scrobble/start、scrobble/pause、scrobble/stop 接口同步进度。
行为细节:
- 仅对在线媒体生效。文件服务(本地 / SMB / WebDAV / Alist / 115)的播放不会触发 scrobble,因为本地文件没有 IMDb / TMDb / TVDb 等外部 ID,Trakt 无法识别条目。
- 必须能从服务器拿到外部 ID。如果某个条目在 Emby / Jellyfin / Plex 上没有刮削到任何 Trakt 支持的 ID,则跳过 scrobble。
- 剧集分集需要有 season / episode 编号。
season=0或episode=0(或缺失)的条目会被直接跳过,因为 Trakt API 在这种情况下会返回 422。 - 进度为 0 时跳过
scrobble/stop。这是为了避免在用户刚进入详情页就退出的情况下,把云端已有的播放历史误清除。 - 与「续播检查」冲突时,应用会在续播查询期间临时挂起 scrobble,避免用 0 进度覆盖云端记录。
同步已看状态
在详情页显示 Trakt 同步按钮
开启后,所有支持 Trakt 的 PDP(媒体详情页)头部会多出一个「Trakt 同步」按钮,用于触发双向同步对话框(见下文)。
关闭此开关只会隐藏按钮,不会影响实时追踪和续播检查。
续播检查
播放时检查 Trakt 进度并提示从上次位置继续
开启后,进入播放页时应用会向 Trakt 查询该条目的播放进度,如果云端的进度比本地服务器记录的更靠后,会优先使用 Trakt 的进度作为续播位置。
为了避免续播查询过程中本地播放器以 position=0 抢先上报,应用在查询期间会同时挂起 Emby / Jellyfin / Plex 的进度上报与 Trakt scrobble,查询结束后才恢复。
双向同步对话框
在 PDP 头部点击「Trakt 同步」按钮,会弹出一个紧凑的同步对话框(Trakt 已看状态同步),让你选择同步方向:
| 方向 | 行为 |
|---|---|
| 服务器到 Trakt | 把本地服务器(Emby / Jellyfin / Plex)上该条目的已看状态推送到 Trakt。如果是剧集,还会把每一集的已看状态一并上传。 |
| Trakt 到服务器 | 反向操作:把 Trakt 上的已看状态拉回本地服务器,并标记对应的条目为已看。完成后 PDP 会自动刷新。 |
选择方向后点「同步」按钮即可执行。同步过程中按钮变灰,下方会显示「同步中…」、最终显示「同步完成」或「同步失败」。
单次只同步当前条目
此对话框只针对当前 PDP 上的单部影视 / 剧集,不是整个媒体库的批量同步。需要批量回填时,请按条目逐个操作。
故障排查
- 「登录」按钮按了没反应:检查系统是否安装了 WebView2 运行时(Win10/11 通常自带),可在「设置 → 关于」面板核对。
- PDP 上看不到「Trakt 同步」按钮:确认已登录、并已开启「同步已看状态」开关;同时该条目必须是在线媒体且能识别外部 ID。
- scrobble 看起来没生效:可在「设置 → 关于 → 日志」中查看带
Trakt scrobble前缀的调试日志,确认是否因 ID 缺失或 season/episode=0 被跳过。