`Video Combine` stored `video_metadata["prompt"] = json.dumps(prompt)` while every other field is stored as a raw object. `ffmpeg_process` then runs `json.dumps` on each value, so `prompt` ends up double- encoded in the embedded MP4 metadata. Match the `extra_pnginfo` branch and store the raw object. The PNG metadata path on line 354 is unchanged. The original double-wrap was an intentional workaround for JSON's stricter NaN handling (per @AustinMroz). It predates the consumer-facing schema introduced in #627 and is no longer needed. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>