视频文件后缀
把一个视频文件后缀改成txt,得到是一串代码,那么反过来,有没有一种规律,编写一段代码然后生成视频?
这个问题让我想起了一个古老的段子:一个哥们请一位大神来家里做系统,家里没有系统光盘,于是大神要了一张空白盘和一根针,在光盘上戳出来一个系统安装文件。
在理论上可行,前提是,大神知道系统文件在光盘的坑凹排列规律,第二,针尖要比光子要小。
第三,需要时间,并且不能有任何差错。
总之一句话这不是人能干的事。
话说回来,能不能用纯代码编写出一个视频文件?答案是显然的。
无论计算机里的任何文件,其本质都是一串二进制代码。
因此理论上来说,如果你对这套编码规则相当熟悉,完全是可以手打纯代码编写出一部视频,但是你到死的那天都写不完。
中间有两个要素,第一,需要大量的时间,第二,任何一处都完全不能出错。
所以这不是人干的事情。
计算机起到的作用就是代替人类去做那些复杂而且精确的工作。
在这个问题中,你似乎发现了这个不得了的秘密:你用txt打开一个avi,发现它不过是一长串的代码和英文,但你可能忽略了里面还包含有乱码和你不认识的字符。
出现这种情况是因为txt压根无法解析这个文件,你看到的这些代码是完全没有意义的。
你可以做一个小试验,你用txt打开这个文件以后,不做任何操作再关闭它,选择不保存,把后缀改回avi,那么这个视频还可以播放。
如果你在关闭的时候选择了保存或者另存为,再改回avi,那么你得到的是一个打不开的文件。
为什么会这样?因为在你保存的时候,txt会按照自己的编码规则丢弃掉那些它不理解的信息,所以这个文件就变得不可读。
所以想用txt编写程序或者文档是别想了,写个批处理文件还是可以的,它毕竟处理不了太高级的东西。
你愿意将一块碎成沫的镜子一块块拼起来吗?当前不太可能会发现这种规律,就算有的话也是十分复杂的,以当前的技术,计算能力还不能做到。
视频是怎么存储的?视频可看做是一系列图片的组合,专业术语叫做帧。
一张图片(这里指的位图,不说向量图)是一个个点组成,一个点像素值通常使用某种编码当式进行存储,比如代表三原色的红黄蓝。
实际上视频不是简单的一堆图片的罗列,图片序列间是有规律的,不用存储每张图片,部分采用差值的形式。
做个类比,视频可看做是一堆的二维图片构成的,一篇文章可看做是一堆的一维文字构成的。
那一堆文字怎么生成一篇文章,随便拼凑肯定是不行的,一篇文章不近要词法语法语义正确,还要表达一定的观点。
视频就更复杂了,通过一堆的字节码就更难生成图面清晰,内容连贯的的视频。
虽然说当前的人工智能可以根据大量的文章生成语句通顺的文章,但是其表达的观点思想还是不能控的,视频也一样。
所以说当前还不太可能。
![](http://yyk.iask.sina.com.cn/pic/fimg/160992406395076974215.jpg)