Student or Learner
I wanna express following situation.
A: hey, did you sleep well?
B1: No! I couldn't have slept well because of noisy sounds.
B2: No! I couldn't sleep well because of noisy sounds!
Which one between B1 and B2 is correct?
We can and do use <couldn't> to discuss past time events, Soleijy, but in this case, I'd suggest it's a bit more natural to a switch to <wasn't able to sleep well ...>. Note that I'm not saying that you cannot use <couldn't>.
However, you CANNOT use <couldn't have slept well ...> to get the same meaning, because that gives it a conditional meaning, for example,
I couldn't have slept well even if there hadn't been noises because the bed wasn't comfortable.
I have to disagree with my learned colleague, Naamplao, because the use of <didn't sleep well> changes the meaning to a statement of simple fact, whereas the modal or semi-modal gives a more emotive sense.
Also, "noisy sounds" isn't, IMHO, a very natural way to say this. Naamplao gave you a good alternative. Another is, "the noise".