audiotoken
v0.3.1
Tokenize Audio para obtener fichas acústicas y semánticas.
pip install audiotokenPuede usar un codificador acústico o semántico para codificar audio y obtener tokens.
from pathlib import Path
from audiotoken import AudioToken , Tokenizers
encoder = AudioToken ( tokenizer = Tokenizers . acoustic , device = 'cuda:0' )
encoded_audio = encoder . encode ( Path ( 'path/to/audio.wav' ))Hay 1 tokenizadores acústicos y 2 semánticos disponibles:
Tokenizers.acousticTokenizers.semantic_s (pequeño)Tokenizers.semantic_m (Medium)Puede decodificar tokens acústicos así:
from pathlib import Path
from audiotoken import AudioToken , Tokenizers
tokenizer = AudioToken ( tokenizer = Tokenizers . acoustic , device = 'cuda:0' )
encoded_audio = tokenizer . encode ( Path ( 'path/to/audio.wav' ))
decoded_audio = tokenizer . decode ( encoded_audio )
# Save the decoded audio and compare it with the original audio
import torch
import torchaudio
torchaudio . save (
'reconstructed.wav' ,
decoded_audio ,
sample_rate = 24000
)Puedes decodificar tokens semánticos como este:
from pathlib import Path
from audiotoken import AudioToken , Tokenizers
semantic_tokenizer = AudioToken ( tokenizer = Tokenizers . semantic_s , device = 'cuda:0' )
semantic_toks = semantic_tokenizer . encode ( Path ( 'path/to/audio.wav' ))
decoded_audio = semantic_tokenizer . decode ( semantic_toks )
# Save the decoded audio and compare it with the original audio
import torch
import torchaudio
torchaudio . save (
'reconstructed.wav' ,
decoded_audio ,
sample_rate = 24000
)Ver ejemplos/uso.ipynb para obtener más ejemplos de uso.
Clase principal
from audiotoken import AudioToken , Tokenizers
tokenizer = AudioToken ( tokenizer = Tokenizers . semantic_m , device = 'cuda:0' )Consulte Audiotoken/Core.py para la documentación completa de las API.
Hay 3 API proporcionadas:
tokenizer.encode : codifica archivos/matrices de audio únicos a la veztokenizer.encode_batch_files : codifica múltiples archivos de audio en lotes y guárdelos en disco directamenteencode_batch_files no es seguro ejecutar varias veces en la misma lista de archivos que puede dar lugar a datos incorrectos. Esto se solucionará en un lanzamiento futuro.tokenizer.decode : tokens acústico/semántico decodificador