ProducerOptionsType.fromMap constructor

ProducerOptionsType.fromMap(
  1. Map<String, dynamic> map
)

Implementation

factory ProducerOptionsType.fromMap(Map<String, dynamic> map) {
  final instance = ProducerOptionsType(
    encodings: (map['encodings'] as List).map((e) {
      return RtpEncodingParameters(
        rid: e['rid'] as String?,
        maxBitrate: e['maxBitrate'] as int?,
        // Add other fields if necessary based on RtpEncodingParameters definition
      );
    }).toList(),
    codecOptions: map['codecOptions'] != null
        ? ProducerCodecOptions(
            // Initialize fields for ProducerCodecOptions here if necessary
            )
        : null,
    track: map['track'] as MediaStreamTrack?,
    stream: map['stream'] as MediaStream?,
    codec: map['codec'] as RtpCodecCapability?,
  );

  // Add extra properties excluding known fields
  instance._extraProperties.addAll(
    Map.from(map)
      ..removeWhere((key, _) => [
            'encodings',
            'codecOptions',
            'track',
            'stream',
            'codec'
          ].contains(key)),
  );

  return instance;
}