The one guy with a sniper rifle is the first target. Listen for the single shot sound. Learn to do a quick jump, left and right, to zero in on the source. Audio Frequency Direcion Finding (AFDF), doing that quick jump left and right will put the opponent in your sights after the second shot when you practice it enough. Move away from the battle noises to get a better idea where the sniper is at. Calling the name of a sniper before you shoot him is the first and easiest to do. The next threat is a gunner. If there are a limited number of machine guns in a game, they are easy to target. Make sure to flank them when they are engaged in a fight, don't approach a machine gun straight on. The guns that are most common are harder to single out, but it can be done. Listen to how they shoot, long bursts, short bursts or semi-auto, each player will take a slightly different approach.
You can also hear the difference between when someone is just shooting for no reason, when they are shooting at a suspected area, or when they are engaged in a firefight. If they are just shooting, it is a random sound, with no return fire. Shooting at a suspected position (spray and pray) will be sustained, but without a return. A firefight will have two sounds, incoming and outgoing, and will be sporadic and hectic sounding. As they move the guns, the sound pattern will change. Learn to react to a firefight sound, and you can key in on who's doing the fighting.