6#include "../collection.hpp"
7#include "../component_batch.hpp"
8#include "../component_column.hpp"
9#include "../components/draw_order.hpp"
10#include "../components/is_keyframe.hpp"
11#include "../components/opacity.hpp"
12#include "../components/video_codec.hpp"
13#include "../components/video_sample.hpp"
14#include "../result.hpp"
38 std::optional<ComponentBatch>
codec;
63 std::optional<ComponentBatch>
sample;
89 static constexpr const char ArchetypeName[] =
"rerun.archetypes.VideoStream";
126 .value_or_throw()) {}
141 return std::move(*
this);
150 return std::move(*
this);
178 return std::move(*
this);
187 return std::move(*
this);
202 return std::move(*
this);
214 return std::move(*
this);
222 return std::move(*
this);
231 return std::move(*
this);
241 return std::move(*
this);
252 return std::move(*
this);
276 template <
typename T>
Generic collection of elements that are roughly contiguous in memory.
Definition collection.hpp:49
A class for representing either a usable value, or an error.
Definition result.hpp:14
All built-in archetypes. See Types in the Rerun manual.
Definition rerun.hpp:87
VideoCodec
Component: The codec used to encode video stored in components::VideoSample.
Definition video_codec.hpp:30
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:23
Arrow-encoded data of a single batch of components together with a component descriptor.
Definition component_batch.hpp:28
static Result< ComponentBatch > from_loggable(const rerun::Collection< T > &components, const ComponentDescriptor &descriptor)
Creates a new component batch from a collection of component instances.
Definition component_batch.hpp:46
A ComponentDescriptor fully describes the semantics of a column of data.
Definition component_descriptor.hpp:16
The Loggable trait is used by all built-in implementation of rerun::AsComponents to serialize a colle...
Definition loggable.hpp:11
Archetype: Video stream consisting of raw video chunks.
Definition video_stream.hpp:34
static VideoStream update_fields()
Update only some specific fields of a VideoStream.
Definition video_stream.hpp:129
VideoStream with_many_is_keyframe(const Collection< rerun::components::IsKeyframe > &_is_keyframe) &&
This method makes it possible to pack multiple is_keyframe in a single component batch.
Definition video_stream.hpp:209
VideoStream with_many_opacity(const Collection< rerun::components::Opacity > &_opacity) &&
This method makes it possible to pack multiple opacity in a single component batch.
Definition video_stream.hpp:229
std::optional< ComponentBatch > opacity
Opacity of the video stream, useful for layering several media.
Definition video_stream.hpp:79
static constexpr auto Descriptor_is_keyframe
ComponentDescriptor for the is_keyframe field.
Definition video_stream.hpp:102
VideoStream with_sample(const rerun::components::VideoSample &_sample) &&
Video sample data (also known as "video chunk").
Definition video_stream.hpp:176
VideoStream with_draw_order(const rerun::components::DrawOrder &_draw_order) &&
An optional floating point value that specifies the 2D drawing order.
Definition video_stream.hpp:238
std::optional< ComponentBatch > sample
Video sample data (also known as "video chunk").
Definition video_stream.hpp:63
std::optional< ComponentBatch > draw_order
An optional floating point value that specifies the 2D drawing order.
Definition video_stream.hpp:85
std::optional< ComponentBatch > is_keyframe
Whether the corresponding components::VideoSample contains a keyframe.
Definition video_stream.hpp:74
static constexpr auto Descriptor_sample
ComponentDescriptor for the sample field.
Definition video_stream.hpp:97
VideoStream with_many_sample(const Collection< rerun::components::VideoSample > &_sample) &&
This method makes it possible to pack multiple sample in a single component batch.
Definition video_stream.hpp:185
static VideoStream clear_fields()
Clear all the fields of a VideoStream.
Collection< ComponentColumn > columns()
Partitions the component data into unit-length sub-batches.
VideoStream with_many_codec(const Collection< rerun::components::VideoCodec > &_codec) &&
This method makes it possible to pack multiple codec in a single component batch.
Definition video_stream.hpp:148
static constexpr auto Descriptor_codec
ComponentDescriptor for the codec field.
Definition video_stream.hpp:92
static constexpr auto Descriptor_opacity
ComponentDescriptor for the opacity field.
Definition video_stream.hpp:107
VideoStream with_opacity(const rerun::components::Opacity &_opacity) &&
Opacity of the video stream, useful for layering several media.
Definition video_stream.hpp:220
VideoStream with_many_draw_order(const Collection< rerun::components::DrawOrder > &_draw_order) &&
This method makes it possible to pack multiple draw_order in a single component batch.
Definition video_stream.hpp:248
static constexpr auto Descriptor_draw_order
ComponentDescriptor for the draw_order field.
Definition video_stream.hpp:112
VideoStream with_is_keyframe(const rerun::components::IsKeyframe &_is_keyframe) &&
Whether the corresponding components::VideoSample contains a keyframe.
Definition video_stream.hpp:199
VideoStream with_codec(const rerun::components::VideoCodec &_codec) &&
The codec used to encode the video chunks.
Definition video_stream.hpp:139
static constexpr const char ArchetypeName[]
The name of the archetype as used in ComponentDescriptors.
Definition video_stream.hpp:89
std::optional< ComponentBatch > codec
The codec used to encode the video chunks.
Definition video_stream.hpp:38
Collection< ComponentColumn > columns(const Collection< uint32_t > &lengths_)
Partitions the component data into multiple sub-batches.
Component: Draw order of 2D elements.
Definition draw_order.hpp:19
Component: Whether a components::VideoSample contains a keyframe (also known as a sync sample or IDR)...
Definition is_keyframe.hpp:20
Component: Degree of transparency ranging from 0.0 (fully transparent) to 1.0 (fully opaque).
Definition opacity.hpp:17
Component: Video sample data (also known as "video chunk").
Definition video_sample.hpp:21