All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.media.outputs.AudioOverlayResponse Maven / Gradle / Ivy

There is a newer version: 2.72.0
Show newest version
// *** 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.outputs;

import com.pulumi.core.annotations.CustomType;
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;

@CustomType
public final class AudioOverlayResponse {
    /**
     * @return The gain level of audio in the overlay. The value should be in the range [0, 1.0]. The default is 1.0.
     * 
     */
    private @Nullable Double audioGainLevel;
    /**
     * @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.
     * 
     */
    private @Nullable String end;
    /**
     * @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).
     * 
     */
    private @Nullable String fadeInDuration;
    /**
     * @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).
     * 
     */
    private @Nullable String fadeOutDuration;
    /**
     * @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.
     * 
     */
    private String inputLabel;
    /**
     * @return The discriminator for derived types.
     * Expected value is '#Microsoft.Media.AudioOverlay'.
     * 
     */
    private String odataType;
    /**
     * @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.
     * 
     */
    private @Nullable String start;

    private AudioOverlayResponse() {}
    /**
     * @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);
    }
    /**
     * @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);
    }
    /**
     * @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);
    }
    /**
     * @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);
    }
    /**
     * @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 String inputLabel() {
        return this.inputLabel;
    }
    /**
     * @return The discriminator for derived types.
     * Expected value is '#Microsoft.Media.AudioOverlay'.
     * 
     */
    public String odataType() {
        return this.odataType;
    }
    /**
     * @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);
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(AudioOverlayResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Double audioGainLevel;
        private @Nullable String end;
        private @Nullable String fadeInDuration;
        private @Nullable String fadeOutDuration;
        private String inputLabel;
        private String odataType;
        private @Nullable String start;
        public Builder() {}
        public Builder(AudioOverlayResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.audioGainLevel = defaults.audioGainLevel;
    	      this.end = defaults.end;
    	      this.fadeInDuration = defaults.fadeInDuration;
    	      this.fadeOutDuration = defaults.fadeOutDuration;
    	      this.inputLabel = defaults.inputLabel;
    	      this.odataType = defaults.odataType;
    	      this.start = defaults.start;
        }

        @CustomType.Setter
        public Builder audioGainLevel(@Nullable Double audioGainLevel) {

            this.audioGainLevel = audioGainLevel;
            return this;
        }
        @CustomType.Setter
        public Builder end(@Nullable String end) {

            this.end = end;
            return this;
        }
        @CustomType.Setter
        public Builder fadeInDuration(@Nullable String fadeInDuration) {

            this.fadeInDuration = fadeInDuration;
            return this;
        }
        @CustomType.Setter
        public Builder fadeOutDuration(@Nullable String fadeOutDuration) {

            this.fadeOutDuration = fadeOutDuration;
            return this;
        }
        @CustomType.Setter
        public Builder inputLabel(String inputLabel) {
            if (inputLabel == null) {
              throw new MissingRequiredPropertyException("AudioOverlayResponse", "inputLabel");
            }
            this.inputLabel = inputLabel;
            return this;
        }
        @CustomType.Setter
        public Builder odataType(String odataType) {
            if (odataType == null) {
              throw new MissingRequiredPropertyException("AudioOverlayResponse", "odataType");
            }
            this.odataType = odataType;
            return this;
        }
        @CustomType.Setter
        public Builder start(@Nullable String start) {

            this.start = start;
            return this;
        }
        public AudioOverlayResponse build() {
            final var _resultValue = new AudioOverlayResponse();
            _resultValue.audioGainLevel = audioGainLevel;
            _resultValue.end = end;
            _resultValue.fadeInDuration = fadeInDuration;
            _resultValue.fadeOutDuration = fadeOutDuration;
            _resultValue.inputLabel = inputLabel;
            _resultValue.odataType = odataType;
            _resultValue.start = start;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy