Zulko / moviepy

Video editing with Python
https://zulko.github.io/moviepy/
MIT License
12.09k stars 1.51k forks source link

Can't Convet Chunk to AudioFileClip!! #2050

Open IronSpiderMan opened 8 months ago

IronSpiderMan commented 8 months ago

i want delete the silence part of audio, but i cant't convert the chunk to audiofileclip, this is my code:

import numpy as np
from moviepy.editor import *

audio = AudioFileClip("tmp/1696903756.3102827.mp3")
none_silent_chunks = []
for chunk in audio.iter_chunks(chunksize=1000):
    clip = AudioFileClip(chunk)
    if not np.all(chunk == 0):
        none_silent_chunks.append(AudioFileClip(chunk))
audio = concatenate_audioclips(none_silent_chunks)
audio.write_audiofile("result2.mp3")

this is the error:

Traceback (most recent call last):
  File "D:\Workplace\Chatbot\prompts.py", line 8, in <module>
    clip = AudioFileClip(chunk)
           ^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Administrator\AppData\Roaming\Python\Python311\site-packages\moviepy\audio\io\AudioFileClip.py", line 70, in __init__
    self.reader = FFMPEG_AudioReader(filename, fps=fps, nbytes=nbytes,
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Administrator\AppData\Roaming\Python\Python311\site-packages\moviepy\audio\io\readers.py", line 51, in __init__
    infos = ffmpeg_parse_infos(filename)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Administrator\AppData\Roaming\Python\Python311\site-packages\moviepy\video\io\ffmpeg_reader.py", line 244, in ffmpeg_parse_infos
    is_GIF = filename.endswith('.gif')
             ^^^^^^^^^^^^^^^^^
AttributeError: 'numpy.ndarray' object has no attribute 'endswith'

it seem the class treat my chunk to a filename, but the document said it could be sound array. please help!! thank you!!

IronSpiderMan commented 8 months ago

it's solved, the document is wrong, if you want convert array to AudioClip, you should use AudioArrayClip, see this :

https://stackoverflow.com/questions/77262677/when-i-useing-moviepy-to-convert-chunk-to-a-audiofileclip-it-s-failed

keikoro commented 4 months ago

it's solved, the document is wrong,

What exactly do you mean, are you talking about the documentation? Could you point to the file with the incorrect info? Thank you.