As best as I can tell, there are at least three possible ways to deduce from audio analysis where shots might have come from, give or take some margin, that can also be calculated:
If one knows the muzzle velocity of a round, if that is supersonic, and if the round passes close enough to a microphone to record both the bullet’s supersonic snick and the subsequent report of the rifle, then one can estimate how far away the rifle is from the microphone by the delay between the snick and the report.
If you know two positions along the path of a bullet, then within the margin of known atmospheric conditions, muzzle velocity, the precision one knows the location of those positions, and such, one can trace back that trajectory to possible shooting location(s).
If multiple shots are fired, recorded with multiple microphones, then you can use the variation in timing of shots sounds, between the different microphones, to determine which shots were fired closer to which microphones. This analysis gets fuzzy pretty quickly if the microphones are moving or if they don’t share a common, precise, timing base. In the best case, if all microphones are in a common plane, locked in position, with precisely synchronized clocks, then you can place the origin of each shot in that plane, and if the microphones are also spread in the third dimension, you can place the shot origins in 3D space.
There are other analyses one can do as well, if one knows more about the obstacles, reflecting surfaces, and such that will modify the frequency spectrum and/or add echo’s to the recording, and how those variations in the recorded audio fit with the known properties and locations of such sound altering surfaces and obstacles in the area.