o
    i@                     @   sz   d dl Z d dlZd dlZd dlmZ d dlmZmZ G dd dej	Z
G dd dej	ZG dd	 d	eZd
efddZdS )    N)override)ComfyExtensionioc                   @   4   e Zd ZedejfddZedejfddZdS )AudioEncoderLoaderreturnc                 C   s.   t jddt jjdtddgt j gdS )Nr   loadersaudio_encoder_nameaudio_encoders)optionsnode_idcategoryinputsoutputs)r   SchemaComboInputfolder_pathsget_filename_listAudioEncoderOutputcls r   >/mnt/c/Users/fbmor/ComfyUI/comfy_extras/nodes_audio_encoder.pydefine_schema	   s   
z AudioEncoderLoader.define_schemac                 C   sD   t d|}tjj|dd}tjj|}|d u rtdt	|S )Nr
   T)	safe_loadzHERROR: audio encoder file is invalid and does not contain a valid model.)
r   get_full_path_or_raisecomfyutilsload_torch_filer
   load_audio_encoder_from_sdRuntimeErrorr   
NodeOutput)r   r	   sdaudio_encoderr   r   r   execute   s   
zAudioEncoderLoader.executeN	__name__
__module____qualname__classmethodr   r   r   r$   r'   r   r   r   r   r      s
    r   c                   @   r   )AudioEncoderEncoder   c                 C   s.   t jddt jdt jdgt j gdS )Nr-   conditioningr&   audior   )r   r   r   r   AudioAudioEncoderOutputr   r   r   r   r   r   "   s   


z AudioEncoderEncode.define_schemac                 C   s   | |d |d }t|S )Nwaveformsample_rate)encode_audior   r$   )r   r&   r/   outputr   r   r   r'   .   s   
zAudioEncoderEncode.executeNr(   r   r   r   r   r-   !   s
    r-   c                   @   s(   e Zd Zedeeej  fddZdS )r   r   c                    s
   t tgS N)r   r-   )selfr   r   r   get_node_list5   s   zAudioEncoder.get_node_listN)	r)   r*   r+   r   listtyper   	ComfyNoder8   r   r   r   r   r   4   s    r   r   c                      s   t  S r6   )r   r   r   r   r   comfy_entrypoint=   s   r<   )r   #comfy.audio_encoders.audio_encodersr   comfy.utilstyping_extensionsr   comfy_api.latestr   r   r;   r   r-   r   r<   r   r   r   r   <module>   s    	