Lan Tian @ Blog

Bad Apple NG 修正增强版本

这次更新修正了几个错误。 1.帧率统计功能实际上是错误的(我脑抽写出的代码),全片过程中帧率一般维持在20FPS不变。现已将FPS统计改成处理延时。(PS:对于处理延时,程序自动调节) 2.有TX反馈说64位OS下运行不正常,八成是int64的问题,现在已经全部改成longint,问题应该解决。 3.加了个统计功能(把第三行stat=true改成stat=false可以关掉)。 数据文件下载:/usr/uploads/2013/03/badapple.7z 源码:(自己用FPC 2.6编译)...

Bad Apple NG:增强版 Bad Apple 播放系统

UPDATE:如果碰到打不开、运行错误2什么的问题,请在Bad Apple 命令行动画版看说明下数据文件!!! 上次我的Bad Apple 命令行动画版成功被同学WotorDho转载,并且进行了增强,主要是判断延时,以便控制系统卡的时候FPS保持基本不变。可惜他用的是他编写文澜杀时使用的自建Unit XCrt,冗余代码多不说,还不好懂。 我研究了一下XCrt,搞懂他的原理,并且对自己的播放器进行修改,达到了一样的效果。(理论上还会快一点) 同时,由于之前Telnet传输时采取整幅整幅画面传输,浪费了大量流量,我也进行了优化,也就是判断每个像素点是否相同,如果不同就只改像素点,可以有效减小传输带宽。我称之Bad Apple NG(NG为Next Generation,下一代)。VPS上的Telnet演示将稍后更新。 上源代码:...

用电驴断头档发现更多驴友,加快下载速度

电驴(eMule)是一个现在很有名的P2P协议,电驴下载软件用户可以在网上搜索其他电驴用户,并且获取自己需要的资源。 电驴协议分两部分:一部分是ED2K,它的原理和BT差不多。ED2K要求电驴客户端里保存有一个服务器列表,电驴下载时客户端连接到服务器,并从服务器上下载到其他用户的列表,然后进行连接、下载。这和BT协议里的Tracker服务器的作用是相似的。但是KAD网络部分是它特别的地方,在KAD网络中,电驴客户端可以不通过服务器,直接在网上搜索用户。 但是电驴的KAD搜索速度很慢,因为如果在网上一个个IP搜过来,是很累的事情。于是电驴就允许在ED2K网上交换KAD,也就是电驴通过ED2K查到客户端,交换KAD,再连接KAD,再交换,以此类推。但是反复连接也需要大量连接时间。 于是就有网友想出一个办法:如果让电驴不停下载一个文件,这样电驴客户端就可以通过这个文件不停交换KAD,...

Ubuntu 安装 LRC 歌词显示插件和开启类 SRS WOW 音效

我的华硕笔记本原先Windows 7下的声卡驱动自带一个叫ASUS Sonic Focus的技术,原理就是通过对音频的均衡器调节做到心理学杜比环绕,也就是让人心理上以为声音是环绕声。开启Sonic Focus后,我觉得音效好多了。(我不是耳机党) 但是在Ubuntu上,自然不会有Sonic Focus,华硕才没空对付这样一个升级频繁的系统。Dolby和SRS等也不会给Linux支持,所以开源社区有大神就写出了Extra Stereo,用于替代这些功能。还有一个Crystalizer,也就是增强高频声音响度让声音清澈动听,用过创新声卡和创新X-Fi的人应该知道。 同时,在Ubuntu上听歌,没有歌词是最痛苦的。Rhythmbox自带个什么歌词自动下载,结果我打开根本没用……没办法,自己去网上找吧。 于是,我找到了OSD Lyrics。...

Bad Apple 移植到 Telnet 中并成功放映

今天折腾了半天,把Bad Apple折腾到了我VPS的Telnet里面,用的就是我早些时候发的命令行动画版。 如果大家想看,telnet xuyh0120.tk 或 telnet 5.175.156.249 Round 1. 移植到SSH 因为本来和同学说好我要在SSH下折腾出一个,所以就先用这个了。首先把Bad Apple传到VPS上,我存在/opt/badapple。这个文件夹里两个文件:badapple和badapple.in(资源文件,我改过扩展名)。 12345678useradd badapplepasswd badapple# 密码我设的badapplesu badapple# 切换过去chsh# 输入/opt/badapple/badappleexit SSH登录看效果,结果Error 2,找不到资源文件。我就在本地重新编译一遍(VPS上没FPC),把路径从相对改成绝对,...

