Send a video in a chat
The web app re-encodes a chat video to 720p on your own device before encrypting it — quality, length limits and refusals. Phone apps send it as recorded.
Video is the one thing in a chat that is too big to send as it comes off a camera: a minute of a phone's 1080p recording is tens of megabytes. So the web app compresses it on your own device before encrypting it — the original never leaves your computer, and nothing is uploaded to be converted somewhere else.
The on-device compression described below is the web app. In the Android app (and on iPhone) a chat video is sent as it was recorded, under the ordinary 25 MB per file limit — so keep clips short there, or send them from the web app when they are long.
Send one — web app
- Press the paperclip (Attach a file) in the message row and choose the clip.
- A tile appears above the message box straight away, with a ring that fills as the clip is encoded. The cross on the tile cancels the whole thing.Web & desktop screenshotThe clip is re-encoded on your own machine. The ring fills as it goes; the cross cancels the whole thing.This capture is produced by the screenshot pipeline and will appear here.
The clip is re-encoded on your own machine. The ring fills as it goes; the cross cancels the whole thing.Web & desktop iPhone screenshotThe clip is re-encoded on your own machine. The ring fills as it goes; the cross cancels the whole thing.Same screen as on the web, single column. This capture is produced by the screenshot pipeline and will appear here.The clip is re-encoded on your own machine. The ring fills as it goes; the cross cancels the whole thing.iPhone Android screenshotThe clip is re-encoded on your own machine. The ring fills as it goes; the cross cancels the whole thing.Same screen as on the web, single column. This capture is produced by the screenshot pipeline and will appear here.The clip is re-encoded on your own machine. The ring fills as it goes; the cross cancels the whole thing.Android - When it finishes, the tile becomes an ordinary staged attachment. Add a line of text if you want one and press send.Web & desktop screenshotOnce it is encoded it is an ordinary staged attachment; sent, it becomes a player in the transcript.This capture is produced by the screenshot pipeline and will appear here.
Once it is encoded it is an ordinary staged attachment; sent, it becomes a player in the transcript.Web & desktop iPhone screenshotOnce it is encoded it is an ordinary staged attachment; sent, it becomes a player in the transcript.Same screen as on the web, single column. This capture is produced by the screenshot pipeline and will appear here.Once it is encoded it is an ordinary staged attachment; sent, it becomes a player in the transcript.iPhone Android screenshotOnce it is encoded it is an ordinary staged attachment; sent, it becomes a player in the transcript.Same screen as on the web, single column. This capture is produced by the screenshot pipeline and will appear here.Once it is encoded it is an ordinary staged attachment; sent, it becomes a player in the transcript.Android
Encoding is work your computer has to do: a short clip is a few seconds, a long one on a browser that lacks the fast path can take minutes. It runs in the background — you can keep typing — and the clip is only encrypted and sent after it is done.
What the compression produces
Every chat video from the web app comes out as the same kind of file, so it plays on every phone at the other end:
- 720p (1280 on the long edge, never enlarged), H.264 video, AAC sound, in an MP4 that starts playing before it is fully downloaded.
- About 2 Mbps, dropping towards a 1 Mbps floor for clips longer than 90 seconds so that a longer clip still fits.
There is no "send original quality" option, and no format other than this one. A clip is never sent uncompressed as a fallback: if it cannot be compressed, it is not sent.
How long a clip can be
The ceiling is a size, not a length: an encrypted chat video may be up to 100 MiB on our server, and the encoder aims safely under that. In practice, at the lowest quality it will use, that works out to roughly six minutes of video with sound.
When a clip cannot fit, the notice says so plainly:
| Notice | What it means |
|---|---|
| Video too long — … would still be over 52 MB at the lowest quality. Chat videos can be up to about 6 minutes. | The clip is longer than the ceiling allows. Trim it, or send it in parts |
| Video too large — … is too big for this browser to compress. Try a shorter clip. | The source file itself is beyond what the browser's compressor can hold |
| Video not sent — This browser cannot compress video, and videos are never sent uncompressed. | No compressor is available here. Use another browser, or the Android app for a short clip |
| Video not sent — This browser cannot convert the sound in … to a format every phone plays. | The clip's audio track cannot be converted; re-export the clip and try again |
In every one of these cases nothing is staged and nothing is sent — the original bytes are not quietly used instead.
Watching one
A video in a conversation is downloaded and decrypted on your device before it plays, so a large clip pauses for a few seconds first — that is the decryption, not a slow connection. Seeking inside a clip means it has to be fetched in full.
What our server sees
Cannot see
- The video, its sound, its length or its filename
Can see
- That one encrypted object of a certain size belongs to a certain message, and that the sender declared it a video (which is how the larger ceiling is applied)
The size class is the one thing that is visible, and only because a video needs more room than other files. Our server cannot verify the claim — it never sees inside — so the honest statement is: 100 MiB is the largest object we store for anything declared a video.
Common questions
Can I send a video to someone outside Private.Ki?
Not as a chat video — a chat is between Private.Ki accounts. Mail to an outside address follows the email rules instead: 25 MB per file, ten files — see Attachments.
Why is my clip so much smaller than the file I picked?
Because it was re-encoded to 720p. That is the trade that makes video in a chat practical at all.
Can I turn the compression off?
No. An uncompressed clip would be too large to encrypt and store, and one output format is what makes a clip playable for every recipient.
Does the compression upload my video anywhere?
No. It happens entirely in your browser, on your machine, before any encryption or upload.
Can a video be sent as View once?
No. View once is offered for a single photo or a voice message.