make fromGenerator() return a simplified custom channel