@yanns If the reading is done on a Play thread pool I'd just read one chunk and feed it into the Iteratee, and then read the next chunk when the iteratee is ready for more input.