Struct google_api_proto::google::cloud::video::livestream::v1::Channel
source · pub struct Channel {Show 19 fields
pub name: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub labels: BTreeMap<String, String>,
pub input_attachments: Vec<InputAttachment>,
pub active_input: String,
pub output: Option<Output>,
pub elementary_streams: Vec<ElementaryStream>,
pub mux_streams: Vec<MuxStream>,
pub manifests: Vec<Manifest>,
pub sprite_sheets: Vec<SpriteSheet>,
pub streaming_state: i32,
pub streaming_error: Option<Status>,
pub log_config: Option<LogConfig>,
pub timecode_config: Option<TimecodeConfig>,
pub encryptions: Vec<Encryption>,
pub input_config: Option<InputConfig>,
pub retention_config: Option<RetentionConfig>,
pub static_overlays: Vec<StaticOverlay>,
}
Expand description
Channel resource represents the processor that does a user-defined “streaming” operation, which includes getting an input stream through an input, transcoding it to multiple renditions, and publishing output live streams in certain formats (for example, HLS or DASH) to the specified location.
Fields§
§name: String
The resource name of the channel, in the form of:
projects/{project}/locations/{location}/channels/{channelId}
.
create_time: Option<Timestamp>
Output only. The creation time.
update_time: Option<Timestamp>
Output only. The update time.
labels: BTreeMap<String, String>
User-defined key/value metadata.
input_attachments: Vec<InputAttachment>
A list of input attachments that this channel uses. One channel can have multiple inputs as the input sources. Only one input can be selected as the input source at one time.
active_input: String
Output only. The [InputAttachment.key][google.cloud.video.livestream.v1.InputAttachment.key] that serves as the current input source. The first input in the [input_attachments][google.cloud.video.livestream.v1.Channel.input_attachments] is the initial input source.
output: Option<Output>
Required. Information about the output (that is, the Cloud Storage bucket to store the generated live stream).
elementary_streams: Vec<ElementaryStream>
List of elementary streams.
mux_streams: Vec<MuxStream>
List of multiplexing settings for output streams.
manifests: Vec<Manifest>
List of output manifests.
sprite_sheets: Vec<SpriteSheet>
List of output sprite sheets.
streaming_state: i32
Output only. State of the streaming operation.
streaming_error: Option<Status>
Output only. A description of the reason for the streaming error. This property is always present when [streaming_state][google.cloud.video.livestream.v1.Channel.streaming_state] is [STREAMING_ERROR][google.cloud.video.livestream.v1.Channel.StreamingState.STREAMING_ERROR].
log_config: Option<LogConfig>
Configuration of platform logs for this channel.
timecode_config: Option<TimecodeConfig>
Configuration of timecode for this channel.
encryptions: Vec<Encryption>
Encryption configurations for this channel. Each configuration has an ID which is referred to by each MuxStream to indicate which configuration is used for that output.
input_config: Option<InputConfig>
The configuration for input sources defined in [input_attachments][google.cloud.video.livestream.v1.Channel.input_attachments].
retention_config: Option<RetentionConfig>
Optional. Configuration for retention of output files for this channel.
static_overlays: Vec<StaticOverlay>
Optional. List of static overlay images. Those images display over the output content for the whole duration of the live stream.
Implementations§
source§impl Channel
impl Channel
sourcepub fn streaming_state(&self) -> StreamingState
pub fn streaming_state(&self) -> StreamingState
Returns the enum value of streaming_state
, or the default if the field is set to an invalid enum value.
sourcepub fn set_streaming_state(&mut self, value: StreamingState)
pub fn set_streaming_state(&mut self, value: StreamingState)
Sets streaming_state
to the provided enum value.
Trait Implementations§
source§impl Message for Channel
impl Message for Channel
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for Channel
impl PartialEq for Channel
impl StructuralPartialEq for Channel
Auto Trait Implementations§
impl Freeze for Channel
impl RefUnwindSafe for Channel
impl Send for Channel
impl Sync for Channel
impl Unpin for Channel
impl UnwindSafe for Channel
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request