public Stream Read(Stream wavAudio) { var arguments = GetProcessArguments(); try { return(processRunner.RunAndReadOutput(decoderExecutableFile, arguments, wavAudio)); } catch (ExternalProcess.ExecutionException e) { throw new FlacCompressionException("Failed to read the input file", e); } }
public Stream Encode(Stream wavAudio, int compressionLevel) { if (wavAudio == null) { throw new ArgumentNullException(nameof(wavAudio)); } CompressionLevelValidation.ValidateCompressionLevel(compressionLevel); var arguments = GetProcessArguments(compressionLevel); try { return(processRunner.RunAndReadOutput( decoderExecutableFile, arguments, wavAudio)); } catch (ExternalProcess.ExecutionException e) { throw new FlacCompressionException("Failed to encode the file", e); } }