It’s pretty amazing people are still finding ways to make video smaller. Is this just people being clever or is it also more processing power being thrown at the problem when decoding / encoding?
Clever matters a lot more for encoding. If you can determine good ways to figure out the motion information without trying them all, that gets you faster encoding speed. Decoding doesn't tend to have as much room for cleverness; the stream says to calculate the output from specific data, so you need to do that.