Buffer up to 512KB at a time