The fees are collected by both Chinese banks and US intermediary banks.
On the Chinese side, they collect their fees on a percentage basis (all banks are collecting the same percentage). On the US side, it is a flat fee. usually around USD$30 and they simply deducted that from your transfer amount.