extract also support an optional newChannel parameters to do the copy