getAudioInfoBytes method

  1. @override
Future<AudioInfo> getAudioInfoBytes(
  1. Uint8List inputData,
  2. String formatHint
)
override

Implementation

@override
Future<AudioInfo> getAudioInfoBytes(Uint8List inputData, String formatHint) async {
  try {
    final result = await methodChannel.invokeMapMethod<String, dynamic>(
      'getAudioInfoBytes',
      {'inputData': inputData, 'formatHint': formatHint},
    );
    if (result == null) {
      throw AudioConversionException('Native getAudioInfo returned null');
    }
    return AudioInfo(
      duration: Duration(milliseconds: result['durationMs'] as int),
      sampleRate: result['sampleRate'] as int,
      channels: result['channels'] as int,
      bitRate: result['bitRate'] as int,
      format: result['format'] as String,
    );
  } on PlatformException catch (e) {
    throw AudioConversionException(
      e.message ?? 'Unknown error',
      details: e.details?.toString(),
    );
  }
}