Add buffering to channels