getParserForType() {
}
}
+ public interface DeinterlaceOrBuilder
+ extends
+ // @@protoc_insertion_point(interface_extends:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace)
+ com.google.protobuf.MessageOrBuilder {
+
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ *
+ * @return Whether the yadif field is set.
+ */
+ boolean hasYadif();
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ *
+ * @return The yadif.
+ */
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig getYadif();
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfigOrBuilder
+ getYadifOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ *
+ * @return Whether the bwdif field is set.
+ */
+ boolean hasBwdif();
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ *
+ * @return The bwdif.
+ */
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig getBwdif();
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfigOrBuilder
+ getBwdifOrBuilder();
+
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .DeinterlacingFilterCase
+ getDeinterlacingFilterCase();
+ }
+ /**
+ *
+ *
+ *
+ * Deinterlace configuration for input video.
+ *
+ *
+ * Protobuf type {@code google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace}
+ */
+ public static final class Deinterlace extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace)
+ DeinterlaceOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Deinterlace.newBuilder() to construct.
+ private Deinterlace(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private Deinterlace() {}
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new Deinterlace();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
+ return this.unknownFields;
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.class,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.Builder.class);
+ }
+
+ public interface YadifConfigOrBuilder
+ extends
+ // @@protoc_insertion_point(interface_extends:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ com.google.protobuf.MessageOrBuilder {
+
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The mode.
+ */
+ java.lang.String getMode();
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The bytes for mode.
+ */
+ com.google.protobuf.ByteString getModeBytes();
+
+ /**
+ *
+ *
+ *
+ * Disable spacial interlacing.
+ * The default is `false`.
+ *
+ *
+ * bool disable_spatial_interlacing = 2;
+ *
+ * @return The disableSpatialInterlacing.
+ */
+ boolean getDisableSpatialInterlacing();
+
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @return The parity.
+ */
+ java.lang.String getParity();
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @return The bytes for parity.
+ */
+ com.google.protobuf.ByteString getParityBytes();
+
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 4;
+ *
+ * @return The deinterlaceAllFrames.
+ */
+ boolean getDeinterlaceAllFrames();
+ }
+ /**
+ *
+ *
+ *
+ * Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ * Protobuf type {@code
+ * google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig}
+ */
+ public static final class YadifConfig extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ YadifConfigOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use YadifConfig.newBuilder() to construct.
+ private YadifConfig(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private YadifConfig() {
+ mode_ = "";
+ parity_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new YadifConfig();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
+ return this.unknownFields;
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .class,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .Builder.class);
+ }
+
+ public static final int MODE_FIELD_NUMBER = 1;
+ private volatile java.lang.Object mode_;
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The mode.
+ */
+ @java.lang.Override
+ public java.lang.String getMode() {
+ java.lang.Object ref = mode_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ mode_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The bytes for mode.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getModeBytes() {
+ java.lang.Object ref = mode_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ mode_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DISABLE_SPATIAL_INTERLACING_FIELD_NUMBER = 2;
+ private boolean disableSpatialInterlacing_;
+ /**
+ *
+ *
+ *
+ * Disable spacial interlacing.
+ * The default is `false`.
+ *
+ *
+ * bool disable_spatial_interlacing = 2;
+ *
+ * @return The disableSpatialInterlacing.
+ */
+ @java.lang.Override
+ public boolean getDisableSpatialInterlacing() {
+ return disableSpatialInterlacing_;
+ }
+
+ public static final int PARITY_FIELD_NUMBER = 3;
+ private volatile java.lang.Object parity_;
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @return The parity.
+ */
+ @java.lang.Override
+ public java.lang.String getParity() {
+ java.lang.Object ref = parity_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parity_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @return The bytes for parity.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getParityBytes() {
+ java.lang.Object ref = parity_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parity_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DEINTERLACE_ALL_FRAMES_FIELD_NUMBER = 4;
+ private boolean deinterlaceAllFrames_;
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 4;
+ *
+ * @return The deinterlaceAllFrames.
+ */
+ @java.lang.Override
+ public boolean getDeinterlaceAllFrames() {
+ return deinterlaceAllFrames_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(mode_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, mode_);
+ }
+ if (disableSpatialInterlacing_ != false) {
+ output.writeBool(2, disableSpatialInterlacing_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parity_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, parity_);
+ }
+ if (deinterlaceAllFrames_ != false) {
+ output.writeBool(4, deinterlaceAllFrames_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(mode_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, mode_);
+ }
+ if (disableSpatialInterlacing_ != false) {
+ size +=
+ com.google.protobuf.CodedOutputStream.computeBoolSize(2, disableSpatialInterlacing_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parity_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, parity_);
+ }
+ if (deinterlaceAllFrames_ != false) {
+ size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, deinterlaceAllFrames_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj
+ instanceof
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig other =
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig) obj;
+
+ if (!getMode().equals(other.getMode())) return false;
+ if (getDisableSpatialInterlacing() != other.getDisableSpatialInterlacing()) return false;
+ if (!getParity().equals(other.getParity())) return false;
+ if (getDeinterlaceAllFrames() != other.getDeinterlaceAllFrames()) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + MODE_FIELD_NUMBER;
+ hash = (53 * hash) + getMode().hashCode();
+ hash = (37 * hash) + DISABLE_SPATIAL_INTERLACING_FIELD_NUMBER;
+ hash =
+ (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDisableSpatialInterlacing());
+ hash = (37 * hash) + PARITY_FIELD_NUMBER;
+ hash = (53 * hash) + getParity().hashCode();
+ hash = (37 * hash) + DEINTERLACE_ALL_FRAMES_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDeinterlaceAllFrames());
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ *
+ *
+ *
+ * Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ * Protobuf type {@code
+ * google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ implements
+ // @@protoc_insertion_point(builder_implements:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfigOrBuilder {
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .class,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .Builder.class);
+ }
+
+ // Construct using
+ // com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig.newBuilder()
+ private Builder() {}
+
+ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ super(parent);
+ }
+
+ @java.lang.Override
+ public Builder clear() {
+ super.clear();
+ mode_ = "";
+
+ disableSpatialInterlacing_ = false;
+
+ parity_ = "";
+
+ deinterlaceAllFrames_ = false;
+
+ return this;
+ }
+
+ @java.lang.Override
+ public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_descriptor;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ getDefaultInstanceForType() {
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .getDefaultInstance();
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ build() {
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig result =
+ buildPartial();
+ if (!result.isInitialized()) {
+ throw newUninitializedMessageException(result);
+ }
+ return result;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ buildPartial() {
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig result =
+ new com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig(
+ this);
+ result.mode_ = mode_;
+ result.disableSpatialInterlacing_ = disableSpatialInterlacing_;
+ result.parity_ = parity_;
+ result.deinterlaceAllFrames_ = deinterlaceAllFrames_;
+ onBuilt();
+ return result;
+ }
+
+ @java.lang.Override
+ public Builder clone() {
+ return super.clone();
+ }
+
+ @java.lang.Override
+ public Builder setField(
+ com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
+ return super.setField(field, value);
+ }
+
+ @java.lang.Override
+ public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
+ return super.clearField(field);
+ }
+
+ @java.lang.Override
+ public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
+ return super.clearOneof(oneof);
+ }
+
+ @java.lang.Override
+ public Builder setRepeatedField(
+ com.google.protobuf.Descriptors.FieldDescriptor field,
+ int index,
+ java.lang.Object value) {
+ return super.setRepeatedField(field, index, value);
+ }
+
+ @java.lang.Override
+ public Builder addRepeatedField(
+ com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
+ return super.addRepeatedField(field, value);
+ }
+
+ @java.lang.Override
+ public Builder mergeFrom(com.google.protobuf.Message other) {
+ if (other
+ instanceof
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig) {
+ return mergeFrom(
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ other);
+ } else {
+ super.mergeFrom(other);
+ return this;
+ }
+ }
+
+ public Builder mergeFrom(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ other) {
+ if (other
+ == com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .getDefaultInstance()) return this;
+ if (!other.getMode().isEmpty()) {
+ mode_ = other.mode_;
+ onChanged();
+ }
+ if (other.getDisableSpatialInterlacing() != false) {
+ setDisableSpatialInterlacing(other.getDisableSpatialInterlacing());
+ }
+ if (!other.getParity().isEmpty()) {
+ parity_ = other.parity_;
+ onChanged();
+ }
+ if (other.getDeinterlaceAllFrames() != false) {
+ setDeinterlaceAllFrames(other.getDeinterlaceAllFrames());
+ }
+ this.mergeUnknownFields(other.getUnknownFields());
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ return true;
+ }
+
+ @java.lang.Override
+ public Builder mergeFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ try {
+ boolean done = false;
+ while (!done) {
+ int tag = input.readTag();
+ switch (tag) {
+ case 0:
+ done = true;
+ break;
+ case 10:
+ {
+ mode_ = input.readStringRequireUtf8();
+
+ break;
+ } // case 10
+ case 16:
+ {
+ disableSpatialInterlacing_ = input.readBool();
+
+ break;
+ } // case 16
+ case 26:
+ {
+ parity_ = input.readStringRequireUtf8();
+
+ break;
+ } // case 26
+ case 32:
+ {
+ deinterlaceAllFrames_ = input.readBool();
+
+ break;
+ } // case 32
+ default:
+ {
+ if (!super.parseUnknownField(input, extensionRegistry, tag)) {
+ done = true; // was an endgroup tag
+ }
+ break;
+ } // default:
+ } // switch (tag)
+ } // while (!done)
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.unwrapIOException();
+ } finally {
+ onChanged();
+ } // finally
+ return this;
+ }
+
+ private java.lang.Object mode_ = "";
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The mode.
+ */
+ public java.lang.String getMode() {
+ java.lang.Object ref = mode_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ mode_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The bytes for mode.
+ */
+ public com.google.protobuf.ByteString getModeBytes() {
+ java.lang.Object ref = mode_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ mode_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @param value The mode to set.
+ * @return This builder for chaining.
+ */
+ public Builder setMode(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+
+ mode_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearMode() {
+
+ mode_ = getDefaultInstance().getMode();
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @param value The bytes for mode to set.
+ * @return This builder for chaining.
+ */
+ public Builder setModeBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+
+ mode_ = value;
+ onChanged();
+ return this;
+ }
+
+ private boolean disableSpatialInterlacing_;
+ /**
+ *
+ *
+ *
+ * Disable spacial interlacing.
+ * The default is `false`.
+ *
+ *
+ * bool disable_spatial_interlacing = 2;
+ *
+ * @return The disableSpatialInterlacing.
+ */
+ @java.lang.Override
+ public boolean getDisableSpatialInterlacing() {
+ return disableSpatialInterlacing_;
+ }
+ /**
+ *
+ *
+ *
+ * Disable spacial interlacing.
+ * The default is `false`.
+ *
+ *
+ * bool disable_spatial_interlacing = 2;
+ *
+ * @param value The disableSpatialInterlacing to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDisableSpatialInterlacing(boolean value) {
+
+ disableSpatialInterlacing_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Disable spacial interlacing.
+ * The default is `false`.
+ *
+ *
+ * bool disable_spatial_interlacing = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDisableSpatialInterlacing() {
+
+ disableSpatialInterlacing_ = false;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object parity_ = "";
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @return The parity.
+ */
+ public java.lang.String getParity() {
+ java.lang.Object ref = parity_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parity_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @return The bytes for parity.
+ */
+ public com.google.protobuf.ByteString getParityBytes() {
+ java.lang.Object ref = parity_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parity_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @param value The parity to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParity(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+
+ parity_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearParity() {
+
+ parity_ = getDefaultInstance().getParity();
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 3;
+ *
+ * @param value The bytes for parity to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParityBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+
+ parity_ = value;
+ onChanged();
+ return this;
+ }
+
+ private boolean deinterlaceAllFrames_;
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 4;
+ *
+ * @return The deinterlaceAllFrames.
+ */
+ @java.lang.Override
+ public boolean getDeinterlaceAllFrames() {
+ return deinterlaceAllFrames_;
+ }
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 4;
+ *
+ * @param value The deinterlaceAllFrames to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDeinterlaceAllFrames(boolean value) {
+
+ deinterlaceAllFrames_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 4;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDeinterlaceAllFrames() {
+
+ deinterlaceAllFrames_ = false;
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ private static final com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfig
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE =
+ new com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig();
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser PARSER =
+ new com.google.protobuf.AbstractParser() {
+ @java.lang.Override
+ public YadifConfig parsePartialFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ Builder builder = newBuilder();
+ try {
+ builder.mergeFrom(input, extensionRegistry);
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.setUnfinishedMessage(builder.buildPartial());
+ } catch (com.google.protobuf.UninitializedMessageException e) {
+ throw e.asInvalidProtocolBufferException()
+ .setUnfinishedMessage(builder.buildPartial());
+ } catch (java.io.IOException e) {
+ throw new com.google.protobuf.InvalidProtocolBufferException(e)
+ .setUnfinishedMessage(builder.buildPartial());
+ }
+ return builder.buildPartial();
+ }
+ };
+
+ public static com.google.protobuf.Parser parser() {
+ return PARSER;
+ }
+
+ @java.lang.Override
+ public com.google.protobuf.Parser getParserForType() {
+ return PARSER;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ getDefaultInstanceForType() {
+ return DEFAULT_INSTANCE;
+ }
+ }
+
+ public interface BwdifConfigOrBuilder
+ extends
+ // @@protoc_insertion_point(interface_extends:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ com.google.protobuf.MessageOrBuilder {
+
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The mode.
+ */
+ java.lang.String getMode();
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The bytes for mode.
+ */
+ com.google.protobuf.ByteString getModeBytes();
+
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @return The parity.
+ */
+ java.lang.String getParity();
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @return The bytes for parity.
+ */
+ com.google.protobuf.ByteString getParityBytes();
+
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 3;
+ *
+ * @return The deinterlaceAllFrames.
+ */
+ boolean getDeinterlaceAllFrames();
+ }
+ /**
+ *
+ *
+ *
+ * Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ * Protobuf type {@code
+ * google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig}
+ */
+ public static final class BwdifConfig extends com.google.protobuf.GeneratedMessageV3
+ implements
+ // @@protoc_insertion_point(message_implements:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ BwdifConfigOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use BwdifConfig.newBuilder() to construct.
+ private BwdifConfig(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+
+ private BwdifConfig() {
+ mode_ = "";
+ parity_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
+ return new BwdifConfig();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
+ return this.unknownFields;
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .class,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .Builder.class);
+ }
+
+ public static final int MODE_FIELD_NUMBER = 1;
+ private volatile java.lang.Object mode_;
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The mode.
+ */
+ @java.lang.Override
+ public java.lang.String getMode() {
+ java.lang.Object ref = mode_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ mode_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The bytes for mode.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getModeBytes() {
+ java.lang.Object ref = mode_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ mode_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int PARITY_FIELD_NUMBER = 2;
+ private volatile java.lang.Object parity_;
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @return The parity.
+ */
+ @java.lang.Override
+ public java.lang.String getParity() {
+ java.lang.Object ref = parity_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parity_ = s;
+ return s;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @return The bytes for parity.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getParityBytes() {
+ java.lang.Object ref = parity_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parity_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DEINTERLACE_ALL_FRAMES_FIELD_NUMBER = 3;
+ private boolean deinterlaceAllFrames_;
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 3;
+ *
+ * @return The deinterlaceAllFrames.
+ */
+ @java.lang.Override
+ public boolean getDeinterlaceAllFrames() {
+ return deinterlaceAllFrames_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(mode_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, mode_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parity_)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, parity_);
+ }
+ if (deinterlaceAllFrames_ != false) {
+ output.writeBool(3, deinterlaceAllFrames_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(mode_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, mode_);
+ }
+ if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parity_)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, parity_);
+ }
+ if (deinterlaceAllFrames_ != false) {
+ size += com.google.protobuf.CodedOutputStream.computeBoolSize(3, deinterlaceAllFrames_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj
+ instanceof
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig other =
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig) obj;
+
+ if (!getMode().equals(other.getMode())) return false;
+ if (!getParity().equals(other.getParity())) return false;
+ if (getDeinterlaceAllFrames() != other.getDeinterlaceAllFrames()) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + MODE_FIELD_NUMBER;
+ hash = (53 * hash) + getMode().hashCode();
+ hash = (37 * hash) + PARITY_FIELD_NUMBER;
+ hash = (53 * hash) + getParity().hashCode();
+ hash = (37 * hash) + DEINTERLACE_ALL_FRAMES_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDeinterlaceAllFrames());
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ *
+ *
+ *
+ * Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ * Protobuf type {@code
+ * google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ implements
+ // @@protoc_insertion_point(builder_implements:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfigOrBuilder {
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .class,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .Builder.class);
+ }
+
+ // Construct using
+ // com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig.newBuilder()
+ private Builder() {}
+
+ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ super(parent);
+ }
+
+ @java.lang.Override
+ public Builder clear() {
+ super.clear();
+ mode_ = "";
+
+ parity_ = "";
+
+ deinterlaceAllFrames_ = false;
+
+ return this;
+ }
+
+ @java.lang.Override
+ public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_descriptor;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ getDefaultInstanceForType() {
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .getDefaultInstance();
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ build() {
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig result =
+ buildPartial();
+ if (!result.isInitialized()) {
+ throw newUninitializedMessageException(result);
+ }
+ return result;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ buildPartial() {
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig result =
+ new com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig(
+ this);
+ result.mode_ = mode_;
+ result.parity_ = parity_;
+ result.deinterlaceAllFrames_ = deinterlaceAllFrames_;
+ onBuilt();
+ return result;
+ }
+
+ @java.lang.Override
+ public Builder clone() {
+ return super.clone();
+ }
+
+ @java.lang.Override
+ public Builder setField(
+ com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
+ return super.setField(field, value);
+ }
+
+ @java.lang.Override
+ public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
+ return super.clearField(field);
+ }
+
+ @java.lang.Override
+ public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
+ return super.clearOneof(oneof);
+ }
+
+ @java.lang.Override
+ public Builder setRepeatedField(
+ com.google.protobuf.Descriptors.FieldDescriptor field,
+ int index,
+ java.lang.Object value) {
+ return super.setRepeatedField(field, index, value);
+ }
+
+ @java.lang.Override
+ public Builder addRepeatedField(
+ com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
+ return super.addRepeatedField(field, value);
+ }
+
+ @java.lang.Override
+ public Builder mergeFrom(com.google.protobuf.Message other) {
+ if (other
+ instanceof
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig) {
+ return mergeFrom(
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ other);
+ } else {
+ super.mergeFrom(other);
+ return this;
+ }
+ }
+
+ public Builder mergeFrom(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ other) {
+ if (other
+ == com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .getDefaultInstance()) return this;
+ if (!other.getMode().isEmpty()) {
+ mode_ = other.mode_;
+ onChanged();
+ }
+ if (!other.getParity().isEmpty()) {
+ parity_ = other.parity_;
+ onChanged();
+ }
+ if (other.getDeinterlaceAllFrames() != false) {
+ setDeinterlaceAllFrames(other.getDeinterlaceAllFrames());
+ }
+ this.mergeUnknownFields(other.getUnknownFields());
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ return true;
+ }
+
+ @java.lang.Override
+ public Builder mergeFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ try {
+ boolean done = false;
+ while (!done) {
+ int tag = input.readTag();
+ switch (tag) {
+ case 0:
+ done = true;
+ break;
+ case 10:
+ {
+ mode_ = input.readStringRequireUtf8();
+
+ break;
+ } // case 10
+ case 18:
+ {
+ parity_ = input.readStringRequireUtf8();
+
+ break;
+ } // case 18
+ case 24:
+ {
+ deinterlaceAllFrames_ = input.readBool();
+
+ break;
+ } // case 24
+ default:
+ {
+ if (!super.parseUnknownField(input, extensionRegistry, tag)) {
+ done = true; // was an endgroup tag
+ }
+ break;
+ } // default:
+ } // switch (tag)
+ } // while (!done)
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.unwrapIOException();
+ } finally {
+ onChanged();
+ } // finally
+ return this;
+ }
+
+ private java.lang.Object mode_ = "";
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The mode.
+ */
+ public java.lang.String getMode() {
+ java.lang.Object ref = mode_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ mode_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return The bytes for mode.
+ */
+ public com.google.protobuf.ByteString getModeBytes() {
+ java.lang.Object ref = mode_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ mode_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @param value The mode to set.
+ * @return This builder for chaining.
+ */
+ public Builder setMode(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+
+ mode_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearMode() {
+
+ mode_ = getDefaultInstance().getMode();
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the deinterlacing mode to adopt.
+ * The default is `send_frame`.
+ * Supported values:
+ * - `send_frame`: Output one frame for each frame
+ * - `send_field`: Output one frame for each field
+ *
+ *
+ * string mode = 1;
+ *
+ * @param value The bytes for mode to set.
+ * @return This builder for chaining.
+ */
+ public Builder setModeBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+
+ mode_ = value;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object parity_ = "";
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @return The parity.
+ */
+ public java.lang.String getParity() {
+ java.lang.Object ref = parity_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parity_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @return The bytes for parity.
+ */
+ public com.google.protobuf.ByteString getParityBytes() {
+ java.lang.Object ref = parity_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parity_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @param value The parity to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParity(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+
+ parity_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearParity() {
+
+ parity_ = getDefaultInstance().getParity();
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * The picture field parity assumed for the input interlaced video.
+ * The default is `auto`.
+ * Supported values:
+ * - `tff`: Assume the top field is first
+ * - `bff`: Assume the bottom field is first
+ * - `auto`: Enable automatic detection of field parity
+ *
+ *
+ * string parity = 2;
+ *
+ * @param value The bytes for parity to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParityBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+
+ parity_ = value;
+ onChanged();
+ return this;
+ }
+
+ private boolean deinterlaceAllFrames_;
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 3;
+ *
+ * @return The deinterlaceAllFrames.
+ */
+ @java.lang.Override
+ public boolean getDeinterlaceAllFrames() {
+ return deinterlaceAllFrames_;
+ }
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 3;
+ *
+ * @param value The deinterlaceAllFrames to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDeinterlaceAllFrames(boolean value) {
+
+ deinterlaceAllFrames_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Deinterlace all frames rather than just the frames identified as
+ * interlaced. The default is `false`.
+ *
+ *
+ * bool deinterlace_all_frames = 3;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDeinterlaceAllFrames() {
+
+ deinterlaceAllFrames_ = false;
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ private static final com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfig
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE =
+ new com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig();
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser PARSER =
+ new com.google.protobuf.AbstractParser() {
+ @java.lang.Override
+ public BwdifConfig parsePartialFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ Builder builder = newBuilder();
+ try {
+ builder.mergeFrom(input, extensionRegistry);
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.setUnfinishedMessage(builder.buildPartial());
+ } catch (com.google.protobuf.UninitializedMessageException e) {
+ throw e.asInvalidProtocolBufferException()
+ .setUnfinishedMessage(builder.buildPartial());
+ } catch (java.io.IOException e) {
+ throw new com.google.protobuf.InvalidProtocolBufferException(e)
+ .setUnfinishedMessage(builder.buildPartial());
+ }
+ return builder.buildPartial();
+ }
+ };
+
+ public static com.google.protobuf.Parser parser() {
+ return PARSER;
+ }
+
+ @java.lang.Override
+ public com.google.protobuf.Parser getParserForType() {
+ return PARSER;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ getDefaultInstanceForType() {
+ return DEFAULT_INSTANCE;
+ }
+ }
+
+ private int deinterlacingFilterCase_ = 0;
+ private java.lang.Object deinterlacingFilter_;
+
+ public enum DeinterlacingFilterCase
+ implements
+ com.google.protobuf.Internal.EnumLite,
+ com.google.protobuf.AbstractMessage.InternalOneOfEnum {
+ YADIF(1),
+ BWDIF(2),
+ DEINTERLACINGFILTER_NOT_SET(0);
+ private final int value;
+
+ private DeinterlacingFilterCase(int value) {
+ this.value = value;
+ }
+ /**
+ * @param value The number of the enum to look for.
+ * @return The enum associated with the given number.
+ * @deprecated Use {@link #forNumber(int)} instead.
+ */
+ @java.lang.Deprecated
+ public static DeinterlacingFilterCase valueOf(int value) {
+ return forNumber(value);
+ }
+
+ public static DeinterlacingFilterCase forNumber(int value) {
+ switch (value) {
+ case 1:
+ return YADIF;
+ case 2:
+ return BWDIF;
+ case 0:
+ return DEINTERLACINGFILTER_NOT_SET;
+ default:
+ return null;
+ }
+ }
+
+ public int getNumber() {
+ return this.value;
+ }
+ };
+
+ public DeinterlacingFilterCase getDeinterlacingFilterCase() {
+ return DeinterlacingFilterCase.forNumber(deinterlacingFilterCase_);
+ }
+
+ public static final int YADIF_FIELD_NUMBER = 1;
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ *
+ * @return Whether the yadif field is set.
+ */
+ @java.lang.Override
+ public boolean hasYadif() {
+ return deinterlacingFilterCase_ == 1;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ *
+ * @return The yadif.
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ getYadif() {
+ if (deinterlacingFilterCase_ == 1) {
+ return (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ deinterlacingFilter_;
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .getDefaultInstance();
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfigOrBuilder
+ getYadifOrBuilder() {
+ if (deinterlacingFilterCase_ == 1) {
+ return (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ deinterlacingFilter_;
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .getDefaultInstance();
+ }
+
+ public static final int BWDIF_FIELD_NUMBER = 2;
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ *
+ * @return Whether the bwdif field is set.
+ */
+ @java.lang.Override
+ public boolean hasBwdif() {
+ return deinterlacingFilterCase_ == 2;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ *
+ * @return The bwdif.
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ getBwdif() {
+ if (deinterlacingFilterCase_ == 2) {
+ return (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ deinterlacingFilter_;
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .getDefaultInstance();
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfigOrBuilder
+ getBwdifOrBuilder() {
+ if (deinterlacingFilterCase_ == 2) {
+ return (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ deinterlacingFilter_;
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .getDefaultInstance();
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (deinterlacingFilterCase_ == 1) {
+ output.writeMessage(
+ 1,
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ deinterlacingFilter_);
+ }
+ if (deinterlacingFilterCase_ == 2) {
+ output.writeMessage(
+ 2,
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ deinterlacingFilter_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (deinterlacingFilterCase_ == 1) {
+ size +=
+ com.google.protobuf.CodedOutputStream.computeMessageSize(
+ 1,
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ deinterlacingFilter_);
+ }
+ if (deinterlacingFilterCase_ == 2) {
+ size +=
+ com.google.protobuf.CodedOutputStream.computeMessageSize(
+ 2,
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ deinterlacingFilter_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace)) {
+ return super.equals(obj);
+ }
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace other =
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace) obj;
+
+ if (!getDeinterlacingFilterCase().equals(other.getDeinterlacingFilterCase())) return false;
+ switch (deinterlacingFilterCase_) {
+ case 1:
+ if (!getYadif().equals(other.getYadif())) return false;
+ break;
+ case 2:
+ if (!getBwdif().equals(other.getBwdif())) return false;
+ break;
+ case 0:
+ default:
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ switch (deinterlacingFilterCase_) {
+ case 1:
+ hash = (37 * hash) + YADIF_FIELD_NUMBER;
+ hash = (53 * hash) + getYadif().hashCode();
+ break;
+ case 2:
+ hash = (37 * hash) + BWDIF_FIELD_NUMBER;
+ hash = (53 * hash) + getBwdif().hashCode();
+ break;
+ case 0:
+ default:
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ *
+ *
+ *
+ * Deinterlace configuration for input video.
+ *
+ *
+ * Protobuf type {@code google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace}
+ */
+ public static final class Builder
+ extends com.google.protobuf.GeneratedMessageV3.Builder
+ implements
+ // @@protoc_insertion_point(builder_implements:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace)
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.DeinterlaceOrBuilder {
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.class,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.Builder.class);
+ }
+
+ // Construct using
+ // com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.newBuilder()
+ private Builder() {}
+
+ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ super(parent);
+ }
+
+ @java.lang.Override
+ public Builder clear() {
+ super.clear();
+ if (yadifBuilder_ != null) {
+ yadifBuilder_.clear();
+ }
+ if (bwdifBuilder_ != null) {
+ bwdifBuilder_.clear();
+ }
+ deinterlacingFilterCase_ = 0;
+ deinterlacingFilter_ = null;
+ return this;
+ }
+
+ @java.lang.Override
+ public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
+ return com.google.cloud.video.transcoder.v1.ResourcesProto
+ .internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_descriptor;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ getDefaultInstanceForType() {
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .getDefaultInstance();
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace build() {
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace result =
+ buildPartial();
+ if (!result.isInitialized()) {
+ throw newUninitializedMessageException(result);
+ }
+ return result;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace buildPartial() {
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace result =
+ new com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace(this);
+ if (deinterlacingFilterCase_ == 1) {
+ if (yadifBuilder_ == null) {
+ result.deinterlacingFilter_ = deinterlacingFilter_;
+ } else {
+ result.deinterlacingFilter_ = yadifBuilder_.build();
+ }
+ }
+ if (deinterlacingFilterCase_ == 2) {
+ if (bwdifBuilder_ == null) {
+ result.deinterlacingFilter_ = deinterlacingFilter_;
+ } else {
+ result.deinterlacingFilter_ = bwdifBuilder_.build();
+ }
+ }
+ result.deinterlacingFilterCase_ = deinterlacingFilterCase_;
+ onBuilt();
+ return result;
+ }
+
+ @java.lang.Override
+ public Builder clone() {
+ return super.clone();
+ }
+
+ @java.lang.Override
+ public Builder setField(
+ com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
+ return super.setField(field, value);
+ }
+
+ @java.lang.Override
+ public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
+ return super.clearField(field);
+ }
+
+ @java.lang.Override
+ public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
+ return super.clearOneof(oneof);
+ }
+
+ @java.lang.Override
+ public Builder setRepeatedField(
+ com.google.protobuf.Descriptors.FieldDescriptor field,
+ int index,
+ java.lang.Object value) {
+ return super.setRepeatedField(field, index, value);
+ }
+
+ @java.lang.Override
+ public Builder addRepeatedField(
+ com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
+ return super.addRepeatedField(field, value);
+ }
+
+ @java.lang.Override
+ public Builder mergeFrom(com.google.protobuf.Message other) {
+ if (other instanceof com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace) {
+ return mergeFrom(
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace) other);
+ } else {
+ super.mergeFrom(other);
+ return this;
+ }
+ }
+
+ public Builder mergeFrom(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace other) {
+ if (other
+ == com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .getDefaultInstance()) return this;
+ switch (other.getDeinterlacingFilterCase()) {
+ case YADIF:
+ {
+ mergeYadif(other.getYadif());
+ break;
+ }
+ case BWDIF:
+ {
+ mergeBwdif(other.getBwdif());
+ break;
+ }
+ case DEINTERLACINGFILTER_NOT_SET:
+ {
+ break;
+ }
+ }
+ this.mergeUnknownFields(other.getUnknownFields());
+ onChanged();
+ return this;
+ }
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ return true;
+ }
+
+ @java.lang.Override
+ public Builder mergeFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ try {
+ boolean done = false;
+ while (!done) {
+ int tag = input.readTag();
+ switch (tag) {
+ case 0:
+ done = true;
+ break;
+ case 10:
+ {
+ input.readMessage(getYadifFieldBuilder().getBuilder(), extensionRegistry);
+ deinterlacingFilterCase_ = 1;
+ break;
+ } // case 10
+ case 18:
+ {
+ input.readMessage(getBwdifFieldBuilder().getBuilder(), extensionRegistry);
+ deinterlacingFilterCase_ = 2;
+ break;
+ } // case 18
+ default:
+ {
+ if (!super.parseUnknownField(input, extensionRegistry, tag)) {
+ done = true; // was an endgroup tag
+ }
+ break;
+ } // default:
+ } // switch (tag)
+ } // while (!done)
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.unwrapIOException();
+ } finally {
+ onChanged();
+ } // finally
+ return this;
+ }
+
+ private int deinterlacingFilterCase_ = 0;
+ private java.lang.Object deinterlacingFilter_;
+
+ public DeinterlacingFilterCase getDeinterlacingFilterCase() {
+ return DeinterlacingFilterCase.forNumber(deinterlacingFilterCase_);
+ }
+
+ public Builder clearDeinterlacingFilter() {
+ deinterlacingFilterCase_ = 0;
+ deinterlacingFilter_ = null;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfigOrBuilder>
+ yadifBuilder_;
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ *
+ * @return Whether the yadif field is set.
+ */
+ @java.lang.Override
+ public boolean hasYadif() {
+ return deinterlacingFilterCase_ == 1;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ *
+ * @return The yadif.
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ getYadif() {
+ if (yadifBuilder_ == null) {
+ if (deinterlacingFilterCase_ == 1) {
+ return (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfig)
+ deinterlacingFilter_;
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .getDefaultInstance();
+ } else {
+ if (deinterlacingFilterCase_ == 1) {
+ return yadifBuilder_.getMessage();
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .getDefaultInstance();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ public Builder setYadif(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig value) {
+ if (yadifBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ deinterlacingFilter_ = value;
+ onChanged();
+ } else {
+ yadifBuilder_.setMessage(value);
+ }
+ deinterlacingFilterCase_ = 1;
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ public Builder setYadif(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig.Builder
+ builderForValue) {
+ if (yadifBuilder_ == null) {
+ deinterlacingFilter_ = builderForValue.build();
+ onChanged();
+ } else {
+ yadifBuilder_.setMessage(builderForValue.build());
+ }
+ deinterlacingFilterCase_ = 1;
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ public Builder mergeYadif(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig value) {
+ if (yadifBuilder_ == null) {
+ if (deinterlacingFilterCase_ == 1
+ && deinterlacingFilter_
+ != com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfig.getDefaultInstance()) {
+ deinterlacingFilter_ =
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .newBuilder(
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfig)
+ deinterlacingFilter_)
+ .mergeFrom(value)
+ .buildPartial();
+ } else {
+ deinterlacingFilter_ = value;
+ }
+ onChanged();
+ } else {
+ if (deinterlacingFilterCase_ == 1) {
+ yadifBuilder_.mergeFrom(value);
+ } else {
+ yadifBuilder_.setMessage(value);
+ }
+ }
+ deinterlacingFilterCase_ = 1;
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ public Builder clearYadif() {
+ if (yadifBuilder_ == null) {
+ if (deinterlacingFilterCase_ == 1) {
+ deinterlacingFilterCase_ = 0;
+ deinterlacingFilter_ = null;
+ onChanged();
+ }
+ } else {
+ if (deinterlacingFilterCase_ == 1) {
+ deinterlacingFilterCase_ = 0;
+ deinterlacingFilter_ = null;
+ }
+ yadifBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .Builder
+ getYadifBuilder() {
+ return getYadifFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfigOrBuilder
+ getYadifOrBuilder() {
+ if ((deinterlacingFilterCase_ == 1) && (yadifBuilder_ != null)) {
+ return yadifBuilder_.getMessageOrBuilder();
+ } else {
+ if (deinterlacingFilterCase_ == 1) {
+ return (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfig)
+ deinterlacingFilter_;
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .getDefaultInstance();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Yet Another Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig yadif = 1;
+ *
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfigOrBuilder>
+ getYadifFieldBuilder() {
+ if (yadifBuilder_ == null) {
+ if (!(deinterlacingFilterCase_ == 1)) {
+ deinterlacingFilter_ =
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .getDefaultInstance();
+ }
+ yadifBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig
+ .Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .YadifConfigOrBuilder>(
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.YadifConfig)
+ deinterlacingFilter_,
+ getParentForChildren(),
+ isClean());
+ deinterlacingFilter_ = null;
+ }
+ deinterlacingFilterCase_ = 1;
+ onChanged();
+ ;
+ return yadifBuilder_;
+ }
+
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfigOrBuilder>
+ bwdifBuilder_;
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ *
+ * @return Whether the bwdif field is set.
+ */
+ @java.lang.Override
+ public boolean hasBwdif() {
+ return deinterlacingFilterCase_ == 2;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ *
+ * @return The bwdif.
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ getBwdif() {
+ if (bwdifBuilder_ == null) {
+ if (deinterlacingFilterCase_ == 2) {
+ return (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfig)
+ deinterlacingFilter_;
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .getDefaultInstance();
+ } else {
+ if (deinterlacingFilterCase_ == 2) {
+ return bwdifBuilder_.getMessage();
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .getDefaultInstance();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ public Builder setBwdif(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig value) {
+ if (bwdifBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ deinterlacingFilter_ = value;
+ onChanged();
+ } else {
+ bwdifBuilder_.setMessage(value);
+ }
+ deinterlacingFilterCase_ = 2;
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ public Builder setBwdif(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig.Builder
+ builderForValue) {
+ if (bwdifBuilder_ == null) {
+ deinterlacingFilter_ = builderForValue.build();
+ onChanged();
+ } else {
+ bwdifBuilder_.setMessage(builderForValue.build());
+ }
+ deinterlacingFilterCase_ = 2;
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ public Builder mergeBwdif(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig value) {
+ if (bwdifBuilder_ == null) {
+ if (deinterlacingFilterCase_ == 2
+ && deinterlacingFilter_
+ != com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfig.getDefaultInstance()) {
+ deinterlacingFilter_ =
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .newBuilder(
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfig)
+ deinterlacingFilter_)
+ .mergeFrom(value)
+ .buildPartial();
+ } else {
+ deinterlacingFilter_ = value;
+ }
+ onChanged();
+ } else {
+ if (deinterlacingFilterCase_ == 2) {
+ bwdifBuilder_.mergeFrom(value);
+ } else {
+ bwdifBuilder_.setMessage(value);
+ }
+ }
+ deinterlacingFilterCase_ = 2;
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ public Builder clearBwdif() {
+ if (bwdifBuilder_ == null) {
+ if (deinterlacingFilterCase_ == 2) {
+ deinterlacingFilterCase_ = 0;
+ deinterlacingFilter_ = null;
+ onChanged();
+ }
+ } else {
+ if (deinterlacingFilterCase_ == 2) {
+ deinterlacingFilterCase_ = 0;
+ deinterlacingFilter_ = null;
+ }
+ bwdifBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .Builder
+ getBwdifBuilder() {
+ return getBwdifFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfigOrBuilder
+ getBwdifOrBuilder() {
+ if ((deinterlacingFilterCase_ == 2) && (bwdifBuilder_ != null)) {
+ return bwdifBuilder_.getMessageOrBuilder();
+ } else {
+ if (deinterlacingFilterCase_ == 2) {
+ return (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfig)
+ deinterlacingFilter_;
+ }
+ return com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .getDefaultInstance();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ *
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig bwdif = 2;
+ *
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfigOrBuilder>
+ getBwdifFieldBuilder() {
+ if (bwdifBuilder_ == null) {
+ if (!(deinterlacingFilterCase_ == 2)) {
+ deinterlacingFilter_ =
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .getDefaultInstance();
+ }
+ bwdifBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig
+ .Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .BwdifConfigOrBuilder>(
+ (com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.BwdifConfig)
+ deinterlacingFilter_,
+ getParentForChildren(),
+ isClean());
+ deinterlacingFilter_ = null;
+ }
+ deinterlacingFilterCase_ = 2;
+ onChanged();
+ ;
+ return bwdifBuilder_;
+ }
+
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace)
+ private static final com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace();
+ }
+
+ public static com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser PARSER =
+ new com.google.protobuf.AbstractParser() {
+ @java.lang.Override
+ public Deinterlace parsePartialFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ Builder builder = newBuilder();
+ try {
+ builder.mergeFrom(input, extensionRegistry);
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.setUnfinishedMessage(builder.buildPartial());
+ } catch (com.google.protobuf.UninitializedMessageException e) {
+ throw e.asInvalidProtocolBufferException()
+ .setUnfinishedMessage(builder.buildPartial());
+ } catch (java.io.IOException e) {
+ throw new com.google.protobuf.InvalidProtocolBufferException(e)
+ .setUnfinishedMessage(builder.buildPartial());
+ }
+ return builder.buildPartial();
+ }
+ };
+
+ public static com.google.protobuf.Parser parser() {
+ return PARSER;
+ }
+
+ @java.lang.Override
+ public com.google.protobuf.Parser getParserForType() {
+ return PARSER;
+ }
+
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ getDefaultInstanceForType() {
+ return DEFAULT_INSTANCE;
+ }
+ }
+
public static final int COLOR_FIELD_NUMBER = 1;
private com.google.cloud.video.transcoder.v1.PreprocessingConfig.Color color_;
/**
@@ -5106,6 +8672,55 @@ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.PadOrBuilder get
return getPad();
}
+ public static final int DEINTERLACE_FIELD_NUMBER = 7;
+ private com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace_;
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ * @return Whether the deinterlace field is set.
+ */
+ @java.lang.Override
+ public boolean hasDeinterlace() {
+ return deinterlace_ != null;
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ * @return The deinterlace.
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace getDeinterlace() {
+ return deinterlace_ == null
+ ? com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.getDefaultInstance()
+ : deinterlace_;
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ */
+ @java.lang.Override
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.DeinterlaceOrBuilder
+ getDeinterlaceOrBuilder() {
+ return getDeinterlace();
+ }
+
private byte memoizedIsInitialized = -1;
@java.lang.Override
@@ -5138,6 +8753,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
if (pad_ != null) {
output.writeMessage(6, getPad());
}
+ if (deinterlace_ != null) {
+ output.writeMessage(7, getDeinterlace());
+ }
getUnknownFields().writeTo(output);
}
@@ -5165,6 +8783,9 @@ public int getSerializedSize() {
if (pad_ != null) {
size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getPad());
}
+ if (deinterlace_ != null) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getDeinterlace());
+ }
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
@@ -5205,6 +8826,10 @@ public boolean equals(final java.lang.Object obj) {
if (hasPad()) {
if (!getPad().equals(other.getPad())) return false;
}
+ if (hasDeinterlace() != other.hasDeinterlace()) return false;
+ if (hasDeinterlace()) {
+ if (!getDeinterlace().equals(other.getDeinterlace())) return false;
+ }
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@@ -5240,6 +8865,10 @@ public int hashCode() {
hash = (37 * hash) + PAD_FIELD_NUMBER;
hash = (53 * hash) + getPad().hashCode();
}
+ if (hasDeinterlace()) {
+ hash = (37 * hash) + DEINTERLACE_FIELD_NUMBER;
+ hash = (53 * hash) + getDeinterlace().hashCode();
+ }
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
@@ -5415,6 +9044,12 @@ public Builder clear() {
pad_ = null;
padBuilder_ = null;
}
+ if (deinterlaceBuilder_ == null) {
+ deinterlace_ = null;
+ } else {
+ deinterlace_ = null;
+ deinterlaceBuilder_ = null;
+ }
return this;
}
@@ -5472,6 +9107,11 @@ public com.google.cloud.video.transcoder.v1.PreprocessingConfig buildPartial() {
} else {
result.pad_ = padBuilder_.build();
}
+ if (deinterlaceBuilder_ == null) {
+ result.deinterlace_ = deinterlace_;
+ } else {
+ result.deinterlace_ = deinterlaceBuilder_.build();
+ }
onBuilt();
return result;
}
@@ -5540,6 +9180,9 @@ public Builder mergeFrom(com.google.cloud.video.transcoder.v1.PreprocessingConfi
if (other.hasPad()) {
mergePad(other.getPad());
}
+ if (other.hasDeinterlace()) {
+ mergeDeinterlace(other.getDeinterlace());
+ }
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
@@ -5602,6 +9245,12 @@ public Builder mergeFrom(
break;
} // case 50
+ case 58:
+ {
+ input.readMessage(getDeinterlaceFieldBuilder().getBuilder(), extensionRegistry);
+
+ break;
+ } // case 58
default:
{
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
@@ -6750,6 +10399,209 @@ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.PadOrBuilder get
return padBuilder_;
}
+ private com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.DeinterlaceOrBuilder>
+ deinterlaceBuilder_;
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ *
+ * @return Whether the deinterlace field is set.
+ */
+ public boolean hasDeinterlace() {
+ return deinterlaceBuilder_ != null || deinterlace_ != null;
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ *
+ * @return The deinterlace.
+ */
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace getDeinterlace() {
+ if (deinterlaceBuilder_ == null) {
+ return deinterlace_ == null
+ ? com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .getDefaultInstance()
+ : deinterlace_;
+ } else {
+ return deinterlaceBuilder_.getMessage();
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ */
+ public Builder setDeinterlace(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace value) {
+ if (deinterlaceBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ deinterlace_ = value;
+ onChanged();
+ } else {
+ deinterlaceBuilder_.setMessage(value);
+ }
+
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ */
+ public Builder setDeinterlace(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.Builder
+ builderForValue) {
+ if (deinterlaceBuilder_ == null) {
+ deinterlace_ = builderForValue.build();
+ onChanged();
+ } else {
+ deinterlaceBuilder_.setMessage(builderForValue.build());
+ }
+
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ */
+ public Builder mergeDeinterlace(
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace value) {
+ if (deinterlaceBuilder_ == null) {
+ if (deinterlace_ != null) {
+ deinterlace_ =
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.newBuilder(
+ deinterlace_)
+ .mergeFrom(value)
+ .buildPartial();
+ } else {
+ deinterlace_ = value;
+ }
+ onChanged();
+ } else {
+ deinterlaceBuilder_.mergeFrom(value);
+ }
+
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ */
+ public Builder clearDeinterlace() {
+ if (deinterlaceBuilder_ == null) {
+ deinterlace_ = null;
+ onChanged();
+ } else {
+ deinterlace_ = null;
+ deinterlaceBuilder_ = null;
+ }
+
+ return this;
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ */
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.Builder
+ getDeinterlaceBuilder() {
+
+ onChanged();
+ return getDeinterlaceFieldBuilder().getBuilder();
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ */
+ public com.google.cloud.video.transcoder.v1.PreprocessingConfig.DeinterlaceOrBuilder
+ getDeinterlaceOrBuilder() {
+ if (deinterlaceBuilder_ != null) {
+ return deinterlaceBuilder_.getMessageOrBuilder();
+ } else {
+ return deinterlace_ == null
+ ? com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace
+ .getDefaultInstance()
+ : deinterlace_;
+ }
+ }
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.DeinterlaceOrBuilder>
+ getDeinterlaceFieldBuilder() {
+ if (deinterlaceBuilder_ == null) {
+ deinterlaceBuilder_ =
+ new com.google.protobuf.SingleFieldBuilderV3<
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace.Builder,
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.DeinterlaceOrBuilder>(
+ getDeinterlace(), getParentForChildren(), isClean());
+ deinterlace_ = null;
+ }
+ return deinterlaceBuilder_;
+ }
+
@java.lang.Override
public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
diff --git a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/PreprocessingConfigOrBuilder.java b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/PreprocessingConfigOrBuilder.java
index 893bb9910918..820bd4b246dd 100644
--- a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/PreprocessingConfigOrBuilder.java
+++ b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/PreprocessingConfigOrBuilder.java
@@ -232,4 +232,40 @@ public interface PreprocessingConfigOrBuilder
* .google.cloud.video.transcoder.v1.PreprocessingConfig.Pad pad = 6;
*/
com.google.cloud.video.transcoder.v1.PreprocessingConfig.PadOrBuilder getPadOrBuilder();
+
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ * @return Whether the deinterlace field is set.
+ */
+ boolean hasDeinterlace();
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ *
+ * @return The deinterlace.
+ */
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace getDeinterlace();
+ /**
+ *
+ *
+ *
+ * Specify the video deinterlace configuration.
+ *
+ *
+ * .google.cloud.video.transcoder.v1.PreprocessingConfig.Deinterlace deinterlace = 7;
+ */
+ com.google.cloud.video.transcoder.v1.PreprocessingConfig.DeinterlaceOrBuilder
+ getDeinterlaceOrBuilder();
}
diff --git a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/ResourcesProto.java b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/ResourcesProto.java
index aaea233fdd8a..9ed3ac299103 100644
--- a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/ResourcesProto.java
+++ b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/ResourcesProto.java
@@ -139,6 +139,18 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r
internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Pad_descriptor;
static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Pad_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_descriptor;
+ static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_fieldAccessorTable;
static final com.google.protobuf.Descriptors.Descriptor
internal_static_google_cloud_video_transcoder_v1_VideoStream_descriptor;
static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
@@ -299,7 +311,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "ideo.transcoder.v1.Overlay.AnimationEndH"
+ "\000B\020\n\016animation_type\"@\n\010FadeType\022\031\n\025FADE_"
+ "TYPE_UNSPECIFIED\020\000\022\013\n\007FADE_IN\020\001\022\014\n\010FADE_"
- + "OUT\020\002\"\364\006\n\023PreprocessingConfig\022J\n\005color\030\001"
+ + "OUT\020\002\"\363\n\n\023PreprocessingConfig\022J\n\005color\030\001"
+ " \001(\0132;.google.cloud.video.transcoder.v1."
+ "PreprocessingConfig.Color\022N\n\007denoise\030\002 \001"
+ "(\0132=.google.cloud.video.transcoder.v1.Pr"
@@ -311,76 +323,89 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "ogle.cloud.video.transcoder.v1.Preproces"
+ "singConfig.Crop\022F\n\003pad\030\006 \001(\01329.google.cl"
+ "oud.video.transcoder.v1.PreprocessingCon"
- + "fig.Pad\032A\n\005Color\022\022\n\nsaturation\030\001 \001(\001\022\020\n\010"
- + "contrast\030\002 \001(\001\022\022\n\nbrightness\030\003 \001(\001\032)\n\007De"
- + "noise\022\020\n\010strength\030\001 \001(\001\022\014\n\004tune\030\002 \001(\t\032,\n"
- + "\007Deblock\022\020\n\010strength\030\001 \001(\001\022\017\n\007enabled\030\002 "
- + "\001(\010\032<\n\005Audio\022\014\n\004lufs\030\001 \001(\001\022\022\n\nhigh_boost"
- + "\030\002 \001(\010\022\021\n\tlow_boost\030\003 \001(\010\032\\\n\004Crop\022\022\n\ntop"
- + "_pixels\030\001 \001(\005\022\025\n\rbottom_pixels\030\002 \001(\005\022\023\n\013"
- + "left_pixels\030\003 \001(\005\022\024\n\014right_pixels\030\004 \001(\005\032"
- + "[\n\003Pad\022\022\n\ntop_pixels\030\001 \001(\005\022\025\n\rbottom_pix"
- + "els\030\002 \001(\005\022\023\n\013left_pixels\030\003 \001(\005\022\024\n\014right_"
- + "pixels\030\004 \001(\005\"\225\014\n\013VideoStream\022O\n\004h264\030\001 \001"
- + "(\0132?.google.cloud.video.transcoder.v1.Vi"
- + "deoStream.H264CodecSettingsH\000\022O\n\004h265\030\002 "
- + "\001(\0132?.google.cloud.video.transcoder.v1.V"
- + "ideoStream.H265CodecSettingsH\000\022M\n\003vp9\030\003 "
- + "\001(\0132>.google.cloud.video.transcoder.v1.V"
- + "ideoStream.Vp9CodecSettingsH\000\032\371\003\n\021H264Co"
- + "decSettings\022\024\n\014width_pixels\030\001 \001(\005\022\025\n\rhei"
- + "ght_pixels\030\002 \001(\005\022\027\n\nframe_rate\030\003 \001(\001B\003\340A"
- + "\002\022\030\n\013bitrate_bps\030\004 \001(\005B\003\340A\002\022\024\n\014pixel_for"
- + "mat\030\005 \001(\t\022\031\n\021rate_control_mode\030\006 \001(\t\022\021\n\t"
- + "crf_level\030\007 \001(\005\022\026\n\016allow_open_gop\030\010 \001(\010\022"
- + "\031\n\017gop_frame_count\030\t \001(\005H\000\0221\n\014gop_durati"
- + "on\030\n \001(\0132\031.google.protobuf.DurationH\000\022\027\n"
- + "\017enable_two_pass\030\013 \001(\010\022\025\n\rvbv_size_bits\030"
- + "\014 \001(\005\022\031\n\021vbv_fullness_bits\030\r \001(\005\022\025\n\rentr"
- + "opy_coder\030\016 \001(\t\022\021\n\tb_pyramid\030\017 \001(\010\022\025\n\rb_"
- + "frame_count\030\020 \001(\005\022\023\n\013aq_strength\030\021 \001(\001\022\017"
- + "\n\007profile\030\022 \001(\t\022\014\n\004tune\030\023 \001(\t\022\016\n\006preset\030"
- + "\024 \001(\tB\n\n\010gop_mode\032\342\003\n\021H265CodecSettings\022"
- + "\024\n\014width_pixels\030\001 \001(\005\022\025\n\rheight_pixels\030\002"
- + " \001(\005\022\027\n\nframe_rate\030\003 \001(\001B\003\340A\002\022\030\n\013bitrate"
- + "_bps\030\004 \001(\005B\003\340A\002\022\024\n\014pixel_format\030\005 \001(\t\022\031\n"
- + "\021rate_control_mode\030\006 \001(\t\022\021\n\tcrf_level\030\007 "
- + "\001(\005\022\026\n\016allow_open_gop\030\010 \001(\010\022\031\n\017gop_frame"
- + "_count\030\t \001(\005H\000\0221\n\014gop_duration\030\n \001(\0132\031.g"
- + "oogle.protobuf.DurationH\000\022\027\n\017enable_two_"
- + "pass\030\013 \001(\010\022\025\n\rvbv_size_bits\030\014 \001(\005\022\031\n\021vbv"
- + "_fullness_bits\030\r \001(\005\022\021\n\tb_pyramid\030\016 \001(\010\022"
- + "\025\n\rb_frame_count\030\017 \001(\005\022\023\n\013aq_strength\030\020 "
- + "\001(\001\022\017\n\007profile\030\021 \001(\t\022\014\n\004tune\030\022 \001(\t\022\016\n\006pr"
- + "eset\030\023 \001(\tB\n\n\010gop_mode\032\241\002\n\020Vp9CodecSetti"
- + "ngs\022\024\n\014width_pixels\030\001 \001(\005\022\025\n\rheight_pixe"
- + "ls\030\002 \001(\005\022\027\n\nframe_rate\030\003 \001(\001B\003\340A\002\022\030\n\013bit"
- + "rate_bps\030\004 \001(\005B\003\340A\002\022\024\n\014pixel_format\030\005 \001("
- + "\t\022\031\n\021rate_control_mode\030\006 \001(\t\022\021\n\tcrf_leve"
- + "l\030\007 \001(\005\022\031\n\017gop_frame_count\030\010 \001(\005H\000\0221\n\014go"
- + "p_duration\030\t \001(\0132\031.google.protobuf.Durat"
- + "ionH\000\022\017\n\007profile\030\n \001(\tB\n\n\010gop_modeB\020\n\016co"
- + "dec_settings\"\361\002\n\013AudioStream\022\r\n\005codec\030\001 "
- + "\001(\t\022\030\n\013bitrate_bps\030\002 \001(\005B\003\340A\002\022\025\n\rchannel"
- + "_count\030\003 \001(\005\022\026\n\016channel_layout\030\004 \003(\t\022K\n\007"
- + "mapping\030\005 \003(\0132:.google.cloud.video.trans"
- + "coder.v1.AudioStream.AudioMapping\022\031\n\021sam"
- + "ple_rate_hertz\030\006 \001(\005\032\241\001\n\014AudioMapping\022\025\n"
- + "\010atom_key\030\001 \001(\tB\003\340A\002\022\026\n\tinput_key\030\002 \001(\tB"
- + "\003\340A\002\022\030\n\013input_track\030\003 \001(\005B\003\340A\002\022\032\n\rinput_"
- + "channel\030\004 \001(\005B\003\340A\002\022\033\n\016output_channel\030\005 \001"
- + "(\005B\003\340A\002\022\017\n\007gain_db\030\006 \001(\001\"\276\001\n\nTextStream\022"
- + "\r\n\005codec\030\001 \001(\t\022I\n\007mapping\030\003 \003(\01328.google"
- + ".cloud.video.transcoder.v1.TextStream.Te"
- + "xtMapping\032V\n\013TextMapping\022\025\n\010atom_key\030\001 \001"
- + "(\tB\003\340A\002\022\026\n\tinput_key\030\002 \001(\tB\003\340A\002\022\030\n\013input"
- + "_track\030\003 \001(\005B\003\340A\002\"h\n\017SegmentSettings\0223\n\020"
- + "segment_duration\030\001 \001(\0132\031.google.protobuf"
- + ".Duration\022 \n\023individual_segments\030\003 \001(\010B\003"
- + "\340A\002B\204\001\n$com.google.cloud.video.transcode"
- + "r.v1B\016ResourcesProtoP\001ZJgoogle.golang.or"
- + "g/genproto/googleapis/cloud/video/transc"
- + "oder/v1;transcoderb\006proto3"
+ + "fig.Pad\022V\n\013deinterlace\030\007 \001(\0132A.google.cl"
+ + "oud.video.transcoder.v1.PreprocessingCon"
+ + "fig.Deinterlace\032A\n\005Color\022\022\n\nsaturation\030\001"
+ + " \001(\001\022\020\n\010contrast\030\002 \001(\001\022\022\n\nbrightness\030\003 \001"
+ + "(\001\032)\n\007Denoise\022\020\n\010strength\030\001 \001(\001\022\014\n\004tune\030"
+ + "\002 \001(\t\032,\n\007Deblock\022\020\n\010strength\030\001 \001(\001\022\017\n\007en"
+ + "abled\030\002 \001(\010\032<\n\005Audio\022\014\n\004lufs\030\001 \001(\001\022\022\n\nhi"
+ + "gh_boost\030\002 \001(\010\022\021\n\tlow_boost\030\003 \001(\010\032\\\n\004Cro"
+ + "p\022\022\n\ntop_pixels\030\001 \001(\005\022\025\n\rbottom_pixels\030\002"
+ + " \001(\005\022\023\n\013left_pixels\030\003 \001(\005\022\024\n\014right_pixel"
+ + "s\030\004 \001(\005\032[\n\003Pad\022\022\n\ntop_pixels\030\001 \001(\005\022\025\n\rbo"
+ + "ttom_pixels\030\002 \001(\005\022\023\n\013left_pixels\030\003 \001(\005\022\024"
+ + "\n\014right_pixels\030\004 \001(\005\032\244\003\n\013Deinterlace\022^\n\005"
+ + "yadif\030\001 \001(\0132M.google.cloud.video.transco"
+ + "der.v1.PreprocessingConfig.Deinterlace.Y"
+ + "adifConfigH\000\022^\n\005bwdif\030\002 \001(\0132M.google.clo"
+ + "ud.video.transcoder.v1.PreprocessingConf"
+ + "ig.Deinterlace.BwdifConfigH\000\032p\n\013YadifCon"
+ + "fig\022\014\n\004mode\030\001 \001(\t\022#\n\033disable_spatial_int"
+ + "erlacing\030\002 \001(\010\022\016\n\006parity\030\003 \001(\t\022\036\n\026deinte"
+ + "rlace_all_frames\030\004 \001(\010\032K\n\013BwdifConfig\022\014\n"
+ + "\004mode\030\001 \001(\t\022\016\n\006parity\030\002 \001(\t\022\036\n\026deinterla"
+ + "ce_all_frames\030\003 \001(\010B\026\n\024deinterlacing_fil"
+ + "ter\"\225\014\n\013VideoStream\022O\n\004h264\030\001 \001(\0132?.goog"
+ + "le.cloud.video.transcoder.v1.VideoStream"
+ + ".H264CodecSettingsH\000\022O\n\004h265\030\002 \001(\0132?.goo"
+ + "gle.cloud.video.transcoder.v1.VideoStrea"
+ + "m.H265CodecSettingsH\000\022M\n\003vp9\030\003 \001(\0132>.goo"
+ + "gle.cloud.video.transcoder.v1.VideoStrea"
+ + "m.Vp9CodecSettingsH\000\032\371\003\n\021H264CodecSettin"
+ + "gs\022\024\n\014width_pixels\030\001 \001(\005\022\025\n\rheight_pixel"
+ + "s\030\002 \001(\005\022\027\n\nframe_rate\030\003 \001(\001B\003\340A\002\022\030\n\013bitr"
+ + "ate_bps\030\004 \001(\005B\003\340A\002\022\024\n\014pixel_format\030\005 \001(\t"
+ + "\022\031\n\021rate_control_mode\030\006 \001(\t\022\021\n\tcrf_level"
+ + "\030\007 \001(\005\022\026\n\016allow_open_gop\030\010 \001(\010\022\031\n\017gop_fr"
+ + "ame_count\030\t \001(\005H\000\0221\n\014gop_duration\030\n \001(\0132"
+ + "\031.google.protobuf.DurationH\000\022\027\n\017enable_t"
+ + "wo_pass\030\013 \001(\010\022\025\n\rvbv_size_bits\030\014 \001(\005\022\031\n\021"
+ + "vbv_fullness_bits\030\r \001(\005\022\025\n\rentropy_coder"
+ + "\030\016 \001(\t\022\021\n\tb_pyramid\030\017 \001(\010\022\025\n\rb_frame_cou"
+ + "nt\030\020 \001(\005\022\023\n\013aq_strength\030\021 \001(\001\022\017\n\007profile"
+ + "\030\022 \001(\t\022\014\n\004tune\030\023 \001(\t\022\016\n\006preset\030\024 \001(\tB\n\n\010"
+ + "gop_mode\032\342\003\n\021H265CodecSettings\022\024\n\014width_"
+ + "pixels\030\001 \001(\005\022\025\n\rheight_pixels\030\002 \001(\005\022\027\n\nf"
+ + "rame_rate\030\003 \001(\001B\003\340A\002\022\030\n\013bitrate_bps\030\004 \001("
+ + "\005B\003\340A\002\022\024\n\014pixel_format\030\005 \001(\t\022\031\n\021rate_con"
+ + "trol_mode\030\006 \001(\t\022\021\n\tcrf_level\030\007 \001(\005\022\026\n\016al"
+ + "low_open_gop\030\010 \001(\010\022\031\n\017gop_frame_count\030\t "
+ + "\001(\005H\000\0221\n\014gop_duration\030\n \001(\0132\031.google.pro"
+ + "tobuf.DurationH\000\022\027\n\017enable_two_pass\030\013 \001("
+ + "\010\022\025\n\rvbv_size_bits\030\014 \001(\005\022\031\n\021vbv_fullness"
+ + "_bits\030\r \001(\005\022\021\n\tb_pyramid\030\016 \001(\010\022\025\n\rb_fram"
+ + "e_count\030\017 \001(\005\022\023\n\013aq_strength\030\020 \001(\001\022\017\n\007pr"
+ + "ofile\030\021 \001(\t\022\014\n\004tune\030\022 \001(\t\022\016\n\006preset\030\023 \001("
+ + "\tB\n\n\010gop_mode\032\241\002\n\020Vp9CodecSettings\022\024\n\014wi"
+ + "dth_pixels\030\001 \001(\005\022\025\n\rheight_pixels\030\002 \001(\005\022"
+ + "\027\n\nframe_rate\030\003 \001(\001B\003\340A\002\022\030\n\013bitrate_bps\030"
+ + "\004 \001(\005B\003\340A\002\022\024\n\014pixel_format\030\005 \001(\t\022\031\n\021rate"
+ + "_control_mode\030\006 \001(\t\022\021\n\tcrf_level\030\007 \001(\005\022\031"
+ + "\n\017gop_frame_count\030\010 \001(\005H\000\0221\n\014gop_duratio"
+ + "n\030\t \001(\0132\031.google.protobuf.DurationH\000\022\017\n\007"
+ + "profile\030\n \001(\tB\n\n\010gop_modeB\020\n\016codec_setti"
+ + "ngs\"\361\002\n\013AudioStream\022\r\n\005codec\030\001 \001(\t\022\030\n\013bi"
+ + "trate_bps\030\002 \001(\005B\003\340A\002\022\025\n\rchannel_count\030\003 "
+ + "\001(\005\022\026\n\016channel_layout\030\004 \003(\t\022K\n\007mapping\030\005"
+ + " \003(\0132:.google.cloud.video.transcoder.v1."
+ + "AudioStream.AudioMapping\022\031\n\021sample_rate_"
+ + "hertz\030\006 \001(\005\032\241\001\n\014AudioMapping\022\025\n\010atom_key"
+ + "\030\001 \001(\tB\003\340A\002\022\026\n\tinput_key\030\002 \001(\tB\003\340A\002\022\030\n\013i"
+ + "nput_track\030\003 \001(\005B\003\340A\002\022\032\n\rinput_channel\030\004"
+ + " \001(\005B\003\340A\002\022\033\n\016output_channel\030\005 \001(\005B\003\340A\002\022\017"
+ + "\n\007gain_db\030\006 \001(\001\"\276\001\n\nTextStream\022\r\n\005codec\030"
+ + "\001 \001(\t\022I\n\007mapping\030\003 \003(\01328.google.cloud.vi"
+ + "deo.transcoder.v1.TextStream.TextMapping"
+ + "\032V\n\013TextMapping\022\025\n\010atom_key\030\001 \001(\tB\003\340A\002\022\026"
+ + "\n\tinput_key\030\002 \001(\tB\003\340A\002\022\030\n\013input_track\030\003 "
+ + "\001(\005B\003\340A\002\"h\n\017SegmentSettings\0223\n\020segment_d"
+ + "uration\030\001 \001(\0132\031.google.protobuf.Duration"
+ + "\022 \n\023individual_segments\030\003 \001(\010B\003\340A\002B\204\001\n$c"
+ + "om.google.cloud.video.transcoder.v1B\016Res"
+ + "ourcesProtoP\001ZJgoogle.golang.org/genprot"
+ + "o/googleapis/cloud/video/transcoder/v1;t"
+ + "ranscoderb\006proto3"
};
descriptor =
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
@@ -600,7 +625,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_descriptor,
new java.lang.String[] {
- "Color", "Denoise", "Deblock", "Audio", "Crop", "Pad",
+ "Color", "Denoise", "Deblock", "Audio", "Crop", "Pad", "Deinterlace",
});
internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Color_descriptor =
internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_descriptor
@@ -662,6 +687,36 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
new java.lang.String[] {
"TopPixels", "BottomPixels", "LeftPixels", "RightPixels",
});
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_descriptor =
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_descriptor
+ .getNestedTypes()
+ .get(6);
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_descriptor,
+ new java.lang.String[] {
+ "Yadif", "Bwdif", "DeinterlacingFilter",
+ });
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_descriptor =
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_descriptor
+ .getNestedTypes()
+ .get(0);
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_YadifConfig_descriptor,
+ new java.lang.String[] {
+ "Mode", "DisableSpatialInterlacing", "Parity", "DeinterlaceAllFrames",
+ });
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_descriptor =
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_descriptor
+ .getNestedTypes()
+ .get(1);
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
+ internal_static_google_cloud_video_transcoder_v1_PreprocessingConfig_Deinterlace_BwdifConfig_descriptor,
+ new java.lang.String[] {
+ "Mode", "Parity", "DeinterlaceAllFrames",
+ });
internal_static_google_cloud_video_transcoder_v1_VideoStream_descriptor =
getDescriptor().getMessageTypes().get(14);
internal_static_google_cloud_video_transcoder_v1_VideoStream_fieldAccessorTable =
diff --git a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/SpriteSheet.java b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/SpriteSheet.java
index 7b837b4e7c48..92ee4e34f3cb 100644
--- a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/SpriteSheet.java
+++ b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/SpriteSheet.java
@@ -231,6 +231,10 @@ public com.google.protobuf.ByteString getFilePrefixBytes() {
* source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or
* the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_width_pixels = 3 [(.google.api.field_behavior) = REQUIRED];
@@ -252,6 +256,10 @@ public int getSpriteWidthPixels() {
* source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or
* the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_height_pixels = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -1384,6 +1392,10 @@ public Builder setFilePrefixBytes(com.google.protobuf.ByteString value) {
* source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or
* the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_width_pixels = 3 [(.google.api.field_behavior) = REQUIRED];
@@ -1402,6 +1414,10 @@ public int getSpriteWidthPixels() {
* source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or
* the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_width_pixels = 3 [(.google.api.field_behavior) = REQUIRED];
@@ -1423,6 +1439,10 @@ public Builder setSpriteWidthPixels(int value) {
* source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or
* the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_width_pixels = 3 [(.google.api.field_behavior) = REQUIRED];
@@ -1445,6 +1465,10 @@ public Builder clearSpriteWidthPixels() {
* source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or
* the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_height_pixels = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -1463,6 +1487,10 @@ public int getSpriteHeightPixels() {
* source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or
* the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_height_pixels = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -1484,6 +1512,10 @@ public Builder setSpriteHeightPixels(int value) {
* source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or
* the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_height_pixels = 4 [(.google.api.field_behavior) = REQUIRED];
diff --git a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/SpriteSheetOrBuilder.java b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/SpriteSheetOrBuilder.java
index ddfb14b0b932..3332860d030b 100644
--- a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/SpriteSheetOrBuilder.java
+++ b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/SpriteSheetOrBuilder.java
@@ -89,6 +89,10 @@ public interface SpriteSheetOrBuilder
* source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or
* the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_width_pixels = 3 [(.google.api.field_behavior) = REQUIRED];
@@ -105,6 +109,10 @@ public interface SpriteSheetOrBuilder
* source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or
* the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will
* automatically calculate the missing field).
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 sprite_height_pixels = 4 [(.google.api.field_behavior) = REQUIRED];
diff --git a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/VideoStream.java b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/VideoStream.java
index b0cde500bdaa..d4ac4ad3b9c2 100644
--- a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/VideoStream.java
+++ b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/java/com/google/cloud/video/transcoder/v1/VideoStream.java
@@ -77,6 +77,10 @@ public interface H264CodecSettingsOrBuilder
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -92,6 +96,10 @@ public interface H264CodecSettingsOrBuilder
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -653,6 +661,10 @@ public GopModeCase getGopModeCase() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -673,6 +685,10 @@ public int getWidthPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -2161,6 +2177,10 @@ public Builder clearGopMode() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -2178,6 +2198,10 @@ public int getWidthPixels() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -2198,6 +2222,10 @@ public Builder setWidthPixels(int value) {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -2219,6 +2247,10 @@ public Builder clearWidthPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -2236,6 +2268,10 @@ public int getHeightPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -2256,6 +2292,10 @@ public Builder setHeightPixels(int value) {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -4042,6 +4082,10 @@ public interface H265CodecSettingsOrBuilder
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -4057,6 +4101,10 @@ public interface H265CodecSettingsOrBuilder
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -4616,6 +4664,10 @@ public GopModeCase getGopModeCase() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -4636,6 +4688,10 @@ public int getWidthPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -6077,6 +6133,10 @@ public Builder clearGopMode() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -6094,6 +6154,10 @@ public int getWidthPixels() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -6114,6 +6178,10 @@ public Builder setWidthPixels(int value) {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -6135,6 +6203,10 @@ public Builder clearWidthPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -6152,6 +6224,10 @@ public int getHeightPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -6172,6 +6248,10 @@ public Builder setHeightPixels(int value) {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -7912,6 +7992,10 @@ public interface Vp9CodecSettingsOrBuilder
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -7927,6 +8011,10 @@ public interface Vp9CodecSettingsOrBuilder
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -8286,6 +8374,10 @@ public GopModeCase getGopModeCase() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -8306,6 +8398,10 @@ public int getWidthPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -9271,6 +9367,10 @@ public Builder clearGopMode() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -9288,6 +9388,10 @@ public int getWidthPixels() {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -9308,6 +9412,10 @@ public Builder setWidthPixels(int value) {
* The width of the video in pixels. Must be an even integer.
* When not specified, the width is adjusted to match the specified height
* and input aspect ratio. If both are omitted, the input width is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the width, in pixels, per the horizontal ASR. The API calculates
+ * the height per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 width_pixels = 1;
@@ -9329,6 +9437,10 @@ public Builder clearWidthPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -9346,6 +9458,10 @@ public int getHeightPixels() {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
@@ -9366,6 +9482,10 @@ public Builder setHeightPixels(int value) {
* The height of the video in pixels. Must be an even integer.
* When not specified, the height is adjusted to match the specified width
* and input aspect ratio. If both are omitted, the input height is used.
+ * For portrait videos that contain horizontal ASR and rotation metadata,
+ * provide the height, in pixels, per the horizontal ASR. The API calculates
+ * the width per the horizontal ASR. The API detects any rotation metadata
+ * and swaps the requested height and width for the output.
*
*
* int32 height_pixels = 2;
diff --git a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/proto/google/cloud/video/transcoder/v1/resources.proto b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/proto/google/cloud/video/transcoder/v1/resources.proto
index ce3824ba4ffa..08508ec87631 100644
--- a/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/proto/google/cloud/video/transcoder/v1/resources.proto
+++ b/java-video-transcoder/proto-google-cloud-video-transcoder-v1/src/main/proto/google/cloud/video/transcoder/v1/resources.proto
@@ -335,12 +335,22 @@ message SpriteSheet {
// source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or
// the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will
// automatically calculate the missing field).
+ //
+ // For portrait videos that contain horizontal ASR and rotation metadata,
+ // provide the width, in pixels, per the horizontal ASR. The API calculates
+ // the height per the horizontal ASR. The API detects any rotation metadata
+ // and swaps the requested height and width for the output.
int32 sprite_width_pixels = 3 [(google.api.field_behavior) = REQUIRED];
// Required. The height of sprite in pixels. Must be an even integer. To preserve the
// source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or
// the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will
// automatically calculate the missing field).
+ //
+ // For portrait videos that contain horizontal ASR and rotation metadata,
+ // provide the height, in pixels, per the horizontal ASR. The API calculates
+ // the width per the horizontal ASR. The API detects any rotation metadata
+ // and swaps the requested height and width for the output.
int32 sprite_height_pixels = 4 [(google.api.field_behavior) = REQUIRED];
// The maximum number of sprites per row in a sprite sheet. The default is 0,
@@ -594,6 +604,70 @@ message PreprocessingConfig {
int32 right_pixels = 4;
}
+ // Deinterlace configuration for input video.
+ message Deinterlace {
+ // Yet Another Deinterlacing Filter Configuration.
+ message YadifConfig {
+ // Specifies the deinterlacing mode to adopt.
+ // The default is `send_frame`.
+ // Supported values:
+ //
+ // - `send_frame`: Output one frame for each frame
+ // - `send_field`: Output one frame for each field
+ string mode = 1;
+
+ // Disable spacial interlacing.
+ // The default is `false`.
+ bool disable_spatial_interlacing = 2;
+
+ // The picture field parity assumed for the input interlaced video.
+ // The default is `auto`.
+ // Supported values:
+ //
+ // - `tff`: Assume the top field is first
+ // - `bff`: Assume the bottom field is first
+ // - `auto`: Enable automatic detection of field parity
+ string parity = 3;
+
+ // Deinterlace all frames rather than just the frames identified as
+ // interlaced. The default is `false`.
+ bool deinterlace_all_frames = 4;
+ }
+
+ // Bob Weaver Deinterlacing Filter Configuration.
+ message BwdifConfig {
+ // Specifies the deinterlacing mode to adopt.
+ // The default is `send_frame`.
+ // Supported values:
+ //
+ // - `send_frame`: Output one frame for each frame
+ // - `send_field`: Output one frame for each field
+ string mode = 1;
+
+ // The picture field parity assumed for the input interlaced video.
+ // The default is `auto`.
+ // Supported values:
+ //
+ // - `tff`: Assume the top field is first
+ // - `bff`: Assume the bottom field is first
+ // - `auto`: Enable automatic detection of field parity
+ string parity = 2;
+
+ // Deinterlace all frames rather than just the frames identified as
+ // interlaced. The default is `false`.
+ bool deinterlace_all_frames = 3;
+ }
+
+ // Specify the video deinterlacing filter. The default is `yadif`.
+ oneof deinterlacing_filter {
+ // Specifies the Yet Another Deinterlacing Filter Configuration.
+ YadifConfig yadif = 1;
+
+ // Specifies the Bob Weaver Deinterlacing Filter Configuration.
+ BwdifConfig bwdif = 2;
+ }
+ }
+
// Color preprocessing configuration.
Color color = 1;
@@ -611,6 +685,9 @@ message PreprocessingConfig {
// Specify the video pad filter configuration.
Pad pad = 6;
+
+ // Specify the video deinterlace configuration.
+ Deinterlace deinterlace = 7;
}
// Video stream resource.
@@ -620,11 +697,21 @@ message VideoStream {
// The width of the video in pixels. Must be an even integer.
// When not specified, the width is adjusted to match the specified height
// and input aspect ratio. If both are omitted, the input width is used.
+ //
+ // For portrait videos that contain horizontal ASR and rotation metadata,
+ // provide the width, in pixels, per the horizontal ASR. The API calculates
+ // the height per the horizontal ASR. The API detects any rotation metadata
+ // and swaps the requested height and width for the output.
int32 width_pixels = 1;
// The height of the video in pixels. Must be an even integer.
// When not specified, the height is adjusted to match the specified width
// and input aspect ratio. If both are omitted, the input height is used.
+ //
+ // For portrait videos that contain horizontal ASR and rotation metadata,
+ // provide the height, in pixels, per the horizontal ASR. The API calculates
+ // the width per the horizontal ASR. The API detects any rotation metadata
+ // and swaps the requested height and width for the output.
int32 height_pixels = 2;
// Required. The target video frame rate in frames per second (FPS). Must be less than
@@ -755,11 +842,21 @@ message VideoStream {
// The width of the video in pixels. Must be an even integer.
// When not specified, the width is adjusted to match the specified height
// and input aspect ratio. If both are omitted, the input width is used.
+ //
+ // For portrait videos that contain horizontal ASR and rotation metadata,
+ // provide the width, in pixels, per the horizontal ASR. The API calculates
+ // the height per the horizontal ASR. The API detects any rotation metadata
+ // and swaps the requested height and width for the output.
int32 width_pixels = 1;
// The height of the video in pixels. Must be an even integer.
// When not specified, the height is adjusted to match the specified width
// and input aspect ratio. If both are omitted, the input height is used.
+ //
+ // For portrait videos that contain horizontal ASR and rotation metadata,
+ // provide the height, in pixels, per the horizontal ASR. The API calculates
+ // the width per the horizontal ASR. The API detects any rotation metadata
+ // and swaps the requested height and width for the output.
int32 height_pixels = 2;
// Required. The target video frame rate in frames per second (FPS). Must be less than
@@ -897,11 +994,21 @@ message VideoStream {
// The width of the video in pixels. Must be an even integer.
// When not specified, the width is adjusted to match the specified height
// and input aspect ratio. If both are omitted, the input width is used.
+ //
+ // For portrait videos that contain horizontal ASR and rotation metadata,
+ // provide the width, in pixels, per the horizontal ASR. The API calculates
+ // the height per the horizontal ASR. The API detects any rotation metadata
+ // and swaps the requested height and width for the output.
int32 width_pixels = 1;
// The height of the video in pixels. Must be an even integer.
// When not specified, the height is adjusted to match the specified width
// and input aspect ratio. If both are omitted, the input height is used.
+ //
+ // For portrait videos that contain horizontal ASR and rotation metadata,
+ // provide the height, in pixels, per the horizontal ASR. The API calculates
+ // the width per the horizontal ASR. The API detects any rotation metadata
+ // and swaps the requested height and width for the output.
int32 height_pixels = 2;
// Required. The target video frame rate in frames per second (FPS). Must be less than