Bad Apple 命令行动画版

Bad Apple 是岛国东方幻想乡制作的一个动画,全动画采用类似皮影戏的方式,只有黑白,但是做到了3D画面,而且全部手绘!效果非常好,没有任何跳帧丢帧现象。 因为它的黑白特性,大群人开始尝试将它移植到各种平台上,我见过的就有计算器、树莓派,还有人把它用javascript放了出来。我也写了一个Pascal程序用来放Bad Apple,不过是全命令行的。 编译好的程序我懒得放了,而且我用的是Linux,Windows用户下载了也没用,所以我把源代码放出来,你们自己用FPC编译吧。 12345678910111213141516171819202122232425262728293031323334353637uses crt;var fin:text; i:longint; s:string;begin // 链接源文件并准备读取 assign(fin,...

W3 Total Cache 实现内存缓存

W3 Total Cache默认使用硬盘作为缓存,对于一些虚拟主机用户他们只能选择这个,但是对于VPS用户,他们的选择就大的多了,尤其是买到一些超售技术较好的VPS商(Host1Free?)硬盘速度稍微偏慢,就可以利用你多余的内存来做缓存了。 我自己先后在SAE、OpenShift、Host1Free VPS上搭了3个WP测试站,在这三者中只有VPS可以DIY,所以今天就对它开刀。(PS:SAE的本地文件读写限制搞得W3 Total Cache连设置都保存不了) 另外,一些PHP Opcode缓存软件(比如Zend Optimizer(不是Zend Guard),eAccelerator,XCache,APC等)也被W3TC支持,可以作为另一种方式的内存缓存,当然速度会略慢。 1....

用证书验证Linux远程登录

一般人远程登录Linux Shell都是敲密码,烦不说,一旦你的密码在全世界都一样,再遇到CSDN 600万密码大泄漏的事件,你的VPS也差不多完了。所以我们可以用一种更加方便和安全的方式替代密码,也就是RSA加密的证书文件。 首先,我们要生成一个证书。 12cd ~/.sshssh-keygen -t rsa 这时你的.ssh目录里应该多出来id_rsa.pub和id_rsa,其中后一个文件保管好,是你的密码,前一个是你的公钥,可以全世界去发布。然后我们要设置一下我们的VPS。 首先用FileZilla或者WinSCP把你的id_rsa.pub上传到服务器的~/.ssh里,并重命名为authorized_keys,注意你想用哪个用户登录就copy到哪个用户的.ssh下,比如用root登,就是/root/.ssh,用lantian登就是/home/lantian/.ssh。...

缓存插件的正确使用方法

今天去Blog @ Mr.Ducky转,发现他首页上导航栏是4个,进了分页就是6个,一问他,是缓存出了问题…… 缓存插件Bug会对我们造成很大的困扰。所以我们一定要学会正确地使用缓存插件。 1.当你发了一篇新文章,你的网站首页就会更新,但是如果有缓存插件在,它不会管你的新文章,会将以前的首页返回回去,导致访客看不到最新的文章,所以你要及时清理缓存。当然W3TC、WP Super Cache等插件都支持自动清理。 2.当你对网站模板开刀,开完刀一定要记得清理缓存,否则你会死的很惨(据模板修改量而定) 3.随时检查你的网页各个分页的显示内容是否一致,尤其是导航栏、最新文章之类的地方,一旦不一致,你就要马上刷新缓存,否则可能会搞出更大的Bug。 4.对于登陆用户和不登陆用户显示不同的页面,要做好判断,比如禁止登陆用户的缓存,甚至在极端情况下要禁止这一个页面的所有缓存。...

为什么香港CDN会比美国CDN慢

PS:我绝对不会让植入广告出现在我的文章里,我植入的除外!_ CDN,也就是内容分发服务,可以为你的网站在某个位置建立一个分站,其内容与你的原始站点相同。同时,这些分站还能保存你原有的一些静态资源,如JS、CSS、图片,让你的网站访问更快。有时CDN还能优化某两地之间的网络状况。 比方说,我的网站在B地,我(以及我的访客)在A地,从A地到B地的宽带需要经过C地,但是C地的宽带质量不好。这时,我Ping我的网站,就会出现不同程度的丢包,一旦数据包丢失,客户端只能等待一段时间,见服务器无响应,再次发包,会导致网站打开速度变慢。而此时,我使用了D地的CDN,此时CDN就会绕过宽带不好的C地,丢包率明显降低,就可以提高网站的速度。 123A---->C(X)...