Apple's Rosetta 2 that allows x86 code to run on M1 is a different beast than QEmu though. It translates x86 machine code to ARM code. That's why it is much faster than VM solutions.
QEmu also translates x86 machine code to ARM code, or vice-versa, or many other combinations. It's more optimised for portability and ease of adding translation support for new architectures than performance though but it's a really nifty bit of engineering.