/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.elastictranscoder.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *

* Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos that * are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in the * specified size and location, and with the specified opacity for the duration of the transcoded video. *

*

* Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the .png * format, which supports transparency. *

*

* When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic Transcoder * to include in the transcoded videos. You can specify fewer graphics in the job than you specify watermark settings in * the preset, which allows you to use the same preset for up to four watermarks that have different dimensions. *

*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class PresetWatermark implements Serializable, Cloneable, StructuredPojo { /** *

* A unique identifier for the settings for one watermark. The value of Id can be up to 40 characters * long. *

*/ private String id; /** *

* The maximum width of the watermark in one of the following formats: *

* */ private String maxWidth; /** *

* The maximum height of the watermark in one of the following formats: *

* *

* If you specify the value in pixels, it must be less than or equal to the value of MaxHeight. *

*/ private String maxHeight; /** *

* A value that controls scaling of the watermark: *

* */ private String sizingPolicy; /** *

* The horizontal position of the watermark unless you specify a non-zero value for HorizontalOffset: *

* */ private String horizontalAlign; /** *

* The amount by which you want the horizontal position of the watermark to be offset from the position specified by * HorizontalAlign: *

* *

* For example, if you specify Left for HorizontalAlign and 5px for HorizontalOffset, the * left side of the watermark appears 5 pixels from the left border of the output video. *

*

* HorizontalOffset is only valid when the value of HorizontalAlign is Left * or Right. If you specify an offset that causes the watermark to extend beyond the left or right * border and Elastic Transcoder has not added black bars, the watermark is cropped. If Elastic Transcoder has added * black bars, the watermark extends into the black bars. If the watermark extends beyond the black bars, it is * cropped. *

*

* Use the value of Target to specify whether you want to include the black bars that are added by * Elastic Transcoder, if any, in the offset calculation. *

*/ private String horizontalOffset; /** *

* The vertical position of the watermark unless you specify a non-zero value for VerticalOffset: *

* */ private String verticalAlign; /** *

* VerticalOffset *

*

* The amount by which you want the vertical position of the watermark to be offset from the position specified by * VerticalAlign: *

* *

* For example, if you specify Top for VerticalAlign and 5px for * VerticalOffset, the top of the watermark appears 5 pixels from the top border of the output video. *

*

* VerticalOffset is only valid when the value of VerticalAlign is Top or Bottom. *

*

* If you specify an offset that causes the watermark to extend beyond the top or bottom border and Elastic * Transcoder has not added black bars, the watermark is cropped. If Elastic Transcoder has added black bars, the * watermark extends into the black bars. If the watermark extends beyond the black bars, it is cropped. *

*

* Use the value of Target to specify whether you want Elastic Transcoder to include the black bars * that are added by Elastic Transcoder, if any, in the offset calculation. *

*/ private String verticalOffset; /** *

* A percentage that indicates how much you want a watermark to obscure the video in the location where it appears. * Valid values are 0 (the watermark is invisible) to 100 (the watermark completely obscures the video in the * specified location). The datatype of Opacity is float. *

*

* Elastic Transcoder supports transparent .png graphics. If you use a transparent .png, the transparent portion of * the video appears as if you had specified a value of 0 for Opacity. The .jpg file format doesn't * support transparency. *

*/ private String opacity; /** *

* A value that determines how Elastic Transcoder interprets values that you specified for * HorizontalOffset, VerticalOffset, MaxWidth, and MaxHeight: *

* */ private String target; /** *

* A unique identifier for the settings for one watermark. The value of Id can be up to 40 characters * long. *

* * @param id * A unique identifier for the settings for one watermark. The value of Id can be up to 40 * characters long. */ public void setId(String id) { this.id = id; } /** *

* A unique identifier for the settings for one watermark. The value of Id can be up to 40 characters * long. *

* * @return A unique identifier for the settings for one watermark. The value of Id can be up to 40 * characters long. */ public String getId() { return this.id; } /** *

* A unique identifier for the settings for one watermark. The value of Id can be up to 40 characters * long. *

* * @param id * A unique identifier for the settings for one watermark. The value of Id can be up to 40 * characters long. * @return Returns a reference to this object so that method calls can be chained together. */ public PresetWatermark withId(String id) { setId(id); return this; } /** *

* The maximum width of the watermark in one of the following formats: *

* * * @param maxWidth * The maximum width of the watermark in one of the following formats:

*