void ReadingAndWritingDidFinish(bool success, NSError error) { if (!success) { assetReader.CancelReading(); assetWriter.CancelWriting(); } // Tear down assetReader.Dispose(); assetReader = null; assetWriter.Dispose(); assetWriter = null; audioSampleBufferChannel = null; videoSampleBufferChannel = null; cancellationTokenSrc = null; completionProc(error); }