博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
制作ASCII字符动画
阅读量:3531 次
发布时间:2019-05-20

本文共 1158 字,大约阅读时间需要 3 分钟。

看过Matrix的同学应该还记得,在母舰上一直在计算的电脑屏幕在Neo觉醒的时候,不停的下落的杂乱无章的字符组成了Neo当时所处的场景。其实利用开源和免费的工具,我们可以将现有的视频转换为ASCII字符格式的视频。

需要用到的工具是QQ影音、Ascgen dotNET、MPlayer和Mencoder。QQ影音用于提取视频和音频;MPlayer用于自动截图,可以从www.mplayerhq.hu下载,其中应该包含了mencoder.exe。如果没有的话,可以去下一个mediacoder,里面有mencoder这个工具。Ascgen dotNET用于将图片专为ASCII的,可以从http://ascgendotnet.jmsoftware.co.uk/download下载;最后使用mencoder将图片重新编码为视频。

第一步,找到需要转换的视频,利用QQ影音的“转码/截取/合并”功能,将想要转换的视频和音频分别截取出来。

第二步,用MPlayer打开要前面准备好的视频,播放的同时按“Shift-D”也就是启动“开始/停止自动截图”功能,截取的图片默认是保存在C:\Documents and Settings\Administrator.smplayer\screenshots下面。每分钟的视频大概会有1500多张图片。

第三步,使用Ascgen dotNET的Batch Conversion功能,将截取的所有图片文件或目录加入到列表中,设置好输出目录,选择输出为jpg格式、75%大小,勾选Colour选项,然后点Convert开始转换。这一步会将原始图片转换为以ASCII字符构成的图片。

最后一步,在转换好的ASCII图片目录中,使用mencoder用命令行编码为视频:

[mencoder.exe所在的目录]\mencoder mf://*.jpg -mf w=[生成图片的宽度]:h=[生成图片的高度]:fps=[原始视频的fps]:type=jpg -ovc lavc  -lavcopts vcodec=mpeg4:mbd=2:trell -oac copy -audiofile [第一步提取出来的mp3文件] -o output.avi

其中“生成图片的高度和宽度”可以从查看生成的图片的属性,在“摘要”中有图片的高度和宽度信息。原始视频的fps值一般情况下是30,可以用QQ影音打开视频文件,右键点视频窗口——文件信息——“视频帧率”中查到,也可以查看视频文件的“属性”——摘要——“帧速率”。如果不需要声音的话,可以去掉命令行中“-audiofile [第一步提取出来的mp3文件]”这一部分。

最终在当前目录下生成的output.avi文件就是转换好的ASCII字符视频了。

转载地址:http://affhj.baihongyu.com/

你可能感兴趣的文章
gitflow工作流
查看>>
【MongoDB】update修改器($set、$unset、$inc、$push、$pull、$pop)
查看>>
JAVA 继承
查看>>
电脑键盘突然不能打字,很多键变成快捷键了
查看>>
Hbase表映射Hive表三种方法
查看>>
Java中获取List长度
查看>>
this关键字有什么用处?怎么用? 1.访问成员变量,区分成员变量和局部变量。 2.访问成员方法。 3.访问构造方法。 4.返回对当前对象的引用 5.将对当前对象的引用作为参数传递给其他方法。
查看>>
自学sql
查看>>
基于Springboot的社区开发项目
查看>>
nowcoder 左神算法1
查看>>
code刷题
查看>>
左神进阶2窗口
查看>>
dubbo入门
查看>>
http 错误类型
查看>>
一篇文章解决HTTP 请求头!
查看>>
学习日记02
查看>>
学习日记03
查看>>
学习日记04
查看>>
学习日记08(元组、字典、集合)
查看>>
js自定义数据顺序进行升序或者降序排序
查看>>