Typically, when a person cannot hear a difference between a voiceless stop and a voiced stop, as pronounced according to IPA principles, that is because the voiceless stop is unaspirated, and the person listening is a speaker of English. In English, syllable-initial pre-stress /p,t,k/ are aspirated. Furthermore, voiced stops in that position are not fully voiced and for many speakers are actually unvoiced. So a phonetic transcription of "pin" would be [pʰɪn], and "bin" would be [pɪn]. The consonants in those performances are not pronounced as English consonants.
If you try to hear those sounds "conceptually", that is by categorizing the sound as "p" or "b", and your reference point is English, what you are hearing is not English "p" or "b", and they both sound close enough to "b" that you think they are the same, namely "b". An alternative approach would be to compare that IPA performance of p vs. b and ask, do these really sound exactly alike? I would also suggest using this chart or this chart, which are performed by acknowledged phonetic experts. If you absolutely can't hear any difference in [ata] and [ada], that's an interesting problem – usually people can hear that they are different, the problem is just how to classify what you hear.
Speakers of other languages have different experiences. For example, speakers of Hindi typically have no problem getting the distinction since their language has unaspirated and fully voiced stops.