As a video processing technique, watermarking involves overlaying an image, text, or logo onto a video. There are a bunch of reasons why you'd do this, including branding, adding captions, or inserting overlays to videos. With Python, you can add a watermark to a video using a video editing API. The following Python code shows you how to do this in just a few lines of code:
import requests
json = {
'source': {
'output_format': 'mp4',
'elements': [
{
'type': 'video',
'source': 'https://cdn.creatomate.com/demo/mountains.mp4'
},
{
'type': 'image',
'source': 'https://cdn.creatomate.com/demo/logo.png',
'x': '100%',
'y': '0%',
'width': '60 vmin',
'height': '60 vmin',
'x_padding': '7 vmin',
'y_padding': '7 vmin',
'x_anchor': '100%',
'y_anchor': '0%',
'x_alignment': '100%',
'y_alignment': '0%',
'shadow_color': 'rgba(0,0,0,0.66)',
'fit': 'contain'
}
]
}
}
response = requests.post(
'https://api.creatomate.com/v1/renders',
headers={
# Find your API key under 'Project Settings' in your account:
# https://creatomate.com/docs/api/rest-api/authentication
'Authorization': 'Bearer Your-API-Key',
'Content-Type': 'application/json',
},
json=json
)
# Wait a minute, then visit the URL provided in the response:
print(response.json())
How it works: All that is required is the "requests" library that comes pre-installed with every Python installation. In this example, we've got two main components: a background video and a watermark image that goes on top of it. You can use any video or image file, as long as it's accessible through a public URL.
The watermark image, like a logo, sits in the top-right corner of the scene. We do this by specifying the "x" and "y" properties, along with the "x_anchor" and "y_anchor" properties. And to give some space between the logo and the video edges, we use the "padding" property.
In this case, all properties are defined in terms of relative units, such as "vmin" and "%". This makes sure that the overlay adjusts dynamically to the background video, working well with different video formats, whether they're horizontal, vertical, or square.
Try out your own overlay with the online video editor below. This online tool lets you create custom video layouts and export them as JSON for easy integration into your Python applications. Use it for all of your Python video editing needs.