This was done for a client circa 1998. My customer had a long pipe where at one end four transducers were pulsed with a user-definable waveform and, at the other end, there were another four transducers that listened to the resulting sound pulse.
The project required a custom 4-channel digital to analogue converter and a 4-channel analogue to digital converter built into a PCI interface card. The card was based on a Xilinx FPGA in the days where PCI was still in its infancy.
The software below was a Visual C++ project that communicated with the card, enabling you to define the transmit waveform and record the resulting input waveform.
It's even got a picture of a very young Andy Whittaker 😀