Watermarks are inherently hard to compress, because they typically:
- Contain sharp edges, which are difficult to compress without ringing artifacts.
- Do not move with the rest of the image, confusing motion compensation algorithms.
- Obscure part of the image, requiring data involving content that was covered by the watermark to be reencoded if it reappears.
That being said, there are some steps you can take to make your watermark easier to compress:
- Make your watermark fully opaque. Do not use a partially translucent watermark. This allows the content of the watermarked area to be stored as a "constant" in the video, rather than requiring it to be updated frequently. (As an additional benefit, this also makes it more difficult to remove.)
- Give your watermark a simple outline, ideally a rectangle. Complex outlines increase the frequency with which data will appear and disappear behind the watermark.
- Position it on 16x16 pixel boundaries in the frame of the output video. Many video compression algorithms use 8x8 or 16x16 blocks, so aligning your watermark to these boundaries will help keep it separate from other parts of the video.
If all else fails, consider increasing the compression quality for your video, or applying the watermark on the server side after the video is uploaded.