Python- 如何从一个文件中复制声音并将其粘贴到另一个文件中?

Python- How can I copy sound from one file and paste it into other?

我正在从事一个视频编辑项目,该项目编辑原始视频并创建一个新文件我被卡住了,因为软件创建的新文件中没有声音。所以我想从原始文件中复制声音并将其粘贴到新文件中(我在新文件中有视频,但视频文件没有任何声音 - 我想从原始文件并在我的新文件中使用此声音)

有什么想法吗?

这是我的视频编辑脚本:

import io, re, requests
from PIL import  Image, ImageOps, ImageEnhance, ImageChops
import cv2
import numpy as np

cap = cv2.VideoCapture('original.mp4')

fps = cap.get(cv2.CAP_PROP_FPS)

frame_width = int(cap.get(3))
frame_height = int(cap.get(4))
   
size = (frame_width, frame_height)
result = cv2.VideoWriter('output.avi', cv2.VideoWriter_fourcc(*'MJPG'), fps,size)

while cap.isOpened():
    ret,frame = cap.read()
    
   #editing part

    result.write(edited_frame)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

看来你可以从视频文件中提取声音,然后使用 moviepy 将其“粘贴”到无声 mp4 文件中(没有测试这个,仅基于阅读)

video = mp.VideoFileClip(r"sample.mp4")
video.audio.write_audiofile(r"extracted_sound.mp3")

然后粘贴声音:

import moviepy.editor as mpe
my_clip = mpe.VideoFileClip('output_video.mp4')
audio_background = mpe.AudioFileClip('extracted_sound.mp3')
final_audio = mpe.CompositeAudioClip([my_clip.audio, audio_background])
final_clip = my_clip.set_audio(final_audio)

====

基于:

https://dev.to/itsaditya/extracting-audio-from-video-clips-using-python-9d8