private function checkDirectories($inputDir, $outputDir)
    {
        if (!is_dir($inputDir)) {
            throw new InvalidArgumentException(sprintf("Unable to find input directory: %s", $inputDir));
        }

        if (!is_dir($outputDir)) {
            // Try to create output directory
            if (mkdir($outputDir) === false) {
                throw new RuntimeException(sprintf("Unable to create output directory: %s", $outputDir));
            }
        }
    }