Python TypeError - AudioSegment/ library : PyDub
lano
-
hypothetix Messages postés 224 Date d'inscription Statut Membre Dernière intervention -
hypothetix Messages postés 224 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai codé un script python :
import random import numpy as np from pydub import AudioSegment # Génère un tableau de 10 secondes avec un bruit aléatoire duration = 10 # en secondes sample_rate = 44100 # Hz frequency = 440 # Hz amplitude = 5000 # 0-32767 (16 bits) white_noise = np.random.normal(scale=0.1, size=int(duration * sample_rate)) sine_wave = amplitude * np.sin(2 * np.pi * frequency * np.arange(sample_rate * duration) / sample_rate) audio_array = white_noise + sine_wave audio_array = np.int16(audio_array * (32767 / np.max(np.abs(audio_array)))) # Convertit le tableau audio en fichier audio audio = AudioSegment( audio_data=audio_array.tobytes(), sample_width=2, frame_rate=sample_rate, channels=1 ) # Exporte le fichier audio en format MP3 filename = "audio_random.mp3" audio.export(filename, format="mp3") print("Fichier audio généré et exporté en format MP3 :", filename)
Seulement quand je l'execute voici ce qui s'affiche :
File "C:\Users\*\AppData\Local\Programs\Python\Python310\lib\site-packages\pydub\audio_segment.py", line 198, in __init__
if len(data) % (self.sample_width * self.channels) != 0:
TypeError: object of type 'NoneType' has no len()
Je pense que le soucis vient directement du script PyDub ou de la manière dont je l'execute.
Pouvez vous m'aider svp.
edit: ajout du langage dans les balises de code
Windows / Chrome 113.0.0.0
Qu'entend tu par là, je me suis référé a ce que j'ai trouvé sur l'utilisation de PyDub.