python 音视频合并

目录

moviepy

ImageMagick安装

ffmpeg命令合成:

添加字幕文件:

添加字幕文本:

pipeline添加字幕:


moviepy

python(opencv + pyaudio + moviepy)实现录制音视频文件并合并_ubuntu使用python的sounddevice+opencv录制音视频-CSDN博客

ImageMagick安装

关于Window10系统在Python上安装Imagemagick遇到的问题及解决方案_imagemagick环境变量-CSDN博客

ffmpeg命令合成:

【实操】python opencv将图片合成视频,并插入音频_python 视频添加音乐-CSDN博客

添加字幕文件:

python 复制代码
from moviepy.editor import *
import pysrt

def add_subtitles(video_path, subtitles_path, output_path):
    # 读取视频和字幕文件
    video = VideoFileClip(video_path)
    subs = pysrt.open(subtitles_path)

    # 创建一个函数,用于在视频中添加字幕
    def add_subtitle_frame(frame, t):
        subtitle = subs.at(t)  # 获取当前时间点的字幕
        txt = TextClip(subtitle.text, fontsize=24, color='white', stroke_width=2)  # 创建一个字幕文本片段
        txt = txt.set_position(('center', 'bottom')).set_duration(video.duration)  # 设置字幕位置和持续时间
        return CompositeVideoClip([frame, txt])  # 将字幕和视频帧合并

    # 将字幕添加到视频中的每一帧
    video = video.fl(add_subtitle_frame)

    # 保存添加字幕后的视频
    video.write_videofile(output_path)

# 调用函数来给视频添加字幕
add_subtitles('video.mp4', 'subtitles.srt', 'output.mp4')

添加字幕文本:

python 复制代码
import cv2
from moviepy.editor import *

# 打开视频文件
video = VideoFileClip("input.mp4")

# 获取视频的帧速率
fps = video.fps

# 获取视频的宽度和高度
width, height = video.size

# 初始化一个文本剪辑
text = TextClip("Hello, World!", fontsize=70, color="white", bg_color="black")

# 将文本剪辑添加到视频中间
text = text.set_position(("center", "center")).set_duration(video.duration)

# 将文本剪辑与视频合并
final = CompositeVideoClip([video, text])

# 保存最终的视频文件
final.write_videofile("output.mp4", fps=fps)

pipeline添加字幕:

python 复制代码
import cv2
import pandas as pd
from moviepy.editor import VideoFileClip

def pipeline(frame):
    try:
        cv2.putText(frame, str(next(dfi)[1].sentence), (0, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 0), 3, cv2.LINE_AA, True)
    except StopIteration:
        pass
    # additional frame manipulation
    return frame

dfi = pd.read_csv('data.csv').iterrows()
video = VideoFileClip("vid.mp4")
out_video = video.fl_image(pipeline)
out_video.write_videofile("vidout.mp4", audio=True)
相关推荐
默_笙1 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
小羊没烦恼!1 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
qq_426003961 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫1 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
美狐美颜SDK开放平台1 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
长沙三为智能科技1 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
伞伞悦读1 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
只睡四小时1 天前
Canvas 弹道联机实战:700 行 + 固定时间步长
python·websocket·html5·游戏开发·canvas
C语言小火车1 天前
C/C++ 为什么需要编译器?
开发语言·c++
奇思妙想聪明勤奋的小羊1 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型