+
    œ°³jç  ã                   ó~   € R t ^ RIt^RIHt ^RIHt ^RIHtH	t	H
t
 ]
P                  ! ]4      t ! R R]4      tR.tR# )zFeature extractor class for DACN)ÚSequenceFeatureExtractor)ÚBatchFeature)ÚPaddingStrategyÚ
TensorTypeÚloggingc                   ód   a a€ ] tR t^t oRtRR.tR	V3R lV 3R llltR
V3R lR lltRtVt	V ;t
# )ÚDacFeatureExtractora
  
Constructs an Dac feature extractor.

This feature extractor inherits from [`~feature_extraction_sequence_utils.SequenceFeatureExtractor`] which contains
most of the main methods. Users should refer to this superclass for more information regarding those methods.

Args:
    feature_size (`int`, *optional*, defaults to 1):
        The feature dimension of the extracted features. Use 1 for mono, 2 for stereo.
    sampling_rate (`int`, *optional*, defaults to 16000):
        The sampling rate at which the audio waveform should be digitalized, expressed in hertz (Hz).
    padding_value (`float`, *optional*, defaults to 0.0):
        The value that is used for padding.
    hop_length (`int`, *optional*, defaults to 512):
        Overlap length between successive windows.
Úinput_valuesÚn_quantizersc                ó2   <€ V ^8„  d   QhRS[ RS[ RS[RS[ /# )é   Úfeature_sizeÚsampling_rateÚpadding_valueÚ
hop_length)ÚintÚfloat)ÚformatÚ__classdict__s   "€Úo/home/luca/screen-checking/.venv/lib/python3.14/site-packages/transformers/models/dac/feature_extraction_dac.pyÚ__annotate__Ú DacFeatureExtractor.__annotate__.   s3   ø€ ÷ 	%ñ 	%áð	%ñ ð	%ñ ð		%ñ
 ñ	%ó    c           	     ó@   <€ \         SV `  ! RR VRVRV/VB  W@n        R# )r   r   r   N© )ÚsuperÚ__init__r   )Úselfr   r   r   r   ÚkwargsÚ	__class__s   &&&&&,€r   r   ÚDacFeatureExtractor.__init__.   s+   ø€ ô 	‰ÒÑw lÐwÀ-ÐwÐ_lÐwÐpvÒwØ$Žr   c                óR  <€ V ^8„  d   QhRS[ P                  S[S[,          ,          S[S[ P                  ,          ,          S[S[S[,          ,          ,          RS[S[,          S[,          R,          RS[R,          RS[R,          RS[S[,          R,          RS[R,          RS[	/# )	r   Ú	raw_audioÚpaddingNÚ
truncationÚ
max_lengthÚreturn_tensorsr   Úreturn)
ÚnpÚndarrayÚlistr   ÚboolÚstrr   r   r   r   )r   r   s   "€r   r   r   9   s§   ø€ ÷ nñ ná—:‘:¡¡U¥Õ+©d±2·:±:Õ.>Õ>ÁÁdÉ5ÅkÕARÕRðnñ ™•™oÕ-°Õ4ðnñ ˜4•Kð	nñ
 ˜$•Jðnñ ™jÕ(¨4Õ/ðnñ ˜T•zðnñ 
ñnr   c                ó2  € Ve>   W`P                   8w  d-   \        RV  RV P                    RV P                    RV R2	4      hM-\        P                  RV P                  P
                   R24       V'       d   V'       d   \        R4      hVf   R	p\        \        V\        \        34      ;'       d-    \        V^ ,          \        P                  \        \        34      4      pV'       dA   V Uu. uF3  p\        P                  ! V\        P                  R
7      P                  NK5  	  ppMÀV'       gH   \        V\        P                  4      '       g(   \        P                  ! V\        P                  R
7      pMq\        V\        P                  4      '       dR   VP                  \        P                  ! \        P                   4      J d    VP#                  \        P                  4      pV'       g"   \        P                  ! V4      P                  .p\%        V4       FŒ  w  ršV
P&                  ^8”  d   \        RV
P(                   24      hV P*                  ^8X  d2   V
P&                  ^8w  d!   \        RV
P(                  R,           R24      hV P*                  ^8X  g   Kƒ  \        R4      h	  \-        RV/4      pV P/                  VVVVVV P0                  R7      pV'       d   VP3                  R4      VR&   V'       d*   VP4                  R\        P6                  R3,          Vn        . pVP3                  R4       F8  p
V P*                  ^8X  d
   V
R,          p
VP9                  V
P                  4       K:  	  W¼R&   Ve   VP;                  V4      pV# u upi )a»  
Main method to featurize and prepare for the model one or several sequence(s).

Args:
    raw_audio (`np.ndarray`, `list[float]`, `list[np.ndarray]`, `list[list[float]]`):
        The sequence or batch of sequences to be processed. Each sequence can be a numpy array, a list of float
        values, a list of numpy arrays or a list of list of float values. The numpy array must be of shape
        `(num_samples,)` for mono audio (`feature_size = 1`), or `(2, num_samples)` for stereo audio
        (`feature_size = 2`).
    padding (`bool`, `str` or [`~utils.PaddingStrategy`], *optional*, defaults to `True`):
        Select a strategy to pad the returned sequences (according to the model's padding side and padding
        index) among:

        - `True` or `'longest'`: Pad to the longest sequence in the batch (or no padding if only a single
          sequence if provided).
        - `'max_length'`: Pad to a maximum length specified with the argument `max_length` or to the maximum
          acceptable input length for the model if that argument is not provided.
        - `False` or `'do_not_pad'` (default): No padding (i.e., can output a batch with sequences of different
          lengths).
    truncation (`bool`, *optional*, defaults to `False`):
        Activates truncation to cut input sequences longer than `max_length` to `max_length`.
    max_length (`int`, *optional*):
        Maximum length of the returned list and optionally padding length (see above).
    return_tensors (`str` or [`~utils.TensorType`], *optional*, default to 'pt'):
        If set, will return tensors instead of list of python integers. Acceptable values are:

        - `'pt'`: Return PyTorch `torch.Tensor` objects.
        - `'np'`: Return Numpy `np.ndarray` objects.
    sampling_rate (`int`, *optional*):
        The sampling rate at which the `audio` input was sampled. It is strongly recommended to pass
        `sampling_rate` at the forward call to prevent silent errors.
z3The model corresponding to this feature extractor: z& was trained using a sampling rate of zB. Please make sure that the provided audio input was sampled with z	 and not Ú.zDIt is strongly recommended to pass the `sampling_rate` argument to `zN()`. Failing to do so can result in silent errors that might be hard to debug.zABoth padding and truncation were set. Make sure you only set one.T)Údtypez6Expected input shape (channels, length) but got shape z$Expected mono audio but example has z	 channelsz$Stereo audio isn't supported for nowr	   )r%   r$   r#   Úreturn_attention_maskÚpad_to_multiple_ofÚattention_maskÚpadding_mask:NNNéÿÿÿÿ).N)r   Ú
ValueErrorÚloggerÚwarningr   Ú__name__r+   Ú
isinstancer*   Útupler(   r)   ÚasarrayÚfloat32ÚTr/   Úfloat64ÚastypeÚ	enumerateÚndimÚshaper   r   Úpadr   Úpopr	   ÚnewaxisÚappendÚconvert_to_tensors)r   r"   r#   r$   r%   r&   r   Ú
is_batchedÚaudioÚidxÚexampler	   Úpadded_inputss   &&&&&&&      r   Ú__call__ÚDacFeatureExtractor.__call__9   s  € ðR Ò$Ø× 2Ñ 2Ô2Ü ØIÈ$Èð PØ×*Ñ*Ð+ð ,Ø×*Ñ*Ð+¨9°]°OÀ1ðFóð ð 3ô �N‰NØVÐW[×WeÑWe×WnÑWnÐVoð p\ð \ô÷
 —zÜÐ`ÓaÐaØŠ_àˆGäÜ�y¤4¬ -Ó0×jÐj´jÀÈ1ÅÔPR×PZÑPZÔ\aÔcgÐOhÓ6ió
ˆ
÷ ÙLUÓVÉIÀ5œŸš E´·±Ô<×>Ô>ÉIˆIÐVˆIß¤J¨y¼"¿*¹*×$EÒ$EÜŸ
š
 9´B·J±JÔ?‰IÜ˜	¤2§:¡:×.Ò.°9·?±?ÄbÇhÂhÌrÏzÉzÓFZÓ3ZØ!×(Ñ(¬¯©Ó4ˆI÷ ÜŸš IÓ.×0Ñ0Ð1ˆIô & iÖ0‰LˆCØ�|‰|˜aÔÜ Ð#YÐZa×ZgÑZgÐYhÐ!iÓjÐjØ× Ñ  AÔ%¨'¯,©,¸!Ô*;Ü Ð#GÈÏÉÐVXÕHYÐGZÐZcÐ!dÓeÐeØ× Ñ  AÖ%Ü Ð!GÓHÐHñ 1ô $ ^°YÐ$?Ó@ˆð Ÿ™ØØ!Ø!ØØ")Ø#Ÿ™ð !ó 
ˆ÷ Ø,9×,=Ñ,=Ð>NÓ,OˆM˜.Ñ)ßØ)6×)CÑ)CÀAÄrÇzÁzÐSTÐDTÕ)UˆMÔ&àˆØ$×(Ñ(¨Ö8ˆGØ× Ñ  AÔ%Ø! )Õ,�Ø×Ñ §	¡	Ö*ñ 9ð
 )5�nÑ%ØÒ%Ø)×<Ñ<¸^ÓLˆMàÐùò[ Ws   Ã/9N)r   )é   i€>  g        i   )NFNNN)r8   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Úmodel_input_namesr   rM   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   r   s   @@r   r   r      s3   ù‡ € ñð" (¨Ð8Ð÷	%õ 	%÷n÷ nò nr   r   )rS   Únumpyr(   Ú!feature_extraction_sequence_utilsr   Úfeature_extraction_utilsr   Úutilsr   r   r   Ú
get_loggerr8   r6   r   Ú__all__r   r   r   Ú<module>r^      sE   ðñ &ã å IÝ 4ß 9Ñ 9ð 
×	Ò	˜HÓ	%€ôMÐ2ô Mð` !Ð
!‚r   