Google Colab中MoviePy运行报错:imageio.ffmpeg.download()已弃用
解决Google Colab中MoviePy获取视频时长的报错问题
问题分析
报错imageio.ffmpeg.download() has been deprecated. Use 'pip install imageio-ffmpeg' instead.的核心原因是:新版MoviePy已不再使用imageio.ffmpeg.download()方式调用FFmpeg,而是需要单独安装imageio-ffmpeg依赖包,单纯降级imageio无法解决依赖适配问题。
解决方案一:修复MoviePy依赖并修正脚本
- 清理Colab环境中可能冲突的旧依赖,重新安装配套的包:
!pip uninstall -y imageio imageio-ffmpeg moviepy !pip install moviepy imageio-ffmpeg
- 修正原脚本(补上缺失的
os导入,避免额外报错):
import os from moviepy.editor import VideoFileClip # 切换到视频所在目录 os.chdir('/content/my_data') clip = VideoFileClip("my_video.mp4") print(f"视频时长:{clip.duration} 秒")
解决方案二:用FFprobe直接获取(更轻量高效)
如果只是需要获取视频时长,无需安装MoviePy这类重型库,直接用FFmpeg的ffprobe工具更高效:
- 安装FFmpeg(Colab默认可能已安装,若未安装则执行):
!apt-get install -y ffmpeg
- 执行命令获取时长:
!ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 /content/my_data/my_video.mp4
输出结果即为视频时长(单位:秒)。
内容的提问来源于stack exchange,提问作者user136555
相关产品推荐
相关产品推荐

