                                       forKey: .signalingConnectMetadata)
         try container.encodeIfPresent(signalingConnectNotifyMetadata,
                                       forKey: .signalingConnectNotifyMetadata)
+        try container.encodeIfPresent(simulcast, forKey: .simulcast)
         try container.encode(connectionTimeout, forKey: .connectionTimeout)
         try container.encode(videoEnabled, forKey: .videoEnabled)
         try container.encode(videoCodec, forKey: .videoCodec)

        signalingConnectNotifyMetadata =
            try container.decodeIfPresent(SignalingMetadata.self,
                                          forKey: .signalingConnectNotifyMetadata)
        connectionTimeout = try container.decode(Int.self,
                                                 forKey: .connectionTimeout)
        videoEnabled = try container.decode(Bool.self, forKey: .videoEnabled)

    /// 音声の可否。 `true` であれば音声を送受信します。
    /// デフォルトは `true` です。
    public var audioEnabled: Bool = true
    
    /// サイマルキャスト
    public var simulcast: Simulcast?
    
    /**
     最大話者数。マルチストリーム時のみ有効です。
