Reference documentation and code samples for the Google Cloud Video Live Stream V1 Client class H264CodecSettings.
H264 codec settings.
Generated from protobuf message google.cloud.video.livestream.v1.VideoStream.H264CodecSettings
Methods
__construct
Constructor.
Parameters | |
---|---|
Name | Description |
data |
array
Optional. Data for populating the Message object. |
↳ width_pixels |
int
Required. The width of the video in pixels. Must be an even integer. Valid range is [320, 1920]. |
↳ height_pixels |
int
Required. The height of the video in pixels. Must be an even integer. Valid range is [180, 1080]. |
↳ frame_rate |
float
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 for more information. |
↳ bitrate_bps |
int
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). |
↳ allow_open_gop |
bool
Specifies whether an open Group of Pictures (GOP) structure should be allowed or not. The default is |
↳ gop_frame_count |
int
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 |
↳ gop_duration |
Google\Protobuf\Duration
Select the GOP size based on the specified duration. The default is |
↳ vbv_size_bits |
int
Size of the Video Buffering Verifier (VBV) buffer in bits. Must be greater than zero. The default is equal to bitrate_bps. |
↳ vbv_fullness_bits |
int
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. |
↳ entropy_coder |
string
The entropy coder to use. The default is |
↳ b_pyramid |
bool
Allow B-pyramid for reference frame selection. This may not be supported on all decoders. The default is |
↳ b_frame_count |
int
The number of consecutive B-frames. Must be greater than or equal to zero. Must be less than gop_frame_count if set. The default is 0. |
↳ aq_strength |
float
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. |
↳ profile |
string
Enforces the specified codec profile. The following profiles are supported: * |
↳ tune |
string
Enforces the specified codec tune. The available options are FFmpeg-compatible Encode Options Note that certain values for this field may cause the transcoder to override other fields you set in the H264CodecSettings message. |
getWidthPixels
Required. The width of the video in pixels. Must be an even integer.
Valid range is [320, 1920].
Returns | |
---|---|
Type | Description |
int |
setWidthPixels
Required. The width of the video in pixels. Must be an even integer.
Valid range is [320, 1920].
Parameter | |
---|---|
Name | Description |
var |
int
|
Returns | |
---|---|
Type | Description |
$this |
getHeightPixels
Required. The height of the video in pixels. Must be an even integer.
Valid range is [180, 1080].
Returns | |
---|---|
Type | Description |
int |
setHeightPixels
Required. The height of the video in pixels. Must be an even integer.
Valid range is [180, 1080].
Parameter | |
---|---|
Name | Description |
var |
int
|
Returns | |
---|---|
Type | Description |
$this |
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 for more information.
Returns | |
---|---|
Type | Description |
float |
setFrameRate
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 for more information.
Parameter | |
---|---|
Name | Description |
var |
float
|
Returns | |
---|---|
Type | Description |
$this |
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).
Returns | |
---|---|
Type | Description |
int |
setBitrateBps
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).
Parameter | |
---|---|
Name | Description |
var |
int
|
Returns | |
---|---|
Type | Description |
$this |
getAllowOpenGop
Specifies whether an open Group of Pictures (GOP) structure should be
allowed or not. The default is false
.
Returns | |
---|---|
Type | Description |
bool |
setAllowOpenGop
Specifies whether an open Group of Pictures (GOP) structure should be
allowed or not. The default is false
.
Parameter | |
---|---|
Name | Description |
var |
bool
|
Returns | |
---|---|
Type | Description |
$this |
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].
Returns | |
---|---|
Type | Description |
int |
hasGopFrameCount
setGopFrameCount
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].
Parameter | |
---|---|
Name | Description |
var |
int
|
Returns | |
---|---|
Type | Description |
$this |
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, and
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.
Returns | |
---|---|
Type | Description |
Google\Protobuf\Duration|null |
hasGopDuration
setGopDuration
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, and
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.
Parameter | |
---|---|
Name | Description |
var |
Google\Protobuf\Duration
|
Returns | |
---|---|
Type | Description |
$this |
getVbvSizeBits
Size of the Video Buffering Verifier (VBV) buffer in bits. Must be greater than zero. The default is equal to bitrate_bps.
Returns | |
---|---|
Type | Description |
int |
setVbvSizeBits
Size of the Video Buffering Verifier (VBV) buffer in bits. Must be greater than zero. The default is equal to bitrate_bps.
Parameter | |
---|---|
Name | Description |
var |
int
|
Returns | |
---|---|
Type | Description |
$this |
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.
Returns | |
---|---|
Type | Description |
int |
setVbvFullnessBits
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.
Parameter | |
---|---|
Name | Description |
var |
int
|
Returns | |
---|---|
Type | Description |
$this |
getEntropyCoder
The entropy coder to use. The default is cabac
.
Supported entropy coders:
cavlc
cabac
Returns | |
---|---|
Type | Description |
string |
setEntropyCoder
The entropy coder to use. The default is cabac
.
Supported entropy coders:
cavlc
cabac
Parameter | |
---|---|
Name | Description |
var |
string
|
Returns | |
---|---|
Type | Description |
$this |
getBPyramid
Allow B-pyramid for reference frame selection. This may not be supported
on all decoders. The default is false
.
Returns | |
---|---|
Type | Description |
bool |
setBPyramid
Allow B-pyramid for reference frame selection. This may not be supported
on all decoders. The default is false
.
Parameter | |
---|---|
Name | Description |
var |
bool
|
Returns | |
---|---|
Type | Description |
$this |
getBFrameCount
The number of consecutive B-frames. Must be greater than or equal to zero. Must be less than gop_frame_count if set. The default is 0.
Returns | |
---|---|
Type | Description |
int |
setBFrameCount
The number of consecutive B-frames. Must be greater than or equal to zero. Must be less than gop_frame_count if set. The default is 0.
Parameter | |
---|---|
Name | Description |
var |
int
|
Returns | |
---|---|
Type | Description |
$this |
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.
Returns | |
---|---|
Type | Description |
float |
setAqStrength
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.
Parameter | |
---|---|
Name | Description |
var |
float
|
Returns | |
---|---|
Type | Description |
$this |
getProfile
Enforces the specified codec profile. The following profiles are supported:
baseline
main
(default)high
The available options are FFmpeg-compatible Profile Options.
Note that certain values for this field may cause the transcoder to override other fields you set in the H264CodecSettings message.
Returns | |
---|---|
Type | Description |
string |
setProfile
Enforces the specified codec profile. The following profiles are supported:
baseline
main
(default)high
The available options are FFmpeg-compatible Profile Options.
Note that certain values for this field may cause the transcoder to override other fields you set in the H264CodecSettings message.
Parameter | |
---|---|
Name | Description |
var |
string
|
Returns | |
---|---|
Type | Description |
$this |
getTune
Enforces the specified codec tune. The available options are FFmpeg-compatible Encode Options Note that certain values for this field may cause the transcoder to override other fields you set in the H264CodecSettings message.
Returns | |
---|---|
Type | Description |
string |
setTune
Enforces the specified codec tune. The available options are FFmpeg-compatible Encode Options Note that certain values for this field may cause the transcoder to override other fields you set in the H264CodecSettings message.
Parameter | |
---|---|
Name | Description |
var |
string
|
Returns | |
---|---|
Type | Description |
$this |
getGopMode
Returns | |
---|---|
Type | Description |
string |