You are looking for frequency shifting, not a frequency-based analogue of compression*.
I am looking for a way to get both voices into my hearing range, i.e. compress the range of audio pitch, just like normal audio compression reduces the range of audio volume.
Frequency shifting is not a good analogue to compression, aka dynamic range compression.
Dynamic is used because compression looks at audio over time and uses varying levels of processing.
Range is used because compression changes audio amplitudes so they are closer together (i.e. within a desired range).
Frequency shifting, aka pitch shifting, at its simplest, is not dynamic. A simple form changes each frequency by a fixed multiple. (Therefore, this kind is not dynamic.) For example if a 2X multiple is used, a 400 Hz signal becomes 800 Hz, and a 600 Hz signal becomes 1200 Hz. Note that the frequencies are now further apart. This is what your ears expect, however.
You can find many audio tools that can do frequency shifting (aka pitch shifting). One place to start is https://en.wikipedia.org/wiki/Comparison_of_digital_audio_editors which includes tools such as (in random order):
- Pro Tools (Avid)
- Logic Pro (Apple)
- GarageBand (Apple)
- Audacity (open source)
- Reason (Reason Studios)
- Audition (Adobe)
- Live (Ableton)
- Hindenburg Pro (Hindenburg)
I have not verified that each can do pitch shifting, but it is likely that most or all can.
* A true frequency-based analogue of compression might be interesting. Or it might scare away all living things. To achieve it, I'd recommend programmatic audio processing software such as SuperCollider, CSound, ChucK, Max, or Sonic Pi.