
一、写在前面
学习python一月有余了,被高阶函数之类的虐的够呛。向来听说python功能强大,新手友好,遂想找一个小项目练练手,感受下除了枯燥的命令行之外,编程能给我带来的惊喜。
恰巧在 Github 上搜到一个用 PIL 实现图片转字符画的项目,拜读后萌生了写一个视频转字符视频项目的想法。没想到这一写就是一整天,其间查了不少资料,想在这里留下一份记录,顺便与有缘的读者一起分享。
放个成果防代码劝退:
知乎视频www.zhihu.com二、目标与思路流程
目标:在main.py所在的文件夹中放入视频“video.flv”,运行程序后在同文件夹中生成名为“output.mp4”的字符动画(参考效果见视频链接)
参考思路:

我的代码实现:main.py
https://github.com/WLLEGit/VideoToTxt.pygithub.com三、用到的库与函数
主要库:opencv, pillow, moviepy
辅助库:numpy, os, tqdm
函数:1~5实现字符动画,6加入声音,7为可选
1. cap = VideoCapture(); cap.get(); cap.read();
2. cv2.cvtColor(); cv2.resize()
3. img.astype(http://numpy.int) (img为PIL 图片矩阵)
4. Image.new(); ImageDraw.Draw(); multiline_test();
5. VideoWriter_fourcc(); VideoWriter(); wtite()
6. video= VideoFileClip(); video.audio; write_videoFile(); AudioFileClip(); set_audio(); write_videoFile()
7. os.path.exist(); os.remove(); tqdm
现在看不懂?没关系,下面我们会一一