作者 | 小帅b
来源 | 学习python的正确姿势废话先不多说,上视频:哈哈,是不是又有点内味了?今天就想给你介绍一个好玩的库,叫做 video-to-ascii,主要是将视频转化为 acii 编码字符然后输出到控制台。其中的原理主要是视频是由很多帧构成的,所以把它们抽出来,然后将字符代替对应画面的像素,从而输出到终端上。因为 Python 操作视频需要使用到 opencv 这个库,所以先安装下: pip3 install opencv-python 接着安装 video-to-ascii :
来源 | 学习python的正确姿势废话先不多说,上视频:哈哈,是不是又有点内味了?今天就想给你介绍一个好玩的库,叫做 video-to-ascii,主要是将视频转化为 acii 编码字符然后输出到控制台。其中的原理主要是视频是由很多帧构成的,所以把它们抽出来,然后将字符代替对应画面的像素,从而输出到终端上。因为 Python 操作视频需要使用到 opencv 这个库,所以先安装下: pip3 install opencv-python 接着安装 video-to-ascii :
pip3 install video-to-ascii
然后就可以使用了,把你在电脑里珍藏已久的某老师教学视频拿出来,使用如下命令:
video-to-ascii -f 你的视频路径像这样:
如果你用的是新版本 Python 3.8 ,运行起来可能会报错:
这是因为 Python 新版本的 time 模块做了一点改动,如果你看过文档,你就会发现 time 的 clock 方法被特么的删掉了:
不过别担心,有替代方法:
也就是说根据你的需要,可以用以下两个方法代替 clock 方法:
time.perf_counter()
time.process_time()
打开你 site-packages 下刚安装的 video_to_ascii 文件:
site-packages/video_to_ascii/render_strategy/ascii_strategy.py
修改一下 120 行和 135 行的代码:
这样在 Python 新版本中就可以完美运行了。
如果你不想要输出的字符带有颜色,可以这样:
video-to-ascii -f dance.mp4 --strategy just-ascii
你还可以把这个直接生成 shell 脚本文件:
video-to-ascii -f dance.mp4 -o dance.sh
搞完之后可以直接 sh 运行:
如果你还要让她们一边跳舞一边播放视频的声音,那么就可以这样:
video-to-ascii -f dance.mp4 -a --with-audios
期待你作出不一样的动画效果哦~