簡體   English   中英

Python concatenate_videoclips,奇怪的音頻和視頻故障

[英]Python concatenate_videoclips, strange audio and video glitches

我將視頻剪輯與:

clip1=VideoFileClip('cutclip35.mp4')
clip2=VideoFileClip('cutclip165.mp4')
clip3=VideoFileClip('cutclip24.mp4')
final_clip = concatenate_videoclips([clip1,clip2,clip3],method='compose')
final_clip.write_videofile("my_concatenation.mp4",fps=20)

並且出現非常奇怪的故障,我不知道我做錯了什么。 任何幫助表示贊賞!

以下是視頻: https://www.dropbox.com/sh/hbd4cwooy9xjf19/AACLcv4Rqtmj7YmGzbpmCTtsa?dl=0

使用 python 3.8.10

我也面臨同樣的問題。 由於編碼問題,連接.mp4文件直接導致故障。

為了避免gltiches的最好方法,同時串接是將轉換.mp4影片.ts vidoes,CONCAT的.ts視頻並轉換成最終.ts視頻.mp4

使用 MoviePy 完成所有這些過程可能很耗時,因此,我們可以直接使用ffmpeg來完成所有這些。

def ConcatVideos(input_video_path_list:List[str], output_video_path:str, temporary_process_folder:str):    
    concat_file_list:List[str] = []
    for idx, input_video_path in enumerate(input_video_path_list, start=1):

        # convering individual file to .ts #
        temp_file_ts = f'{temporary_process_folder}/concat_{idx}.ts'
        os.system(f'''ffmpeg -y -loglevel error -i {input_video_path} -c copy -bsf:v h264_mp4toannexb -f mpegts {temp_file_ts} ''')
        concat_file_list.append(temp_file_ts)

    # concatenating .ts files and saving as .mp4 file #
    # ffmpeg will take care of encoding .ts to .mp4 #
    concat_string = '|'.join(concat_file_list)
    os.system(f'''ffmpeg -y -loglevel error -i \
        "concat:{concat_string}" -c copy {output_video_path}''')
    
    return output_video_path

final_video_path = ConcatVideos(['input1.mp4','input2.mp4'], 'final_video.mp4', 'Temp')
# make sure '/Temp` folder exists or create it before-hand.

我遇到過類似的問題。 我所做的是分別連接音頻和視頻,然后再將它們組合起來。

video_clip = concatenate_videoclips(clips,method='compose')
audioConc = concatenate_audioclips(audio_clips)
video_clip=video_clip.set_audio(audioConc)
video_clip.write_videofile("video-output.mp4",fps=24)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM