class OnOutputPacket
Defined at line 1488 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/markers.h
This is how the stream processor emits an output packet to the stream
processor client.
Order is significant.
The client should eventually call RecycleOutputPacket() (possibly after
switching streams multiple times), unless the buffer_lifetime_ordinal
has moved on. A stream change doesn't change which packets are busy
with the client vs. free with the server.
The relevant buffer is always the one specified in the packet's buffer_index field.
For low-level buffer types that support it, a StreamProcessor is free to
emit an output packet before the low-level buffer actually has any
usable data in the buffer, with the mechanism for signalling the
presence of data separate from the OnOutputPacket() message. For such
low-level buffer types, downstream consumers of data from the emitted
packet must participate in the low-level buffer signalling mechanism to
know when it's safe to consume the data. This is most likely to be
relevant when using a video decoder and gralloc-style buffers.
The error_ bool(s) allow (but do not require) a StreamProcessor server
to report errors that happen during an AU or between AUs.
The scope of error_detected_before starts at the end of the last
delivered output packet on this stream, or the start of stream if there
were no previous output packets on this stream. The scope ends at the
start of the output_packet.
The error_detected_before bool is separate so that discontinuities can be
indicated separately from whether the current packet is damaged.
The scope of error_detected_during is from the start to the end of this
output_packet.
Public Members
static const bool kHasClientToServer
static const bool kHasClientToServerBody
static const bool kHasServerToClient
static const bool kHasServerToClientBody
static const bool kHasNonEmptyUserFacingResponse
static const bool kHasDomainError
static const bool kHasFrameworkError
static const uint64_t kOrdinal