class EncryptedFormat

Defined at line 7070 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/natural_types.h

EncryptedFormat

The stream format details payload of a decrypting stream processor. This is

a sparsely populated table to specify parameters necessary for decryption

other than the data stream. It is only necessary to update fields if they

changed, but not an error if the same value is repeated.

Public Methods

void EncryptedFormat (Storage_ storage)
void EncryptedFormat ()

Defined at line 7075 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/natural_types.h

void EncryptedFormat (EncryptedFormat && )

Defined at line 7076 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/natural_types.h

void EncryptedFormat (const EncryptedFormat & other)
EncryptedFormat & operator= (EncryptedFormat && )

Defined at line 7077 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/natural_types.h

EncryptedFormat & operator= (const EncryptedFormat & other)
bool operator== (const EncryptedFormat & other)
bool operator!= (const EncryptedFormat & other)
bool IsEmpty ()
const std::optional< ::std::vector<uint8_t>> & init_vector ()

`init_vector` is used in combination with a key and a block of content

to create the first cipher block in a chain and derive subsequent cipher

blocks in a cipher block chain.

Usage:

- It is required to be set prior to the delivery of input packets to a

decryptor.

- This may be changed multiple times during a data stream.

::std::optional< ::std::vector<uint8_t>> & init_vector ()

`init_vector` is used in combination with a key and a block of content

to create the first cipher block in a chain and derive subsequent cipher

blocks in a cipher block chain.

Usage:

- It is required to be set prior to the delivery of input packets to a

decryptor.

- This may be changed multiple times during a data stream.

EncryptedFormat & init_vector (std::optional< ::std::vector<uint8_t>> value)

`init_vector` is used in combination with a key and a block of content

to create the first cipher block in a chain and derive subsequent cipher

blocks in a cipher block chain.

Usage:

- It is required to be set prior to the delivery of input packets to a

decryptor.

- This may be changed multiple times during a data stream.

const std::optional< ::std::vector< ::fuchsia_media::SubsampleEntry>> & subsamples ()

`subsamples` is used to identify the clear and encrypted portions of a

subsample.

Usage:

- For whole sample encryption, this parameter should not be sent.

- This may be changed multiple times during a data stream.

::std::optional< ::std::vector< ::fuchsia_media::SubsampleEntry>> & subsamples ()

`subsamples` is used to identify the clear and encrypted portions of a

subsample.

Usage:

- For whole sample encryption, this parameter should not be sent.

- This may be changed multiple times during a data stream.

EncryptedFormat & subsamples (std::optional< ::std::vector< ::fuchsia_media::SubsampleEntry>> value)

`subsamples` is used to identify the clear and encrypted portions of a

subsample.

Usage:

- For whole sample encryption, this parameter should not be sent.

- This may be changed multiple times during a data stream.

const std::optional< ::fuchsia_media::EncryptionPattern> & pattern ()

`pattern` is used to identify the clear and encrypted blocks for pattern

based encryption.

Usage:

- This is not allowed for CENC and CBC1 and required for CENS and CBCS.

- If required, it must be set prior to the delivery of input packets to

a decryptor.

- This may be changed multiple times during a data stream.

::std::optional< ::fuchsia_media::EncryptionPattern> & pattern ()

`pattern` is used to identify the clear and encrypted blocks for pattern

based encryption.

Usage:

- This is not allowed for CENC and CBC1 and required for CENS and CBCS.

- If required, it must be set prior to the delivery of input packets to

a decryptor.

- This may be changed multiple times during a data stream.

EncryptedFormat & pattern (std::optional< ::fuchsia_media::EncryptionPattern> value)

`pattern` is used to identify the clear and encrypted blocks for pattern

based encryption.

Usage:

- This is not allowed for CENC and CBC1 and required for CENS and CBCS.

- If required, it must be set prior to the delivery of input packets to

a decryptor.

- This may be changed multiple times during a data stream.

const std::optional< ::std::string> & scheme ()

`scheme` specifies which encryption scheme to use, such as

`fuchsia.media.ENCRYPTION_SCHEME_CENC`.

Usage:

- It is required to be set prior to delivery of input packets.

- Changing the scheme mid-stream is only permitted in some scenarios.

Once an encrypted scheme is selected for a stream, the scheme may

only be set to `fuchsia.media.ENCRYPTION_SCHEME_UNENCRYPTED` or that

same initial encrypted scheme. The scheme may be set to

`fuchsia.media.ENCRYPTION_SCHEME_UNENCRYPTED` at any point.

::std::optional< ::std::string> & scheme ()

`scheme` specifies which encryption scheme to use, such as

`fuchsia.media.ENCRYPTION_SCHEME_CENC`.

Usage:

- It is required to be set prior to delivery of input packets.

- Changing the scheme mid-stream is only permitted in some scenarios.

Once an encrypted scheme is selected for a stream, the scheme may

only be set to `fuchsia.media.ENCRYPTION_SCHEME_UNENCRYPTED` or that

same initial encrypted scheme. The scheme may be set to

`fuchsia.media.ENCRYPTION_SCHEME_UNENCRYPTED` at any point.

EncryptedFormat & scheme (std::optional< ::std::string> value)

`scheme` specifies which encryption scheme to use, such as

`fuchsia.media.ENCRYPTION_SCHEME_CENC`.

Usage:

- It is required to be set prior to delivery of input packets.

- Changing the scheme mid-stream is only permitted in some scenarios.

Once an encrypted scheme is selected for a stream, the scheme may

only be set to `fuchsia.media.ENCRYPTION_SCHEME_UNENCRYPTED` or that

same initial encrypted scheme. The scheme may be set to

`fuchsia.media.ENCRYPTION_SCHEME_UNENCRYPTED` at any point.

const std::optional< ::std::vector<uint8_t>> & key_id ()

`key_id` identifies the key that should be used for decrypting

subsequent data.

Usage:

- It is required to be set prior to delivery of input packets to a

decryptor.

- This may be changed multiple times during a data stream.

::std::optional< ::std::vector<uint8_t>> & key_id ()

`key_id` identifies the key that should be used for decrypting

subsequent data.

Usage:

- It is required to be set prior to delivery of input packets to a

decryptor.

- This may be changed multiple times during a data stream.

EncryptedFormat & key_id (std::optional< ::std::vector<uint8_t>> value)

`key_id` identifies the key that should be used for decrypting

subsequent data.

Usage:

- It is required to be set prior to delivery of input packets to a

decryptor.

- This may be changed multiple times during a data stream.

void EncryptedFormat (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )

Friends

class MemberVisitor
class NaturalTableCodingTraits