论坛风格切换切换到宽版
  • 13908阅读
  • 48回复

HL视频压制与优化 进阶教程(更新中……) [复制链接]

上一主题 下一主题
离线HappyLee
 

发帖
2687
金钱
100449
威望
2556
贡献值
1187
交易币
3797
只看楼主 倒序阅读 楼主  发表于: 2014-02-06
— 本帖被 xzwpp 执行加亮操作(2014-08-03) —
大家好,策划已久的压制教程终于开始动笔了。本教程不属于按部就班式的傻瓜教程,而是站在比较高的技术层面的,如有任何技术上的错误恳请指正。由于本人也不断在学习中,所用方法也会不断完善,可以肯定的是,本教程也会随之陆续更新。 P9yw&A  
IwRQL%  
先啰嗦几句,说一下压制MJ资源的意义。众所周知,目前MJ的资源以mpg、vob、DVD格式的为主,主要由于是VHS带转换到电脑后的格式多为mpg,且官方发行的基本都是DVD。这类视频均为MPEG-2(有的还是MPEG-1)编码,最大的缺点是在相同品质下码率较高,或是在相同体积下品质较差,简而言之就是性价比太低,不与时俱进。目前最先进,性价比最高的主流视频编码是H.264,又名AVC,是MPEG-4成员之一,主流封装格式为mp4和mkv,性价比比起一般的mpg、avi、wmv等格式那是强太多了。假如MJ的资源主要以这种格式储存和传播,那硬盘空间大概能节省75%左右,不至于存几场低品质演唱会就迅速爆满。 G"Pj6QUva  
..$>7y}  
并且,往往歌迷自己转换出的mpg片源存在各种瑕疵,例如block(马赛克块)、aliasing(锯齿)、halo(光圈)、noise(杂点、杂波)、grain(VHS带常有的背景雪花)、rainbow(彩虹)等,还有各种破损帧,用AviSynth基本都可以修复,如果处理得当只会使片源看上去更好。优化后的压制可不仅仅是提升性价比的压缩了,如果压缩时x264品质设得比较高那可以称为真正意义上的优化。既能使画质看上去更好,又能将视频体积缩小一大半,方便电脑和移动设备上观看,何乐而不为呢? g RU-g  
I~k=3,7<  
必须提前警告一下,压制是高技术含量,费脑力更费CPU的活,需要有足够的智慧、毅力和奉献精神才能完成,只想用傻瓜视频转换法的话那可以下格式工厂…… T#N80BH[  
Ou!)1UFI  
让我们开始吧。首先,需要如下工具,抱歉此处不附链接,请到Google搜索并下载英文最新版,不要在国内网站下汉化版、精简版之类的(或许VirtualDub可以除外): =W |vOfy  
·MeGUI,各种编码工具的套装,它最大的用处是能自动帮我们更新各种工具(尤其是x264),懒得改命令行的话也可以用它直接压制; QRiF!D)Nk  
·AviSynth(建议下2.6.x最新版本),拓展性无比强大的视频处理工具,相比会声会影、AE一类的处理工具最大的优势在于精准,avs脚本可以直接在VirtualDub、某些视频播放器中打开,也可以直接送进x264压缩; 2{gwY85:  
·VirtualDub,简单易用、功能齐全的视频编辑器,处理avi文件最佳,主要用于调试avs脚本; 7_7xL(F/  
·MKVToolnix,其中主要会用到mkvmerge GUI这一工具做mkv封装,偶尔也会用mkvextract GUI做轨道提取用; x' ?.~  
·MediaInfo(选用),方便查看各类视频的编码、码率、帧率等各种参数,不过好多视频播放和编辑软件也能查看; J]\s*,C&  
·Notepad++(选用),用它编写avs脚本或许比记事本更舒服些; e00RT1L  
·若干滤镜,必备的有QTGMC(及其附属一堆滤镜)、SmoothAdjust、dither、LSFmod、aWarpSharp、ChromaShift等…… pBvo M={2!  
[ns&Y0Y`t  
我给大家的建议是,不要用傻瓜式的压制方法,不要用自动的avs生成器,要灵活处理每一个视频,做每一个操作的时候一定要清楚自己在做什么。我压制一个MPEG-2编码视频的一般步骤是:先用DGIndex保存d2v,再写avs脚本导入d2v并加一堆滤镜,用VirtualDub仔细调试,确定无误后调整bat脚本参数,送进x264压缩,把音频用MeGUI压缩成ogg格式,然后用mkvmerge封装成成品mkv。其中最关键的一步便是写avs脚本,下面我来一步步讲解。 @_(nd57oSs  
?3n=m%W,J*  
MPEG-2视频在AviSynth中最好借助DGDecode打开,事先要给mpg、vob、DVD格式的视频导出一个d2v索引文件,这个过程也会顺便提取音频轨。 F6~b#Jz&i  
i4 P$wlO  
我们要用的很多工具都在MeGUI的tools文件夹中附带,打开\tools\dgindex,为其中DGIndex.exe创建一个快捷方式,以后会经常使用这个工具。运行DGIndex,点菜单File→Open(或快捷键F2),打开mpg或vob文件,如果是多段vob的话就把它们都选上(注意不要将DVD菜单之类的都添加进来),DGIndex会自动按照文件名排序。打开后,拉动下方进度条可以浏览视频的全貌,和播放器中的画面不太一样,这是片源的原貌,没有经过反交错和尺寸调整,所以画面会经常有细横条纹,且比例一般会失调,不过都不要紧。如果只是要截取其中的一部分的话,按右下角的“[”和“]”选定头和尾,如果完整都要压制的话那就不必了,直接点菜单File→Save Project(或快捷键F4)生成d2v文件。至于生成的d2v文件是否应和片源放在同一文件夹要看个人习惯,同时提取的音频轨(多为ac3、mp2文件)会和d2v文件出现在同一文件夹,而片源所在的文件夹会出现一log文件,log文件中会包含此片源的分辨率、帧率、显示宽高比、是否交错等信息,用MediaInfo同样可以查看到,这些信息要记住,log文件可删。 BzN/6VEw  
KX]-ll  
下面进入最关键的步骤,写avs脚本。最好在和d2v同一文件夹新建一个txt文本文档,修改后缀名为avs,也可以复制某个自己写过的avs模板并稍加修改,然后用记事本或Notepad++打开它。  'Dnq+  
><MGZ?-N  
一般来说一个avs脚本的框架为,加载滤镜→加载片源→滤镜、滤镜、滤镜……下面贴上我自己目前比较喜欢用的avs脚本模板,经我长期总结而成,各位可以稍作修改纳为己用: W=q?tD~V  
:Xb*m85y  
LoadPlugin("X:\MeGUI路径\tools\dgindex\DGDecode.dll") .0 rJIO  
LoadPlugin("X:\MeGUI路径\tools\avisynth_plugin\Decomb.dll") SZNFE  
LoadPlugin("X:\MeGUI路径\tools\avisynth_plugin\ColorMatrix.dll") 0%vixR52  
LoadPlugin("X:\MeGUI路径\tools\avisynth_plugin\TomsMoComp.dll") PGC07U:B  
LoadPlugin("X:\MeGUI路径\tools\avisynth_plugin\NicAudio.dll") vbW\~xf  
LoadPlugin("X:\XXXX\SmoothAdjust.dll") \z(>h&  
LoadPlugin("X:\XXXX\aWarpSharp.dll") 1 8l~4"|fk  
LoadPlugin("X:\XXXX\ChromaShift.dll") ,i1fv "  
Import("X:\XXXX\Dither.avsi") C{lB/F/|!  
Import("X:\XXXX\LSFmod.v1.9.avsi") /0'fcjOaQ  
Function MVDN(clip c, int nn) { J{v6DYhi  
c "@):*3 4  
super = MSuper(pel=2, sharp=1) jw&}N6^G  
bv2 = MAnalyse(super, isb = true, delta = 2, overlap=4) 6 I>xd  
bv1 = MAnalyse(super, isb = true, delta = 1, overlap=4) 9fk\Ay1P  
fv1 = MAnalyse(super, isb = false, delta = 1, overlap=4) n$Oky-P"  
fv2 = MAnalyse(super, isb = false, delta = 2, overlap=4) _*-'yu8#  
MDegrain2(super, bv1,fv1,bv2,fv2,thSAD=nn) 5>^ W}0s  
} XzTH,7[n  
`qy6 qKl N  
DGDecode_mpeg2source("XXXX.d2v",info=3,cpu=4) Yk*57&QI  
ColorMatrix(hints=true,interlaced=true,threads=0) E* DVQ3~  
#TomsMoComp(-1,0,1) qS`|=5f  
#QTGMC(Preset="Very Slow",SourceMatch=3,Lossless=2,Sharpness=0.4,FPSDivisor=2) P(gID  
#MVDN(400) !B38! L  
#Lanczos4Resize() b "3T(#2<*  
#ColorYUV(analyze=true) i)^ZH#G p  
#SmoothLevels(16,1,235,16,235) 7Mb t*[n  
#SmoothTweak(saturation=1.2) 2\8\D^   
#LSFmod(50) ;. [$  
GradFun3(smode=2) \EfwS% P  
Y8xnvK*  
无论是加载滤镜还是使用滤镜,都是avs脚本的关键。MeGUI的tools文件夹中附带了一些关键的滤镜,常用的滤镜(尤其是QTGMC和它必备的那堆滤镜)建议放在AviSynth安装目录的plugins文件夹里,这样每次打开脚本时就会自动加载,不必写LoadPlugin()了。当然,除了QTGMC的那堆滤镜,其余不常用的滤镜建议放在另外某个专门存放滤镜的文件夹中,需要用的时候就在上方加上一行LoadPlugin()调用,否则每次自动加载需要时间,滤镜过多也有可能互相打架。 P!&CH4+  
Rm 1`D  
avs脚本的语法比较易懂,每加一个滤镜可以另起一行,滤镜名称后面的括号便是参数,每个滤镜的详细参数可Google查找相关帮助,不建议总用其默认参数。也可以把所有滤镜都写在一行,中间用英文句号隔开,格式如:TomsMoComp(-1,0,1).MVDN(400).LSFmod(50)。 6&Ir0K/  
e9~4wt  
可以为素材命名,例如下面的例子: A0k>Nb\c3  
V1=DGDecode_mpeg2source("XXXX.d2v",info=3).ColorMatrix(hints=true,interlaced=true,threads=0).TomsMoComp(-1,0,1).Lanczos4Resize(640,480) d*(\'6?  
V2=DGDecode_mpeg2source("YYYY.d2v",info=3).ColorMatrix(hints=true,interlaced=true,threads=0).Lanczos4Resize(640,480).GradFun3(smode=2) qiryC7.E  
V1.Trim(0,9999)+V2 vj$ 6  
6EWB3.x19  
但容易犯如下错误: ng*E9Puu[  
V1=DGDecode_mpeg2source("XXXX.d2v",info=3).ColorMatrix(hints=true,interlaced=true,threads=0) _ 7.y4zQJ  
TomsMoComp(-1,0,1) >D#}B1(!  
Lanczos4Resize(640,480) R u-rp^a  
~l6Y<-!  
错误原因在于第一行返回值是一个名称而不是视频,修改方法如下: XOU$3+8q5  
V1=DGDecode_mpeg2source("XXXX.d2v",info=3).ColorMatrix(hints=true,interlaced=true,threads=0) [0#hgGO]P  
V1 O3Mv"Py%  
TomsMoComp(-1,0,1) @/FX7O{n:  
Lanczos4Resize(640,480) 4] 1a^@?  
D0i30p`  
 0 XzO`*  
可以看到下方很多滤镜前都加了一个#号,加了#之后,#后面的文字就全变成注释了,也就是说如果你想暂时让某行不执行,不必删除它,在该行前面加个#号即可。由于不同片源情况会有所不同,建议一开始先像我给的模板那样,把关键的滤镜都#化,看看片源的原始样貌,然后再慢慢去掉每行的#号仔细调试。 {Z.@-Tl_  
x~eEaD5m%J  
DGDecode_mpeg2source("XXXX.d2v",info=3,cpu=4):这一行的作用是加载d2v索引以及原始片源,确保路径无误即可,注意后面的cpu=4,它是DGDecode内部的处理滤镜,会消除画面中的block、杂点等mpg压缩遗留故障,绝大多数情况下都会使加载结果变得更好。一般碰到马赛克块极为严重的片源可以改为cpu=6,碰到几乎没有任何问题的片源就可以把它去掉了(默认为0)。 v1)6")8o+  
!*6z=:J  
ColorMatrix(hints=true,interlaced=true,threads=0):色彩校正滤镜,看不出太大影响不过还是建议每次都加,如遇非交错片源最好把interlaced设为false,不过影响也不大。 F DX+  
F-0PmO~3+W  
下面介绍反交错(deinterlace)滤镜。因为MPEG-2片源多为隔行扫描,导入到AviSynth中如果不做去场处理的话变会出现细横条纹的状况(尤其是运动区域)。少许片源无需反交错,也有少许23.976转29.970帧率的片源最好用较为特殊的方式反交错(这个教程中就不提了,建议初学者按常规方法处理)。反交错滤镜种类繁杂,我比较喜欢用的两个是TomsMoComp和QTGMC,TomsMoComp使用动作补偿法反交错,非常快且画面不会存在问题,但一定有损画质,三个参数中第一个参数决定高场或低场优先,如果设为-1则让AviSynth自行判断,后两个不用改。 ':4pH#E  
TVwYFX  
QTGMC是高品质的反交错滤镜,其组成及原理极为复杂,所需附属滤镜一大堆,Google搜索后在Doom论坛可以找到所需滤镜包,仔细按照其中的说明把滤镜和QTGMC脚本统统复制到AviSynth目录的plugins文件夹,别忘了还有系统dll和Masktools滤镜(需按AviSynth版本选择性复制)。滤镜包中的MVtools2和Masktools在avs脚本中也是经常会用到的。 H%aLkV!J  
Y3>\;W*?  
QTGMC的主要缺点就是慢,即便把Preset参数调成“Fast”也会非常慢,导致在VirtualDub中几乎无法实时播放。所以在调试阶段,建议把Preset调成“Fast”(压制前别忘了再改回“Very Slow”),或是用上面的TomsMoComp(-1,0,1)暂时代替一下,至少不要笨到在压制前把两行的#号都去掉,TomsMoComp和QTGMC只能选择一个用。Sharpness即锐化程度,如果不加SourceMatch参数的话默认是1,QTGMC的锐化自然会使细节变得更清晰,不过同时各种杂点也会变得更清晰,同时halo也会增加,所以不建议把此参数开到1以上。在降噪、调整尺寸后再锐化更为合适。FPSDivisor=2的作用是使帧率回归原始(让AviSynth自行判断高场或低场优先),如果不加这个参数那需要在后面加SelectOdd()或SelectEven()选择高场或低场优先,不建议用二倍帧率压制,无明显效果,会大大增加压制的体积,且CPU解码可能会很吃力。 y:[]+  
ZH_4'm!^g|  
MVDN(400):这句对应的是上面我写的MVDN函数,它调用MVtools2中的MDegrain2滤镜对画面进行时间轴降噪,推荐的取值范围在300至800,如遇及其恶劣脏乱的片源开到1000或以上也没问题。由于它非常智能且不做空间轴处理,即使把参数调到最大也几乎不会伤害有用细节,是我最喜欢用的降噪器。因为此降噪滤镜会分析当前帧的前一帧和后一帧,速度会比较慢,如果和QTGMC配合使用则会更慢,建议调试阶段一直#号注释掉,最终压制前再将#号去掉。降噪可以很大程度上提升压制后视频的性价比,让编码器不在noise或grain上浪费码率,不过也会使画面更加干净,背景更为平静。有些人喜欢看干净的画面,而有些人恰恰喜欢让画面充满电影胶片的感觉,所以一些视频处理者不仅不会对grain做去除,还反而会用滤镜(如AddGrain、GrainFactory)人工伪造一些杂点,这种做法非常浪费码率,且给观众的是欺骗性的视觉,如果在追求小体积压制时肯定不推荐。 4[0?F!%  
>Fk `h=Wd  
Lanczos4Resize是LanczosResize的特殊版本,调整尺寸用,其用法是:Lanczos4Resize(目标宽,目标高,选取左,选取上,选取宽,选取高),其中后四个参数选填,例如某720×480的片源,如果用Lanczos4Resize(720,480,0,0,720,480)相当于什么都没改,如果用Lanczos4Resize(640,480)相当于上下左右都不切,将尺寸调整为640×480。但在我们的avs脚本中可以不用其调整尺寸,而是主要用于切去上下左右的黑边和VHS扫描线。这里有必要先强调一下aspect ratio(宽高比)的作用,常见的MPEG-2片源分辨率多为720×480或720×576,但如果用MediaInfo查看视频信息的话,在分辨率后面都会加一个(4:3),而用播放器播放时显示比例也为4:3,显示尺寸一般为640×480、720×540、768×576,其实加在括号里的aspect ratio就是告诉播放器应调整为何种比例播放。压制时万万不可忽略其作用,很多业余级压制容易犯的错误就是宽高比未校正,例如片源分辨率是720×576他就按着这个压缩了,结果出来的图像是5:4,人变瘦了一点还没察觉到。校正宽高比的方法主要有两种,一种是在avs脚本内部用Lanczos4Resize一类的缩放滤镜调整到正常比例,例如720×576可以缩小成720×540也可以扩大成768×576,另一种方法是在avs脚本中保持原始尺寸不变,然后在x264压制时调整--sar参数来校正它(后面x264压制部分还会讲),这样输出的压制文件会和片源有同样的尺寸,而播放器播放时会根据同样的原理将画面显示为4:3。因为所处理的MPEG-2片源大多数需要做去黑边处理,反正要用Lanczos4Resize,建议不如就顺便调整尺寸修正宽高比,又由于多数MJ资源的分辨率名不副实,有些虽然是720×576分辨率,看起来可能连240p都不到,所以调整尺寸时一般无需在意往小缩放,我倒是不建议往大调整,类似将普通480p片源放大成1080p并称之为“高清”的举动我认为没有任何意义。 w{EU9C  
de{YgN  
举个例子,假如我们有一个分辨率为720×480的片源(显示比例为4:3),因为其画质明显没到480p,计划在avs脚本内部就将尺寸修正到640×480。这个片源左侧有9像素黑边,右侧有15像素黑边,上无黑边,下有8像素的VHS扫描线,应如何切除并调整尺寸?先考虑切除黑边的问题,做个简单的数学计算,倘若打算完全切除左右黑边,横向便保留了720-9-15=696像素,而若要保持宽高比不变,则纵向要保留的像素应该是横向的三分之二倍,这个比应该和720:480相等,算得纵向要保留696*3/2=464像素,所以纵向要切去480-464=16像素,而纵向实际应该切除的部分只有下方8像素的VHS线,相当于多切除16-8=8有用像素,这8像素将上下平分4像素,于是语句应该是Lanczos4Resize(640,480,9,4,696,464)。 BM~niW;k  
Vp"Ug,1  
但倘若你宁可左右留少许黑边,也不打算上下多切除有用像素,那就是另一种算法了,根据下方只切8像素,算得左右总共切8*3/2=12像素,而左右总共有24像素黑边,于是平均分得左右各留6像素黑边,所以左侧将切掉9-6=3像素,于是语句应该是Lanczos4Resize(640,480,3,0,708,472)。只是数学计算而已,相信难不倒你,无论选择何种方案需尽量保证切得精准,且比例一定不要失调。 ,GP4I3D  
wD^do  
ColorYUV(analyze=true):调试用的滤镜(最终压制前一定要#掉),主要和SmoothLevels配合来用,会在图像上方加字幕似的文字,上面可以显示LumaY层、ChromaU层、ChromaV层的平均值、最小值、最大值、和降噪后的最小值、最大值。在这里需要科普一下YV12格式,它包含三个层,即一个Luma(亮度)层和两个Chroma(色度)层(U控制蓝色,V控制红色),其中Luma层在压缩时所占比率最高,主要因为人眼对色度不如亮度敏感。Luma(亮度)层从0到255表示从纯黑到纯白,而对于TV有效范围只在16到235,所以标准YV12视频的最低和最高亮度就是16和235,x264编码时默认参数也是将16以下或235以上视为16和235。显示的数值中,Luma层的Loose Minimum和Loose Maximum尤为重要,如果其值经常等于16和235则说明这个视频的对比度正好或是过大,如果绝大多数时间都没有接近16或235则说明对比度过小,需要多查看一些场景,记下来最经常出现的Loose Minimum最低值和Loose Maximum最高值,并判断应该将哪两个值视为纯黑和纯白,并作为SmoothLevels的输入低和输入高。 g~:(EO(w  
kS#DKo  
SmoothLevels(16,1,235,16,235):至关重要的调整Luma层色阶的滤镜,虽然AviSynth也自带Levels滤镜,但远没有SmoothLevels好用。做色阶调整的目的就是为在16至235范围内将色彩分配得最合理,并尽量不要让有用的像素亮度低于16或高于235,通俗点理解就是视频中该黑的地方要设为黑,该白的地方该设为白,不要让黑白超出16-235范围否则看上去就像对比度调过头了。MJ的资源在我看来绝大多数都存在一定程度的色阶问题,其中多数对比度不够大,还有少数对比度被人为调爆(例如官方发布的温布利DVD),后者就不太容易修复了,只能用调节Gamma曲线的方式使色阶更靠近中间。5个数值中,第一个和第三个数值分别为输入低和输入高,根据ColorYUV分析的结果进行选择,一般调得次数多便有经验了,调节后输入低变会变为纯黑,输入高会变为纯白。第二个值是Gamma值,默认为1,表示调节是直线调节,对于一般视频来说1最为合适,但如果碰到黑色部分差异极其弱,白色部分差异极其强,在调节色阶的时候最好把Gamma设为大于1的小数使之趋向平衡,反之可以设为0-1之间的小数,将白色部分差异放大,黑色部分差异缩小。后两个值(输出范围)一般情况下保持16和235无需改动。 0W%}z}/ N  
A-C)w/7  
我认为调整色阶需要本着一个原则,宁可不到达16和235也不要调得太过,对比度被调得过大是新手做视频优化时容易犯的错误(官方优化温布利VHS带时就犯了这个错误),因为往往对比度被调大后,画面层次感会增强,但一旦调过头,某些暗处和亮处便会丢失细节。所以调节完记得看看最明亮的镜头和最黑暗的镜头有没有细节损失,Loose Minimum和Loose Maximum两个值还是可靠的,保持调节后的这两个值在绝大多数帧都不越界就行。 %g@3S!lK  
KSB_%OI1  
LSFmod(50):锐化用滤镜,LimitedSharpen的升级版,在所有锐化滤镜中算是很好用且遗留故障较小的。50是力度参数,默认是100,一般视频加适度锐化总能看上去清晰些,但建议不要对片源过度锐化,因为过强的锐化也是有损细节的。 zo7XmUI3P  
hi D7tb=g~  
GradFun3(smode=2):防止色彩凝结,用默认参数的话效果十分微弱,但速度很快似乎也不影响什么,建议保留原样放在每个avs脚本的末尾。 KD"&_PX  
}8F$& AFt  
今天有点累了,明天继续写,本帖还会更新一些截图,请各位关注。
7条评分贡献值+5金钱+70威望+14
受伤的小伙 威望 +2 能否把需要压制的软件给列个list.... 2016-07-09
受伤的小伙 金钱 +10 能否把需要压制的软件给列个list.... 2016-07-09
MJ之王 贡献值 +5 高手中的高手!!! 2014-02-08
MJ之王 威望 +10 高手中的高手!!! 2014-02-08
MJ之王 金钱 +50 高手中的高手!!! 2014-02-08
ppz2001 威望 +2 技术帝威武! 2014-02-06
ppz2001 金钱 +10 技术帝威武! 2014-02-06

发帖
2894
金钱
59080
威望
727
贡献值
479
交易币
3807
只看该作者 1楼 发表于: 2014-02-06
离线ppz2001

发帖
1419
金钱
15541
威望
1250
贡献值
444
交易币
1649
只看该作者 2楼 发表于: 2014-02-06
技术帝威武!

发帖
1198
金钱
35077
威望
819
贡献值
321
交易币
1001
只看该作者 3楼 发表于: 2014-02-06
好长,,,。
离线Eclipse

发帖
1138
金钱
2273
威望
543
贡献值
271
交易币
1659
只看该作者 4楼 发表于: 2014-02-06
看晕了。。。。。

发帖
853
金钱
5129
威望
172
贡献值
42
交易币
1027
只看该作者 5楼 发表于: 2014-02-06
菜鸟一枚。。

发帖
853
金钱
5129
威望
172
贡献值
42
交易币
1027
只看该作者 6楼 发表于: 2014-02-06
回 迈k无终点 的帖子
迈k无终点:菜鸟一枚。。 (2014-02-06 10:24)  _E@ :O+K  
XoA+MuDzpo  
我是说我看不懂   不是说楼主
离线musickingdom

发帖
831
金钱
520
威望
109
贡献值
56
交易币
1030
只看该作者 7楼 发表于: 2014-02-06
顶HL。终于看到HL的大文了,一定要学会😊
正在建设的土豆小站萌萌哒~http://www.tudou.com/home/_68623032/
离线michael0829

发帖
947
金钱
9197
威望
90
贡献值
70
交易币
1196
只看该作者 8楼 发表于: 2014-02-06
顶,楼主辛苦了。本人头晕又头痛,这几天太累了。所以没看完了。
I Love You Michael Jackson Forever!
I Just Can't Stop Loving You Michel!
离线恶魔心

发帖
3372
金钱
30927
威望
1734
贡献值
1129
交易币
3950
只看该作者 9楼 发表于: 2014-02-06
技术活~!
天降枭雄万恶身 地塌山摇起风云 盟结群魔掠八方 主宰苍生令沉浮
MJFOREVERLAND--淘宝小店
威恶扬名万骨悲 震碎乾坤祸劫临 江山万代同色变 湖海任我笑中行
快速回复
限100 字节
 
上一个 下一个