With IGMP snooping, the switch does not forward replies to membership
queries out every port, so each group member has to respond to the query.
The switch will forward one of the replies to the router. In other words, igmp
snooping stops response suppression from working.
Multicast cam entries are not timed out, they're removed when the client attached to sends a leave (if you've got fast leave enabled), or after the
switch receives no replies to a group specific query sent out the port after
a leave has been received on that port (if you don't have fast leave enabled).
If clients do not send leaves (and just about every client should), the switch will remove the port once it stops receiving replies to normal igmp querys.