首页 > 解决方案 > Python-如何从一个文件中复制声音并将其粘贴到另一个文件中?

问题描述

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

有任何想法吗?

这是我的视频编辑脚本:

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()

标签: pythonfileaudio

解决方案


看来您可以从视频文件中提取声音,然后使用 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

使用 python 进行视频编辑:为有声视频添加背景音乐


推荐阅读