使用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库的功能,我们可以方便地进行视频旋转操作。希望这篇博客对您有所帮助!

相关推荐
智购科技自动售卖机厂家7 小时前
2026自动售货机库存热力图分析:从设备分布到补货优先级的数据可视化实践~YH
大数据·python·信息可视化
刘广睿7 小时前
多素材对比同步播放怎么设计?对齐播放与差异高亮的功能复盘
音视频·效率工具·架构设计·桌面客户端·素材管理
鹿鹿学长7 小时前
微软把语音转写打到 0.1 美元/小时:5 个月降价 72%,AI 音频进入地板价时代
python·自动化
weixin_440730507 小时前
使用pytest中方法控制执行步骤(test_begin.py、test_end.py,@pytest.mark.run(order=1))
开发语言·python·pytest
2601_962100737 小时前
AI批量生成视频的工程化复盘(2026):一条能断点续跑、不重复扣量的出片脚本
人工智能·音视频
小柯南敲键盘7 小时前
跨境电商批量图片翻译与视频字幕翻译,就用跨马AI工具
大数据·人工智能·python·音视频
心易行者8 小时前
Python自动化测试7步落地法:用python在线运行省掉90%环境配置时间
java·开发语言·人工智能·python·log4j·ai编程
Boop_wu8 小时前
[LangGraph] 案例 2 : 支持搜索的智能代理系统
服务器·windows·python·langchain
可乐鸡翅yeah_8 小时前
FFmpeg 与浏览器 HLS 播放表现差异,定位跨客户端兼容问题
ffmpeg·音视频·m3u8·m3u8在线·音视频在线播放
2601_962297258 小时前
Python、Pytest、Allure、Selenium和Jenkins实现自动化测试集成实例
python·selenium·jenkins·pytest·allure