Class VideoStream.H264CodecSettings
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
com.google.cloud.video.livestream.v1.VideoStream.H264CodecSettings
- All Implemented Interfaces:
VideoStream.H264CodecSettingsOrBuilder,com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,Serializable
- Enclosing class:
- VideoStream
public static final class VideoStream.H264CodecSettings
extends com.google.protobuf.GeneratedMessage
implements VideoStream.H264CodecSettingsOrBuilder
H264 codec settings.Protobuf type
google.cloud.video.livestream.v1.VideoStream.H264CodecSettings- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classH264 codec settings.static enumNested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage
com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT, BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message, T extends Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage
com.google.protobuf.AbstractMessage.BuilderParentNested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intFields inherited from class com.google.protobuf.GeneratedMessage
alwaysUseFieldBuilders, loggedPre22TypeNames, unknownFieldsFields inherited from class com.google.protobuf.AbstractMessage
memoizedSizeFields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode -
Method Summary
Modifier and TypeMethodDescriptionbooleanbooleanSpecifies whether an open Group of Pictures (GOP) structure should be allowed or not.doubleSpecify the intensity of the adaptive quantizer (AQ).intThe number of consecutive B-frames.intRequired.booleanAllow B-pyramid for reference frame selection.static final com.google.protobuf.Descriptors.DescriptorThe entropy coder to use.com.google.protobuf.ByteStringThe entropy coder to use.doubleRequired.com.google.protobuf.DurationSelect the GOP size based on the specified duration.com.google.protobuf.DurationOrBuilderSelect the GOP size based on the specified duration.intSelect the GOP size based on the specified frame count.intRequired.com.google.protobuf.Parser<VideoStream.H264CodecSettings>Enforces the specified codec profile.com.google.protobuf.ByteStringEnforces the specified codec profile.intgetTune()Enforces the specified codec tune.com.google.protobuf.ByteStringEnforces the specified codec tune.intInitial fullness of the Video Buffering Verifier (VBV) buffer in bits.intSize of the Video Buffering Verifier (VBV) buffer in bits.intRequired.booleanSelect the GOP size based on the specified duration.booleanSelect the GOP size based on the specified frame count.inthashCode()protected com.google.protobuf.GeneratedMessage.FieldAccessorTablefinal booleannewBuilder(VideoStream.H264CodecSettings prototype) protected VideoStream.H264CodecSettings.BuildernewBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent) parseDelimitedFrom(InputStream input) parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(byte[] data) parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(com.google.protobuf.ByteString data) parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(com.google.protobuf.CodedInputStream input) parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(InputStream input) parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(ByteBuffer data) parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<VideoStream.H264CodecSettings>parser()voidwriteTo(com.google.protobuf.CodedOutputStream output) Methods inherited from class com.google.protobuf.GeneratedMessage
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTagMethods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashFields, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
WIDTH_PIXELS_FIELD_NUMBER
public static final int WIDTH_PIXELS_FIELD_NUMBER- See Also:
-
HEIGHT_PIXELS_FIELD_NUMBER
public static final int HEIGHT_PIXELS_FIELD_NUMBER- See Also:
-
FRAME_RATE_FIELD_NUMBER
public static final int FRAME_RATE_FIELD_NUMBER- See Also:
-
BITRATE_BPS_FIELD_NUMBER
public static final int BITRATE_BPS_FIELD_NUMBER- See Also:
-
ALLOW_OPEN_GOP_FIELD_NUMBER
public static final int ALLOW_OPEN_GOP_FIELD_NUMBER- See Also:
-
GOP_FRAME_COUNT_FIELD_NUMBER
public static final int GOP_FRAME_COUNT_FIELD_NUMBER- See Also:
-
GOP_DURATION_FIELD_NUMBER
public static final int GOP_DURATION_FIELD_NUMBER- See Also:
-
VBV_SIZE_BITS_FIELD_NUMBER
public static final int VBV_SIZE_BITS_FIELD_NUMBER- See Also:
-
VBV_FULLNESS_BITS_FIELD_NUMBER
public static final int VBV_FULLNESS_BITS_FIELD_NUMBER- See Also:
-
ENTROPY_CODER_FIELD_NUMBER
public static final int ENTROPY_CODER_FIELD_NUMBER- See Also:
-
B_PYRAMID_FIELD_NUMBER
public static final int B_PYRAMID_FIELD_NUMBER- See Also:
-
B_FRAME_COUNT_FIELD_NUMBER
public static final int B_FRAME_COUNT_FIELD_NUMBER- See Also:
-
AQ_STRENGTH_FIELD_NUMBER
public static final int AQ_STRENGTH_FIELD_NUMBER- See Also:
-
PROFILE_FIELD_NUMBER
public static final int PROFILE_FIELD_NUMBER- See Also:
-
TUNE_FIELD_NUMBER
public static final int TUNE_FIELD_NUMBER- See Also:
-
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessage
-
getGopModeCase
- Specified by:
getGopModeCasein interfaceVideoStream.H264CodecSettingsOrBuilder
-
getWidthPixels
public int getWidthPixels()Required. The width of the video in pixels. Must be an even integer. Valid range is [320, 4096].
int32 width_pixels = 1;- Specified by:
getWidthPixelsin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The widthPixels.
-
getHeightPixels
public int getHeightPixels()Required. The height of the video in pixels. Must be an even integer. Valid range is [180, 2160].
int32 height_pixels = 2;- Specified by:
getHeightPixelsin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The heightPixels.
-
getFrameRate
public double getFrameRate()Required. The target video frame rate in frames per second (FPS). Must be less than or equal to 60. Will default to the input frame rate if larger than the input frame rate. The API will generate an output FPS that is divisible by the input FPS, and smaller or equal to the target FPS. See [Calculating frame rate](https://cloud.google.com/transcoder/docs/concepts/frame-rate) for more information.
double frame_rate = 3 [(.google.api.field_behavior) = REQUIRED];- Specified by:
getFrameRatein interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The frameRate.
-
getBitrateBps
public int getBitrateBps()Required. The video bitrate in bits per second. Minimum value is 10,000. - For SD resolution (< 720p), must be <= 3,000,000 (3 Mbps). - For HD resolution (<= 1080p), must be <= 15,000,000 (15 Mbps). - For UHD resolution (<= 2160p), must be <= 25,000,000 (25 Mbps).
int32 bitrate_bps = 4 [(.google.api.field_behavior) = REQUIRED];- Specified by:
getBitrateBpsin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The bitrateBps.
-
getAllowOpenGop
public boolean getAllowOpenGop()Specifies whether an open Group of Pictures (GOP) structure should be allowed or not. The default is `false`.
bool allow_open_gop = 6;- Specified by:
getAllowOpenGopin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The allowOpenGop.
-
hasGopFrameCount
public boolean hasGopFrameCount()Select the GOP size based on the specified frame count. If GOP frame count is set instead of GOP duration, GOP duration will be calculated by `gopFrameCount`/`frameRate`. The calculated GOP duration must satisfy the limitations on `gopDuration` as well. Valid range is [60, 600].
int32 gop_frame_count = 7;- Specified by:
hasGopFrameCountin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- Whether the gopFrameCount field is set.
-
getGopFrameCount
public int getGopFrameCount()Select the GOP size based on the specified frame count. If GOP frame count is set instead of GOP duration, GOP duration will be calculated by `gopFrameCount`/`frameRate`. The calculated GOP duration must satisfy the limitations on `gopDuration` as well. Valid range is [60, 600].
int32 gop_frame_count = 7;- Specified by:
getGopFrameCountin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The gopFrameCount.
-
hasGopDuration
public boolean hasGopDuration()Select the GOP size based on the specified duration. The default is `2s`. Note that `gopDuration` must be less than or equal to [segment_duration][google.cloud.video.livestream.v1.SegmentSettings.segment_duration], and [segment_duration][google.cloud.video.livestream.v1.SegmentSettings.segment_duration] must be divisible by `gopDuration`. Valid range is [2s, 20s]. All video streams in the same channel must have the same GOP size.
.google.protobuf.Duration gop_duration = 8;- Specified by:
hasGopDurationin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- Whether the gopDuration field is set.
-
getGopDuration
public com.google.protobuf.Duration getGopDuration()Select the GOP size based on the specified duration. The default is `2s`. Note that `gopDuration` must be less than or equal to [segment_duration][google.cloud.video.livestream.v1.SegmentSettings.segment_duration], and [segment_duration][google.cloud.video.livestream.v1.SegmentSettings.segment_duration] must be divisible by `gopDuration`. Valid range is [2s, 20s]. All video streams in the same channel must have the same GOP size.
.google.protobuf.Duration gop_duration = 8;- Specified by:
getGopDurationin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The gopDuration.
-
getGopDurationOrBuilder
public com.google.protobuf.DurationOrBuilder getGopDurationOrBuilder()Select the GOP size based on the specified duration. The default is `2s`. Note that `gopDuration` must be less than or equal to [segment_duration][google.cloud.video.livestream.v1.SegmentSettings.segment_duration], and [segment_duration][google.cloud.video.livestream.v1.SegmentSettings.segment_duration] must be divisible by `gopDuration`. Valid range is [2s, 20s]. All video streams in the same channel must have the same GOP size.
.google.protobuf.Duration gop_duration = 8;- Specified by:
getGopDurationOrBuilderin interfaceVideoStream.H264CodecSettingsOrBuilder
-
getVbvSizeBits
public int getVbvSizeBits()Size of the Video Buffering Verifier (VBV) buffer in bits. Must be greater than zero. The default is equal to [bitrate_bps][google.cloud.video.livestream.v1.VideoStream.H264CodecSettings.bitrate_bps].
int32 vbv_size_bits = 9;- Specified by:
getVbvSizeBitsin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The vbvSizeBits.
-
getVbvFullnessBits
public int getVbvFullnessBits()Initial fullness of the Video Buffering Verifier (VBV) buffer in bits. Must be greater than zero. The default is equal to 90% of [vbv_size_bits][google.cloud.video.livestream.v1.VideoStream.H264CodecSettings.vbv_size_bits].
int32 vbv_fullness_bits = 10;- Specified by:
getVbvFullnessBitsin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The vbvFullnessBits.
-
getEntropyCoder
The entropy coder to use. The default is `cabac`. Supported entropy coders: - `cavlc` - `cabac`
string entropy_coder = 11;- Specified by:
getEntropyCoderin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The entropyCoder.
-
getEntropyCoderBytes
public com.google.protobuf.ByteString getEntropyCoderBytes()The entropy coder to use. The default is `cabac`. Supported entropy coders: - `cavlc` - `cabac`
string entropy_coder = 11;- Specified by:
getEntropyCoderBytesin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The bytes for entropyCoder.
-
getBPyramid
public boolean getBPyramid()Allow B-pyramid for reference frame selection. This may not be supported on all decoders. The default is `false`.
bool b_pyramid = 12;- Specified by:
getBPyramidin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The bPyramid.
-
getBFrameCount
public int getBFrameCount()The number of consecutive B-frames. Must be greater than or equal to zero. Must be less than [gop_frame_count][google.cloud.video.livestream.v1.VideoStream.H264CodecSettings.gop_frame_count] if set. The default is 0.
int32 b_frame_count = 13;- Specified by:
getBFrameCountin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The bFrameCount.
-
getAqStrength
public double getAqStrength()Specify the intensity of the adaptive quantizer (AQ). Must be between 0 and 1, where 0 disables the quantizer and 1 maximizes the quantizer. A higher value equals a lower bitrate but smoother image. The default is 0.
double aq_strength = 14;- Specified by:
getAqStrengthin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The aqStrength.
-
getProfile
Enforces the specified codec profile. The following profiles are supported: * `baseline` * `main` (default) * `high` The available options are [FFmpeg-compatible Profile Options](https://trac.ffmpeg.org/wiki/Encode/H.264#Profile). Note that certain values for this field may cause the transcoder to override other fields you set in the [H264CodecSettings][google.cloud.video.livestream.v1.VideoStream.H264CodecSettings] message.
string profile = 15;- Specified by:
getProfilein interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The profile.
-
getProfileBytes
public com.google.protobuf.ByteString getProfileBytes()Enforces the specified codec profile. The following profiles are supported: * `baseline` * `main` (default) * `high` The available options are [FFmpeg-compatible Profile Options](https://trac.ffmpeg.org/wiki/Encode/H.264#Profile). Note that certain values for this field may cause the transcoder to override other fields you set in the [H264CodecSettings][google.cloud.video.livestream.v1.VideoStream.H264CodecSettings] message.
string profile = 15;- Specified by:
getProfileBytesin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The bytes for profile.
-
getTune
Enforces the specified codec tune. The available options are [FFmpeg-compatible Encode Options](https://trac.ffmpeg.org/wiki/Encode/H.264#Tune) Note that certain values for this field may cause the transcoder to override other fields you set in the [H264CodecSettings][google.cloud.video.livestream.v1.VideoStream.H264CodecSettings] message.
string tune = 16;- Specified by:
getTunein interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The tune.
-
getTuneBytes
public com.google.protobuf.ByteString getTuneBytes()Enforces the specified codec tune. The available options are [FFmpeg-compatible Encode Options](https://trac.ffmpeg.org/wiki/Encode/H.264#Tune) Note that certain values for this field may cause the transcoder to override other fields you set in the [H264CodecSettings][google.cloud.video.livestream.v1.VideoStream.H264CodecSettings] message.
string tune = 16;- Specified by:
getTuneBytesin interfaceVideoStream.H264CodecSettingsOrBuilder- Returns:
- The bytes for tune.
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessage
-
writeTo
- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessage- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessage
-
equals
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
public static VideoStream.H264CodecSettings parseDelimitedFrom(InputStream input) throws IOException - Throws:
IOException
-
parseDelimitedFrom
public static VideoStream.H264CodecSettings parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static VideoStream.H264CodecSettings parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
public static VideoStream.H264CodecSettings.Builder newBuilder(VideoStream.H264CodecSettings prototype) -
toBuilder
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected VideoStream.H264CodecSettings.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent) - Overrides:
newBuilderForTypein classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-