
    bh                         d dl Zd Zy)    Nc                 X   t        | t        j                        st        d      t        j                  | j
                  t        j                        st        d      | j                  dk(  r| j                  d   dkD  rt        d      | j                  d   ||z  k  rt        d      y	)
a{   Validate input audio data.
    
    Ensure input is numpy array of floating point data bewteen -1 and 1

    Params
    -------
    data : ndarray
        Input audio data
    rate : int
        Sampling rate of the input audio in Hz
    block_size : int
        Analysis block size in seconds 

    Returns
    -------
    valid : bool
        True if valid audio
        
    z#Data must be of type numpy.ndarray.zData must be floating point.         z&Audio must have five channels or less.r   z3Audio must have length greater than the block size.T)	
isinstancenpndarray
ValueError
issubdtypedtypefloatingndimshape)datarate
block_sizes      I/var/www/html/engine/venv/lib/python3.12/site-packages/pyloudnorm/util.pyvalid_audior      s    ( dBJJ'>??==R[[1788yyA~$**Q-!+ABBzz!}zD((NOO    )numpyr   r    r   r   <module>r      s     r   