class QueueInputPacket

Defined at line 1644 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/markers.h

This message queues input data to the stream processor for processing.

If the stream doesn't exist yet, this message creates the new stream.

The server won't send OnOutputConstraints() until after the client has

sent at least one QueueInput* message.

When using dynamic buffers the server can send OnOutputConstraints,

OnOutputFormat, OnOutputPacket, or OnOutputEndOfStream at any time after

the first QueueInputPacket. In the case of OnOutputPacket there must

also be at least one output buffer that's been added but not yet fully

removed (RemoveBuffer not yet complete).

The client must continue to deliver input data via this message even if

the stream processor has not yet generated the first

OnOutputConstraints, and even if the StreamProcessor is generating

OnFreeInputPacket for previously-queued input packets. The input data

must continue as long as there are free packets to be assured that the

server will ever generate the first OnOutputConstraints.

The server will close the channel if this packet refers to an old

buffer_lifetime_ordinal. Clients that need to deliver input images of

different dimensions to a video encoder can either (a) allocate buffers

large enough to contain the range of needed image sizes and use those to

deliver all the input images, (b) keep their own sets of buffers used

for different image dimensions and re-add old buffers with AddBuffer,

moving to a new buffer_lifetime_ordinal each time image dimensions

change, or (c) allocate new buffers each time image dimensions change.

The (a) option is preferred, for clients that have the flexibiilty to

store images of varying dimensions in a single set of buffers. Clients

that require each buffer to have a single image size can use option (b)

or (c).

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