Commit dc47930e authored by Vladimir Malenovsky's avatar Vladimir Malenovsky
Browse files

support mode in reverb_foa()

parent 9f6d28e8
Loading
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -215,6 +215,7 @@ def reverb_foa(
    input: Audio,
    foa_IR: Audio,
    align: Optional[float] = None,
    mode: Optional[str] = None,
) -> Audio:
    """
    Convolve mono audio signal with an FOA impulse response
@@ -227,6 +228,9 @@ def reverb_foa(
        FOA impulse response
    align: float
         multiplicative factor to apply to the reverberated sound in order to align its energy level with the second file
    mode: str, optional
        Mode of operation, None - no operation on the output, "same" centers the output signals by trimming left and right edge effects equally
        "trim_left" - trims the left edge, "trim_right" - trims the right edge.

    Returns
    -------
@@ -264,10 +268,10 @@ def reverb_foa(
        align = 1.0 / np.max(np.abs(H))

    # convolve mono input with FOA IR
    y_w = reverb(input, IR_w, align=align)
    y_x = reverb(input, IR_x, align=align)
    y_y = reverb(input, IR_y, align=align)
    y_z = reverb(input, IR_z, align=align)
    y_w = reverb(input, IR_w, align=align, mode=mode)
    y_x = reverb(input, IR_x, align=align, mode=mode)
    y_y = reverb(input, IR_y, align=align, mode=mode)
    y_z = reverb(input, IR_z, align=align, mode=mode)

    # combine into FOA output
    y = audio.fromtype("FOA")