A non-transitory computer-readable recording medium having recorded thereon a voice processing computer program that causes a computer to execute a process comprising:
- transforming a first voice signal and a second voice signal respectively into a first frequency signal and a second frequency signal in a frequency domain, on a frame-by-frame basis with each frame having a predetermined time length, the first voice signal representing a recorded voice generated by a first voice input unit, the second voice signal representing a recorded voice generated by a second voice input unit which is provided at a position different from a position of the first voice input unit;
- calculating a phase difference between the first frequency signal and the second frequency signal for each of a plurality of frequencies on the frame-by-frame basis;
- calculating, for each of at least one extension range, a presence ratio being a ratio of number of frequencies each with the phase difference between the first frequency signal and the second frequency signal falling within the extension range to total number of frequencies included in a frequency band in which the first frequency signal and the second frequency signal are calculated, on the frame-by-frame basis, the at least one extension range representing a range of the phase difference between the first voice signal and the second voice signal for each frequency and set outside or inside a reference range so as to align in order from one edge of the reference range, the reference range representing a range of the phase difference between the first voice signal and the second voice signal for each frequency and corresponding to a direction in which a target sound source to be recorded is assumed to be located;
- setting, as a non-suppression range, a first extension range having the presence ratio higher than a predetermined value and a second extension range closer to the phase difference at center of the reference range than the first extension range is, among the at least one extension range, and a range not including a third extension range farther from the phase difference at the center of the reference range than the first extension range is, in the reference range, and setting, as a suppression range, a range of the phase difference outside the non-suppression range, on the frame-by-frame basis;
- calculating, for at least one of the first frequency signal and the second frequency signal, a suppression coefficient for attenuating a frequency component having the phase difference between the first frequency signal and the second frequency signal falling within the suppression range, at a greater extent than attenuation for a frequency component having the phase difference between the first frequency signal and the second frequency signal falling within the non-suppression range, on the frame-by-frame basis;
- correcting the at least one of the first and second frequency signals by multiplying amplitude of the component of the at least one of the first and second frequency signals at each frequency by the suppression coefficient for the frequency, on the frame-by-frame basis;
- and
- transforming the at least one of the first and second frequency signals corrected, into a corrected voice signal in a time domain.