How PinePaper Records Provenance
Every PinePaper Cloud render carries an unsigned record of how it was made. What the record contains, how to read it from MP4, WebM, PNG, GIF and PDF files, and what is still missing before C2PA signing.
On this page
Every file rendered by PinePaper Cloud carries a record of how it was made. This page covers what the record contains, how to read it, and what is still missing.
What we write today
Each cloud render gets a JSON record with the schema pinepaper.provenance/1. It contains:
generator: PinePaper CloudrenderIdandcontentHashformat,engine,engineVersionandpipelinesource: the AI provider and model, the app, and the prompt (cut to 500 characters)audio: for each audio track, its reference and licence, plus the provider and model if it was AI-generatedrenderedAt
It does not include who asked for the render. We don't record the requester's identity and we don't fingerprint them.
Before rendering, we check the rights on uploaded assets. An upload with an unknown licence is refused.
Where it is and how to read it
| File | Where the record sits | How to read it |
|---|---|---|
| MP4, WebM | the comment metadata tag |
ffprobe -v error -show_entries format_tags=comment -of default=nw=1:nk=1 film.mp4 |
| PNG | an iTXt chunk named PinePaperProvenance |
exiftool -PinePaperProvenance -b image.png |
| GIF | a comment (GIF Comment Extension) | exiftool -Comment -b image.gif |
the document info, key PinePaperProvenance |
exiftool -PinePaperProvenance -b file.pdf |
PDFs rendered before 2026-09-26 don't have the record.
This covers PinePaper Cloud renders. Files you export locally from PinePaper Studio in your browser don't carry the record yet.
The output is plain JSON.
Why it is unsigned
Right now the record is not signed. It says what produced the file, but it doesn't prove it. Anyone could write one, edit it or remove it. This record is not a C2PA manifest, so C2PA tools such as c2patool or Content Credentials Verify won't find a PinePaper claim in our files.
If a film's narration was made with Google's Gemini text-to-speech, a C2PA tool may show Google's signed claim for that audio. That claim is Google's, not PinePaper's.
We wanted the contents of the record settled before signing it.
We don't add an invisible watermark to any export. Many platforms strip metadata when they re-encode an upload, and nothing we write today survives that.
What's coming: C2PA
We have applied to join C2PA. The plan:
- Sign every cloud render with a C2PA manifest as the last step of the render, using c2patool.
- Sign with a certificate from a CA on the C2PA trust list, after we enrol in the C2PA Conformance Program.
- The C2PA specification has no way to embed a manifest in WebM. WebM renders will get a
.c2pafile with the same name next to them, which is where C2PA tools look for one.
Until then, no PinePaper render is C2PA-signed. We haven't set dates. We'll update this page when signing ships.
Ready to create?
Start making animated GIFs, videos, and graphics — free, no signup.
Open PinePaper Editor