存档

‘技术宅区’ 分类的存档

Win7下破坏Grub分区表的恢复笔记

2010年2月19日

本命年还没开始两天就被许多不愉快的事情弄得焦头烂额,昨天刚拿到等了1个多月的ZoomII,还没来得及捂热,build android时发现自己笔记本Linux分区的空间不够,于是鬼使神差的想到了进Windows下调整硬盘空间。使用Windows Vista/7自带的shrink volume功能,满心欢喜的从某个主盘分出来8G空间之后重启,grub挂掉了:报错error 22。

根据官方文档,Error 22的定义是

22 : No such partition
This error is returned if a partition is requested in the device part of a device- or full file name which isn’t on the selected disk.

由于从grub引导读入的boot分区是我Linux的主分区(ext3),也就是/dev/sda4,在grub载入时出现这种错误就意味着sda4的分区表在Windows下被残忍的强奸了。于是我首先想到的就是通过LiveCD查看受损情况,结果让我大惊失色:原本位于扩展分区sda3下的sda4变成了unallocated area,接着sda4的swap分区也一起揉进去了,但同在一个扩展分区下的Windows分区则没有任何问题,于是我的硬盘就变成了这个样子:

更要命的是,自己论文用软件的代码是在Linux下写的,而恰恰因为过于信任Linux的稳定性没有对这些代码做备份,一想到这本来ZoomII等了快两个月终于到了现在硬盘又坏了,让人怎么能安睡啊。
但是焦虑也不是解决问题的办法,在多方求助加上ubuntuforum的帮助之下,分区表成功恢复,两个系统没有一点数据丢失,总算是有个曲折的good ending吧(死

下面就来总结下方法吧,留作笔记供后人参考:

问题描述:
Windows 7下对磁盘分区操作后导致Grub分区表破坏,主boot分区sda4被破坏,Grub载入不能报错代码22。
问题定性:
使用Ubuntu的LiveCD从U盘启动,通过gpartd工具查看sda磁盘的情况,发现ext3的sda4分区和swap分区被破坏,成为unallocated空间,无法通过一般方法access内部数据,无法挂载也无法通过grub或者fdisk重建被破坏的分区表。
使用工具:
LiveCD(使用unetbootin工具制作的U盘LiveCD),TestDisk和grub。
顺便一说,unetbootin工具是个非常强大的制作各类U盘启动系统的小软件,并且有适合于Win/Mac/Linux的多种版本。
解决方法:
1、LiveCD启动
2、下载并解包TestDisk
3、在terminal下运行TestDisk_static这个executable,根据屏幕提示,先create一个log file用于记录分析和恢复信息,然后选择sda这个需要恢复的硬盘,选择合适的分区表类型(TestDisk会自检并高亮选中某一个类型,大部分硬盘的分区表类型都是Intel),然后尝试Quick Search
4、在我这次恢复中,只是使用了Quick Search,就成功的检测出了原来的sda3分区和swap分区,检测后结果如下:

通过记忆核实检测出来的sda4和swap大小基本无误,但为了保险起见我还是p了一下检测出的Linux分区,发现原来的文件都在,于是确定检测无误。
再按Enter之前,还需要将Boot分区(标识*的分区)改为Linux的分区,更改的方法是使用左右箭头键。
5、Enter之后选择Write Table,如果需要的话还有Deep Search可以使用,但我这种情况下不需使用。于是分区的恢复工作就完成了。此时由于Grub还未恢复,因此还是无法从本地硬盘启动。
6、重启并再次进入LiveCD,此时会发现ext3分区已经出现,mount此分区,记录下分区在/media下的位置,进入最后一步。
7、最后一步是用Grub重装bootloader。这个操作比较简单,在LiveCD的terminal下使用下面代码即可:

grub
grub>find /boot/grub/stage1
grub>root (hd0,2)
grub>setup (hd0)
grub>quit

重启,大功告成,数据完全恢复。
注释:
Super Grub Disk也是一个好用的恢复分区表工具
ext2grub有人提到,但我没尝试
ubuntu-rescue-remix这个LiveCD中有内嵌TestDisk,觉得懒得人可以用这个做成急救恢复盘
自动增量备份很有必要,我参照这两篇文章(http://blog.simophin.cn/?p=498http://blog.chinaunix.net/u3/105147/showart_2080373.html)建立了一个基于ftp的增量备份解决方案。

最后感谢C版群的PT大神和Lain前辈、EP群的大虾、字幕组群的阳阳童鞋、wps童鞋和村汉童鞋,当然最重要的还有一直鼓励着我的ランヤ学妹。m(___)m

admin 技术宅区 , , , , , ,

[笔记]低码率H.264视频心得

2010年2月8日

86那接了点私活,大体上就是帮某些有需求的客户做些适合于streaming的视频。由于Target platform是flash v10搭载的电脑,于是那个老掉牙恶心死人的VP6/7就被我直接pass了,由于有文件大小的要求这个问题最终演化成了一个低码率H.264视频的实践问题。由于组里的480p双兼容mp4也算是典型的低码率应用,所以略作些整理吧。对我而言,perferred的toolchain是avisynth+x264+ffmpeg,当然我不用ffmpeg编码,只是拿来mux flv而已。

首先来看Video部分,avisynth+x264的黄金搭档也正是我最熟悉的两个工具。考虑到处理的视频大多都是实写(PAL),因此avisynth中只需要稍微做点降噪,再来点锐化就好了。我选择的方案是dfttest+LSFmod,dfttest用默认参数轻轻一抹,LSFmod的参数上也尽量做到柔和即可。此处值得注意的是由于最终目标码率很低(<250k@CIF),因此任何锐化(High Emphasis)的操作都可能会导致最终产品的画面布满玻璃渣,所以锐化滤镜的选择和参数的使用需要特别注意。我的LSFmod里strength只用了55。
源滤镜是处理这种千奇百怪视频的重要绊脚石,好在有ffmpegsource2这种通吃滤镜,什么VFR我才不管呢,反正都是PAL的实写,统统喂给它就能搞定了。只是要注意有时候源是yuv444的,所以出现奇数分辨率也一点都不奇怪了。

下面来看x264的参数,我的理念是在bitrate budgets下获得最好的(主观)质量,因此基本的rc方案毫无疑问的使用了1pass CRF+2pass Bitrate的方法。这样既能控制最终码率,又不至于被码率限死而影响质量。好在这个任务没有对播放端的解码延迟有什么要求,于是可以尽情的用些容易导致latency的参数了。
在确定rc方案之后,下面就是挑出一些参数来做优化了。我把参数的优化分成五个部分:ME、降码率、除块、帧类型、兼容性。
//顺便一说,我用的--crf 20的1pass。

首先是me,由于低码率的限制,精确的me(与之相对是更小的误差值)是必不可少的,相反在码率很充足的情况下me的精确性到来的不是那么重要了。我使用的是--me tesa --subme 10 --trellis 2 --merange 48的方案,tesa保证了尽可能精确的ME,subme 10保证了子块预测/细化时的准确性,merange 48相对于CIF来说也足够大了。

其次是码率的控制,开大mbtree的lookahead和降低qcomp数值是一个好方法,我是用的是--rc-lookahead 100 --qcomp 0.5的配置。有人可能会提到aq-mode 2,但我实际的感觉,aq-mode 2在这种极低的码率环境下会出现恼人的mosaic effect,所以aq-mode还是坚持使用mode 1,strength=1.0的默认设置吧。

然后是除块的参数,在前面avisynth的参数选择上我就说了锐化参数必须小心,x264里关于锐化/除块的参数有二,psy-rd和deblock。psy-rd的strength越高,玻璃渣就越明显(低码率下),deblock的负值则被认为有助于恢复锐利的线条和texture。所以对我这种环境,两者的效果都应该降低。我选择的是--psy-rd 0.2:0 --deblock 1:1的配置。

最后是帧类型和兼容性,这两个分类间相互的依赖性比较大,因此联合起来考虑。对流媒体而言,考虑到分辨率的大小,--profile main --level 3.0的设置足矣。ref 3和bframes 8则完全是个人喜好,如果要ep的话bframes 16也是可以的。--partitions b8x8,p8x8,i4x4,i8x8也是个人喜好,而且在level=3.0时这也就等于all了,我没有考虑把i8x8排除在外,因为target platform是标准终端因此没有必要。
vbv-bufsize和maxrate完全是为了限制1pass crf可能的飚码率问题,我定在了1600和1200。keyint和min-keyint则是一如既往的fps*10和1的配置。

1pass完整参数如下:
x264 –profile main –level 3.0 –pass 1 –crf 20 –stats “proc.stats” –min-keyint 1 –keyint 250 –ref 3 –bframes 8 –b-adapt 2 –direct auto –partitions none –no-fast-pskip –no-dct-decimate –vbv-bufsize 1600 –vbv-maxrate 1200 –rc-lookahead 100 –qcomp 0.5 –psy-rd 0.2:0 –deblock 1:1 –me tesa –merange 48 –subme 10 –trellis 2 –sar 1:1 –thread-input –threads 6 -o NUL proc.avs

2pass的完整参数如下:
x264 --profile main --level 3.0 --pass 2 --bitrate 340 --stats "proc.stats" --min-keyint 1 --keyint 250 --ref 3 --bframes 8 --b-adapt 2 --direct auto --partitions b8x8,p8x8,i8x8,i4x4 --no-fast-pskip --no-dct-decimate --vbv-bufsize 1600 --vbv-maxrate 1200 --rc-lookahead 100 --qcomp 0.5 --psy-rd 0.2:0 --deblock 1:1 --me tesa --merange 48 --subme 10 --trellis 2 --sar 1:1 --thread-input --threads 6 -o proc.264 proc.avs

在x264 rev.1376下实际跑的结果,crf 20的1pass在上述参数下基本码率不会超过400k,于是2pass的bitrate模式限制就比较宽松了。基本*0.75就能得到适合的2pass码率。

音频:
音频部分用ffmpeg处理,通用格式就是
ffmpeg -i somefile.ext -acodec libfaac -ab 64k oputfile.aac
有时ffmpeg的编译没有开启外部libfaac.dll的支持,解决方法要不就自己configure然后make要不就去找其他人编译的带libfaac支持的binary咯。
另外此处用的是average bitrate模式,也可以用-q这种质量模式,目标64kbps的音频q的数大约是0.25。

Mux:
继续ffmpeg:
ffmpeg -i somefile.mp4 -vcodec copy -acodec copy oputfile.flv

于是就大功告成了。

admin 技术宅区 , , ,

啊 多么自主产权的起步励磁音啊

2010年1月21日

各位爱国人士,我来了,欢迎把我的下限扯到和你们一样的水平然后在你们的主场把我爆菊吧。
TDB说,武广客专上跑的CRH2c-300和CRH3c都是“完全具有自主产权”的、符合中国特色、具备世界领先水平的高速列车。嘛,竟然对此没有任何怀疑的我也算是被糖衣炮弹打中了吧。
首先来回顾下CRH的来由吧,1和5暂且不说,2的原型车是JR东日本的E2-1000番台,3的原型车来自于西门子的Vetaro,属于德国高铁中服役的ICE-3的同门车型(准确的说ICE3是Vetaro的原型车)。
想当初TDB推广动车组时,就说自己是自主产权,甚至CRH2还拿过当年的科技创新一等奖,这是何等的自high啊。不过就老是被日媒嘲笑说你这个自主产权实在是过于夸张,不过呢,国家的力量是强大的。你看这不是没几人知道CRH2的第一批order是整车从日本运过来的,没几个人知道当年南车有给日本技术员专门的住宿地,没几个人知道CRH2在测试运营时其实是kawasaki的日本鬼子开的…
于是呢,TDB也不是个省油的灯,给CRH2做了不少“变化”,比如弄出16节超长编组来啊、比如弄出动卧来啊、比如最终给它敲入两颗老鼠屎啊…这么一弄,似乎CRH2就变得不在鬼子化了。
就这么瞒天过海到了今年,武广客专来了…上线的是CRH2的一期高速版CRH2c-300和CRH3的高速版CRH3c。
这里暂且把CRH2c丢一边,来看看CRH3c。

上面说了,CRH3c是以吸收德国西门子Vetaro的先进技术,完全自主研发,拥有自主产权的新一代高速动车组,具备世界领先水平。(TDB调调
好吧,直到我今天再次看到CRH3c的起步,我彻底意识到这句话是多么的a totally farting junk。
在看视频前,需要普及一个常识,即动车组一个关键部件就是VVVF了…而这个伟大的VVVF,会随着不同厂商的产品,发出不同特质的励磁音,特别是在起步时非常明显。
因此,先来看CRH3c的起步吧:


(被墙者请尝试youtubecn)
如何,很美好的励磁音吧,应该说异乎寻常的大才对。下面来听ICE3的吧,听完后就能立刻明白,我们都被自主产权了。


(被墙者请尝试youtubecn)
我什么都不说了-_-

最后再来听段CRH2c-300的声音,相比于西门子的VVVF,日立的VVVF显然轻柔的多。另外,音阶电车的VVVF,也都是由这个CRH3和Vetaro的制造者西门子生产的。其实CRH3c的声音就和音阶电车很相近了。

好吧,我承认高速铁路是系统工程,运营管理和设计施工确实都是国人的力量,但至少你不能吹嘘舶来品的车是自己的产权吧。

admin 技术宅区 , , , , , , ,

数了下自己身上的坑

2009年12月25日

DVD:
海物语2、3(?)
cencoroll
Doraemon 79 DVDBOX 2(?)

BD:
大正3
k-on 6、7
化物语 3、4(?)
mahoro
初恋限定2、3、4、5
MF的演唱会(?)

估计够斯巴达到新年了

admin ACG, 不是A片的那个A, 技术宅区

How’s IMAX to be IMAX

2009年12月22日

自从上周谁告诉我avatar是部史诗作品以来,我这个原本一点也不热衷欧美娱乐元素一辈子都难得进两次电影院的人竟然也开始感兴趣起来,当然我感兴趣的一个重要原因是这部电影的IMAX版。恰好又人在纽约,不看似乎有点对不起观众。

在纽约的一个优势就是影院众多,眼花缭乱之后也有个弊端,那就是你得选个好地方啊。由于被告知IMAX必看,普通3D的film嘛就无所谓了反正可以等BD,在完全对IMAX没有概念、唯一的一次还是去年去grand canyon看IMAX纪录片的我,转而求助于谷歌大神。

也许是被美国人简单直接的头脑感染了,我现在竟然如此相信谷歌的回复,而且这个回复还是在我输入“where is the best IMAX theater in NYC”这种下三滥不入流的搜索问题时得到的。嘛,答案指向的地点倒是个熟悉的地方,Lincoln Center,就是那个去年用三个邮箱注册不同账号去听12usd的NYPHIL student rush的Avary Fisher Hall边上;顺带一说,skycrawler的北美首映也是在那附近Julliard后面的一个小theater里。

于是就订了24日的上午场,今早跑实验室来,往某群上一宣扬,原来IMAX的学问还真多,我算是瞎猫撞上了死耗子么…

(以下根据qyq提供的线索整理)

原来IMAX有两种版本,所谓的classic和digital。显然在这个数字时代人们总是很蛋疼的喜欢classic的版本,当然在IMAX这个问题上,是有技术支持的。请看wiki上的这个条目:

Despite those advantages, one big disadvantage is the resolution of the picture is much lower than normal IMAX. The screens used by digital IMAX installations are also much smaller (28×58 feet) than those found in traditional IMAX cinemas. The digital installations have drawn some confusion based on poor consumer differentiation to the traditional 15/70 IMAX.[6]

IMAX digital currently uses two 2K-resolution Christie projectors with Texas Instruments Digital Light Processing technology alongside parts of IMAX’s proprietary system. The two 2K images are projected over each other, producing an image that is potentially of a slightly higher resolution than common 2K digital cinema. Originally, IMAX had been considering using two Sony 4K projectors.[8] Some reviewers note that this approach may not produce image quality higher than using one 4K projector, which are available for some non-IMAX theaters,[6] including AMC’s own. [9]

看到这里我不禁泪流满面,我完全不知道啊啊啊,这下要是谷歌大神骗了我那岂不是对不起这14块钱了么…特别是我这种难得去一次影院的人更是不能接受的啊啊啊

于是我找到了IMAX的官网,搜到了大纽约附近的所有的IMAX影院,所幸IMAX的官网上对影院设备的描述相当的技术向,我战战兢兢的点开了Lincoln Center那个,发现了这么一段文字:

imax

Bravo!
谷歌大神我信你啊!
更加狂喜乱舞的是,除了自然历史博物馆那个馆内IMAX外,大纽约地区的全部其他IMAX影院都不是classic的装置了…digital普及的重要原因是维护成本和场地需求,所以还是给我去死吧…

于是就满心欢喜的期待周四上午的那场电影啦

admin 技术宅区, 西域生活 , , ,

Switch to our mobile site