decoderForPayload method

PixaDecoderDescriptor? decoderForPayload(
  1. Uint8List bytes, {
  2. String? formatId,
  3. String? mimeType,
})

Returns the best decoder route for explicit hints or encoded payload.

Implementation

PixaDecoderDescriptor? decoderForPayload(
  Uint8List bytes, {
  String? formatId,
  String? mimeType,
}) {
  final String? normalizedFormatId = formatId == null
      ? null
      : _normalizeRouteClaim(formatId).ifNotEmpty;
  if (normalizedFormatId != null) {
    final PixaDecoderDescriptor? decoder = decoderForFormatId(
      normalizedFormatId,
    );
    if (decoder != null) {
      return decoder;
    }
  }
  final String? normalizedMimeType = mimeType == null
      ? null
      : _normalizeMimeType(mimeType).ifNotEmpty;
  if (normalizedMimeType != null) {
    final PixaDecoderDescriptor? decoder = decoderForMimeType(
      normalizedMimeType,
    );
    if (decoder != null) {
      return decoder;
    }
  }
  return decoderForSignature(bytes);
}