    struct CMAFContainerOptionsStruct

The container type and related options.
- `


  ### [cmafInterface](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV13cmafInterfaceAE17CMAFInterfaceEnumOvp)


  ` CMAF interface type (Interface1, Interface2DASH, Interface2HLS).

  #### Declaration

  Swift

      let cmafInterface: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFInterfaceEnum.html

- `


  ### [segmentDuration](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV15segmentDurations6UInt16Vvp)


  ` The duration of each segment in the CMAF stream.

  #### Declaration

  Swift

      let segmentDuration: UInt16

- `


  ### [chunkDuration](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV13chunkDurations6UInt16Vvp)


  ` The chunk duration.

  #### Declaration

  Swift

      let chunkDuration: UInt16

- `


  ### [sessionGroup](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV12sessionGroups5UInt8VSgvp)


  ` An identifier for grouping sessions.

  #### Declaration

  Swift

      let sessionGroup: UInt8?

- `


  ### [trackName](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV9trackNameSSSgvp)


  ` The name of the media track.

  #### Declaration

  Swift

      let trackName: String?

- `


  ### [cencKey](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV7cencKey10Foundation4DataVSgvp)


  ` The common encryption key.

  #### Declaration

  Swift

      let cencKey: Data?

- `


  ### [cencKeyID](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV9cencKeyID10Foundation4DataVSgvp)


  ` The common encryption key ID.

  #### Declaration

  Swift

      let cencKeyID: Data?

- `


  ### [metadataEnabled](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV15metadataEnabledSbSgvp)


  ` Whether metadata is enabled.

  #### Declaration

  Swift

      let metadataEnabled: Bool?

- `


  ### [init(decoder:)](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV7decoderAG0aB3SDK0I7DecoderV_tKcfc)


  ` Creates a new Struct instance using data read from the given `TraitDecoder`.
  Throws
  `HomeError.parseError` when parsing fails.

  #### Declaration

  Swift

      init(decoder: TraitDecoder) throws

  #### Parameters

  |---|---|
  | ` decoder ` | The raw data representing this Struct. |

- `


  ### [encode(with:)](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV6encode4withy0aB3SDK0I7EncoderC_tKF)


  ` Writes this Struct to the given `TraitEncoder`.
  Throws `HomeError.parseError` if the data could not be encoded.

  #### Declaration

  Swift

      func encode(with encoder: TraitEncoder) throws

- `


  ### [structField(id:)](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/PushAvStreamTransportTrait/CMAFContainerOptionsStruct#/s:15GoogleHomeTypes6MatterO26PushAvStreamTransportTraitV26CMAFContainerOptionsStructV11structField2id0aB3SDK0N0_pSgs6UInt32V_tFZ)


  ` Returns the field corresponding to the given field ID.

  #### Declaration

  Swift

      static func structField(id: UInt32) -> (any Field)?