Advanced watermarking

Support for watermarking is one of the top requests we received from early Zencoder customers. Today we’re announcing support for advanced watermarking capability. We have spent a lot of time scrutinizing just how to implement watermarking and we solicited feedback from our customers. We’re really excited about where we ended up. We support:

  • GIF, JPEG, BMP, or PNG files
  • Index or alpha transparency
  • Positive and negative offsets
  • Percentage-based scaling and offsets
  • Multiple watermarks per video

Earth Watermarked

Basic Syntax

The API for requesting watermarks is pretty straight-forward and is well-documented. For each output, you can specify the following: url, x, y, width, and height. For example:

"watermark": {
  "url": "s3://bucket/watermark_file.png",
  "x": "20",
  "y": "-10%"
  "width": "32",
  "height" : "24"

Scaling and Offsets

Placing a watermark on a video properly is not an easy task. We've enabled percentage-based scaling and negative offsets to accomplish complex watermarking requirements. For example, the settings below will place the watermark 10 pixels from the bottom right corner at 1/8th the scale of the output video. On a video that is 640x360 the watermark would end up at 80x45 and placed at a positive "x" offset of 550 pixels and a positive "y" offset of 305 pixels.

"watermark": {
  "url": "s3://bucket/watermark_file.png",
  "x": -10,
  "y": -10,
  "width": "12.5%",
  "height": "12.5%"

Multiple watermarks

Sometimes two or more watermarks need to be placed on a video. Maybe you need a logo in the bottom right corner and the bottom left corner. With Zencoder, it's simple. The "watermark" option just becomes "watermarks" and an array of options can be passed. For example:

"watermarks": [
    "url": "s3://bucket/watermark_file.png",
    "x": 20
  }, {
    "url": "s3://bucket/watermark_file.png",
    "x": -20

The default value for "x" and "y" is -10 pixels. So, this request will add two watermarks 10 pixels from the bottom of the video, one 20 pixels from the left edge and one 20 pixels from the right edge.

  • Jonathan

    I can’t seem to figure out if its possible to center a watermark without first knowing the resolution of the video.  For instance, I could position a watermark at x=50%, but say my watermark is 200px wide, there’s no way (that I can tell) to position it at x=50% – 100px so that it is centered horizontally. It would be nice if we could specify what the basepoint (top left, top center, top right, center left, center center, center right, bottom left, bottom center, bottom right) of the watermark that the x/y coordinate would be based on.

blog comments powered by Disqus