使用Python和ffmpeg旋转WebM视频并保存为MP4文件

简介:

在本篇博客中,我们将介绍如何使用Python编写一个程序,结合wxPython和ffmpeg模块,来旋转WebM视频文件并将其保存为MP4格式。我们将使用wxPython提供的文件选择对话框来选择输入和输出文件,并使用ffmpeg库来进行视频旋转操作。让我们开始吧!

C:\pythoncode\rationvideo90.py

步骤:

1. 准备工作

首先,确保您已经安装了Python、wxPython和ffmpeg库。您可以使用pip来安装这些库:

bash 复制代码
pip install wxPython ffmpeg-python

2. 编写代码

下面是一个示例代码,用于旋转WebM视频文件并保存为MP4格式:

python 复制代码
import wx
import ffmpeg

def rotate_video(input_file, output_file):
    try:
        # 调用ffmpeg进行视频旋转
        ffmpeg.input(input_file).output(output_file, vf='transpose=1', vcodec='libx264').run()
        print("视频旋转完成!")
    except ffmpeg.Error as e:
        print("视频旋转失败:", e.stderr.decode())

# 使用wxPython模块选择输入和输出文件
app = wx.App()
dialog = wx.FileDialog(None, "选择输入文件", wildcard="WebM视频文件 (*.webm)|*.webm", style=wx.FD_OPEN)
if dialog.ShowModal() == wx.ID_OK:
    input_file = dialog.GetPath()
    output_file = dialog.GetPath() + "_rotated.mp4"
    rotate_video(input_file, output_file)
dialog.Destroy()
app.MainLoop()

3. 运行程序

保存以上代码为一个Python脚本(例如rotate_video.py),然后在命令行中运行该脚本:

bash 复制代码
python rotate_video.py

程序将弹出一个文件选择对话框,请选择您要旋转的WebM视频文件。程序将自动将视频旋转90度并保存为MP4格式。旋转后的视频将在同一目录下以_rotated.mp4作为后缀名进行保存。


4. 结论

在本篇博客中,我们介绍了如何使用Python编写一个程序,结合wxPython和ffmpeg模块,来旋转WebM视频文件并将其保存为MP4格式。通过使用wxPython提供的文件选择对话框和ffmpeg库的功能,我们可以方便地进行视频旋转操作。希望这篇博客对您有所帮助!

相关推荐
孤狼warrior4 小时前
YOLO目标检测 一千字解析yolo最初的摸样 模型下载,数据集构建及模型训练代码
人工智能·python·深度学习·算法·yolo·目标检测·目标跟踪
Katecat996634 小时前
YOLO11分割算法实现甲状腺超声病灶自动检测与定位_DWR方法应用
python
玩大数据的龙威5 小时前
农经权二轮延包—各种地块示意图
python·arcgis
ZH15455891315 小时前
Flutter for OpenHarmony Python学习助手实战:数据库操作与管理的实现
python·学习·flutter
belldeep5 小时前
python:用 Flask 3 , mistune 2 和 mermaid.min.js 10.9 来实现 Markdown 中 mermaid 图表的渲染
javascript·python·flask
喵手5 小时前
Python爬虫实战:电商价格监控系统 - 从定时任务到历史趋势分析的完整实战(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·电商价格监控系统·从定时任务到历史趋势分析·采集结果sqlite存储
喵手5 小时前
Python爬虫实战:京东/淘宝搜索多页爬虫实战 - 从反爬对抗到数据入库的完整工程化方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·京东淘宝页面数据采集·反爬对抗到数据入库·采集结果csv导出
凉辰5 小时前
使用uni.createInnerAudioContext()播放指定音频(踩坑分享功能)
开发语言·javascript·音视频
B站_计算机毕业设计之家6 小时前
猫眼电影数据可视化与智能分析平台 | Python Flask框架 Echarts 推荐算法 爬虫 大数据 毕业设计源码
python·机器学习·信息可视化·flask·毕业设计·echarts·推荐算法
PPPPPaPeR.6 小时前
光学算法实战:深度解析镜片厚度对前后表面折射/反射的影响(纯Python实现)
开发语言·python·数码相机·算法