Well, since you asked about "other factors"...
I realize I'm probably in a decided minority here, but personally I find asking people to repeat things to be a very socially awkward activity (verging on rude). My own conversations tend to be very "in the moment" things. If you ask me to repeat something, most likely the "moment" is gone and it will no longer make nearly as much sense or be nearly as clever as when I originally said it. So basically you are asking me to put (now) dumb words in my own mouth for your benefit. I really don't like this, and will often politely refuse.
Now there are some situations where it is understandable and unavoidable. For instance, a loud noise occurred at a critical time (understandable), and/or what was said is important for the conversation to go on (unavoidable). But if the latter condition doesn't hold then I think it is far better to just let things go on and try to pick it up out of context. Or just let it slide.
There are people who are legitimately hard of hearing, and I'm am sorry about that. However, it is still wrong to insist every word uttered around you be repeated over and over again until you personally get it.