Python导入moviepy找不到editor 视频没有声音设置audio_codec参数

moviepy合成视频出错:

    • [问题一:导入moviepy.editor找不到editor,No module named moviepy.editor](#问题一:导入moviepy.editor找不到editor,No module named moviepy.editor)
    • 问题二:合成的视频没有声音

问题一:导入moviepy.editor找不到editor,No module named moviepy.editor

from moviepy.editor import *

改为

from moviepy import *

或者

from moviepy import VideoFileClip,AudioFileClip,CompositeVideoClip

问题二:合成的视频没有声音

视频没有声音 导出文件时设置audio_codec='aac'

运行环境:

MAC + Python3.12 + moviepy-2.1.1

安装moviepy

bash 复制代码
> pip install moviepy

如果提示moviepy安装成功, import 语句做了修改也不行的话。完整代码见末尾。以下是问题处理步骤。

首先查看moviepy安装信息

bash 复制代码
> pip show moviepy

结果显示如下:

Location: /Users/rose/pythonProject1/.venv/lib/python3.12/site-packages

Requires: decorator, imageio, imageio_ffmpeg, numpy, pillow, proglog, python-dotenv

去上面显示的Location路径/Users/rose/pythonProject1/.venv/lib/python3.12/site-packages中查看是否有Requires信息中显示的这些库。如果不全,执行对应的安装命令,已经有的就不需要再安装了。这一步是保证有需要的其他依赖库。

bash 复制代码
> pip install decorator imageio imageio_ffmpeg numpy pillow proglog python-dotenv

把Location路径/Users/rose/pythonProject1/.venv/lib/python3.12/site-packages下的 editor 和 moviepy文件夹删除,重新执行命令安装moviepy

bash 复制代码
> pip show moviepy

安装成功后,重启 Pycharm.

bash 复制代码
//注意操作.venv目录时,.venv默认是隐藏文件夹,
//MAC下显示隐藏文件夹命令
defaults write com.apple.finder AppleShowAllFiles -bool true 
//重启 Finder,使更改生效
killall Finder
bash 复制代码
//处理完对应的文件删除和安装后,重新恢复文件夹隐藏
//MAC 下恢复隐藏文件夹命令
defaults write com.apple.finder AppleShowAllFiles -bool false
//重启 Finder,使更改生效
killall Finder

完整代码如下:

python 复制代码
#以前的写法
#视频音频合并
from moviepy.editor import *
#加载视频音频素材
videoData = VideoFileClip('video.mp4')
audioData = AudioFileClip('audio.mp4')
#往视频中添加音频
finalVideo = videoData.set_audio(audioData)
#导出文件
finalVideo.write_videofile('final.mp4')
python 复制代码
#修改后的写法
#视频音频合并
from moviepy import *
#加载视频音频素材
videoData = VideoFileClip('video.mp4')
audioData = AudioFileClip('audio.mp4')
#往视频中添加音频
finalVideo = videoData.with_audio(audioData)
#导出文件
finalVideo.write_videofile('final.mp4',codec='libx264',audio_codec='aac')
注意:
MAC合并后生成的视频没有声音是因为没有添加audio_codec='aac'
相关推荐
学地理的小胖砸4 分钟前
【Python 操作 MySQL 数据库】
数据库·python·mysql
安迪小宝5 分钟前
6 任务路由与负载均衡
运维·python·celery
Blossom.1187 分钟前
使用Python实现简单的人工智能聊天机器人
开发语言·人工智能·python·低代码·数据挖掘·机器人·云计算
lisw0519 分钟前
Python高级进阶:Vim与Vi使用指南
python·vim·excel
科技小E25 分钟前
EasyRTC嵌入式音视频通信SDK打造带屏IPC全场景实时通信解决方案
人工智能·音视频
ayiya_Oese31 分钟前
[模型部署] 3. 性能优化
人工智能·python·深度学习·神经网络·机器学习·性能优化
SoraLuna32 分钟前
「Mac畅玩AIGC与多模态40」开发篇35 - 用 Python 开发服务对接 SearxNG 与本地知识库
python·macos·aigc
noravinsc1 小时前
redis是内存级缓存吗
后端·python·django
王学政21 小时前
LlamaIndex 第九篇 Indexing索引
人工智能·python
百锦再2 小时前
大数据技术的主要方向及其应用详解
大数据·linux·网络·python·django·pygame