Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.media.inputs.VideoOverlayArgs Maven / Gradle / Ivy
Go to download
A native Pulumi package for creating and managing Azure resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azurenative.media.inputs;
import com.pulumi.azurenative.media.inputs.RectangleArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Double;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
/**
* Describes the properties of a video overlay.
*
*/
public final class VideoOverlayArgs extends com.pulumi.resources.ResourceArgs {
public static final VideoOverlayArgs Empty = new VideoOverlayArgs();
/**
* The gain level of audio in the overlay. The value should be in the range [0, 1.0]. The default is 1.0.
*
*/
@Import(name="audioGainLevel")
private @Nullable Output audioGainLevel;
/**
* @return The gain level of audio in the overlay. The value should be in the range [0, 1.0]. The default is 1.0.
*
*/
public Optional> audioGainLevel() {
return Optional.ofNullable(this.audioGainLevel);
}
/**
* An optional rectangular window used to crop the overlay image or video.
*
*/
@Import(name="cropRectangle")
private @Nullable Output cropRectangle;
/**
* @return An optional rectangular window used to crop the overlay image or video.
*
*/
public Optional> cropRectangle() {
return Optional.ofNullable(this.cropRectangle);
}
/**
* The end position, with reference to the input video, at which the overlay ends. The value should be in ISO 8601 format. For example, PT30S to end the overlay at 30 seconds into the input video. If not specified or the value is greater than the input video duration, the overlay will be applied until the end of the input video if the overlay media duration is greater than the input video duration, else the overlay will last as long as the overlay media duration.
*
*/
@Import(name="end")
private @Nullable Output end;
/**
* @return The end position, with reference to the input video, at which the overlay ends. The value should be in ISO 8601 format. For example, PT30S to end the overlay at 30 seconds into the input video. If not specified or the value is greater than the input video duration, the overlay will be applied until the end of the input video if the overlay media duration is greater than the input video duration, else the overlay will last as long as the overlay media duration.
*
*/
public Optional> end() {
return Optional.ofNullable(this.end);
}
/**
* The duration over which the overlay fades in onto the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade in (same as PT0S).
*
*/
@Import(name="fadeInDuration")
private @Nullable Output fadeInDuration;
/**
* @return The duration over which the overlay fades in onto the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade in (same as PT0S).
*
*/
public Optional> fadeInDuration() {
return Optional.ofNullable(this.fadeInDuration);
}
/**
* The duration over which the overlay fades out of the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade out (same as PT0S).
*
*/
@Import(name="fadeOutDuration")
private @Nullable Output fadeOutDuration;
/**
* @return The duration over which the overlay fades out of the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade out (same as PT0S).
*
*/
public Optional> fadeOutDuration() {
return Optional.ofNullable(this.fadeOutDuration);
}
/**
* The label of the job input which is to be used as an overlay. The Input must specify exactly one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. See https://aka.ms/mesformats for the complete list of supported audio and video file formats.
*
*/
@Import(name="inputLabel", required=true)
private Output inputLabel;
/**
* @return The label of the job input which is to be used as an overlay. The Input must specify exactly one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. See https://aka.ms/mesformats for the complete list of supported audio and video file formats.
*
*/
public Output inputLabel() {
return this.inputLabel;
}
/**
* The discriminator for derived types.
* Expected value is '#Microsoft.Media.VideoOverlay'.
*
*/
@Import(name="odataType", required=true)
private Output odataType;
/**
* @return The discriminator for derived types.
* Expected value is '#Microsoft.Media.VideoOverlay'.
*
*/
public Output odataType() {
return this.odataType;
}
/**
* The opacity of the overlay. This is a value in the range [0 - 1.0]. Default is 1.0 which mean the overlay is opaque.
*
*/
@Import(name="opacity")
private @Nullable Output opacity;
/**
* @return The opacity of the overlay. This is a value in the range [0 - 1.0]. Default is 1.0 which mean the overlay is opaque.
*
*/
public Optional> opacity() {
return Optional.ofNullable(this.opacity);
}
/**
* The location in the input video where the overlay is applied.
*
*/
@Import(name="position")
private @Nullable Output position;
/**
* @return The location in the input video where the overlay is applied.
*
*/
public Optional> position() {
return Optional.ofNullable(this.position);
}
/**
* The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video.
*
*/
@Import(name="start")
private @Nullable Output start;
/**
* @return The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video.
*
*/
public Optional> start() {
return Optional.ofNullable(this.start);
}
private VideoOverlayArgs() {}
private VideoOverlayArgs(VideoOverlayArgs $) {
this.audioGainLevel = $.audioGainLevel;
this.cropRectangle = $.cropRectangle;
this.end = $.end;
this.fadeInDuration = $.fadeInDuration;
this.fadeOutDuration = $.fadeOutDuration;
this.inputLabel = $.inputLabel;
this.odataType = $.odataType;
this.opacity = $.opacity;
this.position = $.position;
this.start = $.start;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(VideoOverlayArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private VideoOverlayArgs $;
public Builder() {
$ = new VideoOverlayArgs();
}
public Builder(VideoOverlayArgs defaults) {
$ = new VideoOverlayArgs(Objects.requireNonNull(defaults));
}
/**
* @param audioGainLevel The gain level of audio in the overlay. The value should be in the range [0, 1.0]. The default is 1.0.
*
* @return builder
*
*/
public Builder audioGainLevel(@Nullable Output audioGainLevel) {
$.audioGainLevel = audioGainLevel;
return this;
}
/**
* @param audioGainLevel The gain level of audio in the overlay. The value should be in the range [0, 1.0]. The default is 1.0.
*
* @return builder
*
*/
public Builder audioGainLevel(Double audioGainLevel) {
return audioGainLevel(Output.of(audioGainLevel));
}
/**
* @param cropRectangle An optional rectangular window used to crop the overlay image or video.
*
* @return builder
*
*/
public Builder cropRectangle(@Nullable Output cropRectangle) {
$.cropRectangle = cropRectangle;
return this;
}
/**
* @param cropRectangle An optional rectangular window used to crop the overlay image or video.
*
* @return builder
*
*/
public Builder cropRectangle(RectangleArgs cropRectangle) {
return cropRectangle(Output.of(cropRectangle));
}
/**
* @param end The end position, with reference to the input video, at which the overlay ends. The value should be in ISO 8601 format. For example, PT30S to end the overlay at 30 seconds into the input video. If not specified or the value is greater than the input video duration, the overlay will be applied until the end of the input video if the overlay media duration is greater than the input video duration, else the overlay will last as long as the overlay media duration.
*
* @return builder
*
*/
public Builder end(@Nullable Output end) {
$.end = end;
return this;
}
/**
* @param end The end position, with reference to the input video, at which the overlay ends. The value should be in ISO 8601 format. For example, PT30S to end the overlay at 30 seconds into the input video. If not specified or the value is greater than the input video duration, the overlay will be applied until the end of the input video if the overlay media duration is greater than the input video duration, else the overlay will last as long as the overlay media duration.
*
* @return builder
*
*/
public Builder end(String end) {
return end(Output.of(end));
}
/**
* @param fadeInDuration The duration over which the overlay fades in onto the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade in (same as PT0S).
*
* @return builder
*
*/
public Builder fadeInDuration(@Nullable Output fadeInDuration) {
$.fadeInDuration = fadeInDuration;
return this;
}
/**
* @param fadeInDuration The duration over which the overlay fades in onto the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade in (same as PT0S).
*
* @return builder
*
*/
public Builder fadeInDuration(String fadeInDuration) {
return fadeInDuration(Output.of(fadeInDuration));
}
/**
* @param fadeOutDuration The duration over which the overlay fades out of the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade out (same as PT0S).
*
* @return builder
*
*/
public Builder fadeOutDuration(@Nullable Output fadeOutDuration) {
$.fadeOutDuration = fadeOutDuration;
return this;
}
/**
* @param fadeOutDuration The duration over which the overlay fades out of the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade out (same as PT0S).
*
* @return builder
*
*/
public Builder fadeOutDuration(String fadeOutDuration) {
return fadeOutDuration(Output.of(fadeOutDuration));
}
/**
* @param inputLabel The label of the job input which is to be used as an overlay. The Input must specify exactly one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. See https://aka.ms/mesformats for the complete list of supported audio and video file formats.
*
* @return builder
*
*/
public Builder inputLabel(Output inputLabel) {
$.inputLabel = inputLabel;
return this;
}
/**
* @param inputLabel The label of the job input which is to be used as an overlay. The Input must specify exactly one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. See https://aka.ms/mesformats for the complete list of supported audio and video file formats.
*
* @return builder
*
*/
public Builder inputLabel(String inputLabel) {
return inputLabel(Output.of(inputLabel));
}
/**
* @param odataType The discriminator for derived types.
* Expected value is '#Microsoft.Media.VideoOverlay'.
*
* @return builder
*
*/
public Builder odataType(Output odataType) {
$.odataType = odataType;
return this;
}
/**
* @param odataType The discriminator for derived types.
* Expected value is '#Microsoft.Media.VideoOverlay'.
*
* @return builder
*
*/
public Builder odataType(String odataType) {
return odataType(Output.of(odataType));
}
/**
* @param opacity The opacity of the overlay. This is a value in the range [0 - 1.0]. Default is 1.0 which mean the overlay is opaque.
*
* @return builder
*
*/
public Builder opacity(@Nullable Output opacity) {
$.opacity = opacity;
return this;
}
/**
* @param opacity The opacity of the overlay. This is a value in the range [0 - 1.0]. Default is 1.0 which mean the overlay is opaque.
*
* @return builder
*
*/
public Builder opacity(Double opacity) {
return opacity(Output.of(opacity));
}
/**
* @param position The location in the input video where the overlay is applied.
*
* @return builder
*
*/
public Builder position(@Nullable Output position) {
$.position = position;
return this;
}
/**
* @param position The location in the input video where the overlay is applied.
*
* @return builder
*
*/
public Builder position(RectangleArgs position) {
return position(Output.of(position));
}
/**
* @param start The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video.
*
* @return builder
*
*/
public Builder start(@Nullable Output start) {
$.start = start;
return this;
}
/**
* @param start The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video.
*
* @return builder
*
*/
public Builder start(String start) {
return start(Output.of(start));
}
public VideoOverlayArgs build() {
if ($.inputLabel == null) {
throw new MissingRequiredPropertyException("VideoOverlayArgs", "inputLabel");
}
$.odataType = Codegen.stringProp("odataType").output().arg($.odataType).require();
return $;
}
}
}