¿Por qué la duplicación de pantalla en Android ocupa tanta CPU?

Porque efectivamente tiene que hacer compresión de video en tiempo real. Porque de hecho podrías estar viendo un video en tu pantalla.

Si estos dispositivos solo leen la pantalla y la envían como mapa de bits, requerirá mucho más ancho de banda. Un dispositivo de 1920 x 1080 que solo envía el contenido de la pantalla requeriría un rendimiento continuo de aproximadamente 50 megabits por segundo. Y simplemente empujar 50 mbps por un canal wifi estaría cerca de maximizar el teléfono de todos modos, incluso si el wifi pudiera manejarlo.

Entonces comprimen los datos usando un programa de compresión rápido pero no súper eficiente. Esto atraviesa 6 megabytes por segundo (50 mbps) para reducirlo a menos de 1 megabyte por segundo (o aproximadamente 10 mbps). También reduce la resolución más alta a 1920 x 1080. Pero esto requiere mucho procesamiento, para algunos teléfonos, prácticamente toda su potencia de procesamiento.