
    wiv                     "    d dl Z d dlZd Zd ZdS )    Nc                    t          j        t          j        |                     }t          j        d|dz            |z  }|| z  }t          j        t          j        |                    dk    rt	          j        d           |S )aE   Peak normalize a signal.
    
    Normalize an input signal to a user specifed peak amplitude.   

    Params
    -------
    data : ndarray
        Input multichannel audio data.
    target : float
        Desired peak amplitude in dB.

    Returns
    -------
    output : ndarray
        Peak normalized output data.
          $@      4@      ?#Possible clipped samples in output.)npmaxabspowerwarningswarn)datatargetcurrent_peakgainoutputs        d/root/.openclaw/workspace/chatterbox_venv_py311/lib/python3.11/site-packages/pyloudnorm/normalize.pypeakr      su    $ 6"&,,''L 8D&+&&5DD[F 
vbfVnn$$;<<<M    c                     ||z
  }t          j        d|dz            }|| z  }t          j        t          j        |                    dk    rt	          j        d           |S )a   Loudness normalize a signal.
    
    Normalize an input signal to a user loudness in dB LKFS.   

    Params
    -------
    data : ndarray
        Input multichannel audio data.
    input_loudness : float
        Loudness of the input in dB LUFS. 
    target_loudness : float
        Target loudness of the output in dB LUFS.
        
    Returns
    -------
    output : ndarray
        Loudness normalized output data.
    r   r   r   r   )r   r   r	   r
   r   r   )r   input_loudnesstarget_loudnessdelta_loudnessr   r   s         r   loudnessr   #   sb    ( %~5N8D.-..DD[F 
vbfVnn$$;<<<Mr   )r   numpyr   r   r    r   r   <module>r      sB          <    r   