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'
相关推荐
做怪小疯子2 小时前
华为笔试0429
python·numpy
Warson_L3 小时前
Dictionary
python
寒山李白5 小时前
解决 python-docx 生成的 Word 文档打开时弹出“无法读取内容“警告
python·word·wps·文档·docx·qoder
2401_832365525 小时前
JavaScript中rest参数(...args)取代arguments的优势
jvm·数据库·python
Sirius.z5 小时前
第J3周:DenseNet121算法详解
python
2301_779622416 小时前
Go语言怎么用信号量控制并发_Go语言semaphore信号量教程【入门】
jvm·数据库·python
2301_766283446 小时前
c++如何将控制台输出保存到文件_cout重定向到txt【详解】
jvm·数据库·python
小康小小涵7 小时前
基于ESP32S3实现无人机RID模块底层源码编译
linux·开发语言·python
lzjava20247 小时前
Python的函数
开发语言·python
Awesome Baron8 小时前
skill、tool calling、MCP区别
开发语言·人工智能·python