class OnFreeInputPacket
Defined at line 1693 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/markers.h
The server sends this message when the stream processor is done reading
the data in this packet (but not necessarily done processing its own
copy of the data). This message is sent regardless of any changes to
stream_lifetime_ordinal, stream closure, buffer_lifetime_ordinal changes
(as/when supported), etc.
When a new input buffer_lifetime_ordinal is created, all input packets
start with the client, and there is no initial OnFreeInputPacket.
On receiving this event, the client can determine which input buffer is
becoming free for re-use based on a packet_index to buffer_index
correspondence maintained by the client. This correspondence can be
fixed or dynamic, depending on client preference.
For video decoders, an OnFreeInputPacket can be relied on to indicate
that all prior packets are done reading from their input buffers as
well. However, the client isn't required to track this, as all
OnFreeInputPacket(s) will be sent by the server (just not necessarily in
the same order as QueueInputPacket, even for video decoders).
Re-use of input buffer buffer_index values is independent from re-use of
input packet packet_index values in general, but some clients may choose
to always set packet_index to the same value as buffer_index.
OnFreeInputPacket() does _not_ imply that the data in the input packet
has been processed successfully or that processing of the input bytes
has been attempted yet, only that the input data in the associated input
buffer is no longer needed by the StreamProcessor. If a client needs to
know which input data has generated corresponding output, using
timestamp_ish values for that is recommended.
The order of OnFreeInputPacket is not guaranteed to be the same as the
order of QueueInputPacket, and OnFreeInputPacket can occur after an
OnStreamFailed.
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