2009年4月8日 星期三

工作紀要:pes2avi 效能

來源檔:
4CH/CIF/(ch1:video ch2/3/4:blue image)/623905636 bytes/71928 fream
ch1:410399204 byte
ch2:62738460 byte
1. 原始程式,在處理完個別fream後,不加入delay。
CPU Time
。ch1 72% 72s
。ch2 70% 42s
2. 在處理完美一個fream後,依據不同值加入usleep (0)做延遲。
2000 fream 1000 fream fps
CPU Time CPU Time CPU Time
。ch1 --% --s 70% 74s 56% 79s
。ch2 --% --s 55% 45s 26% 51s
3. 在處理完美一個fream後,依據不同值加入sched_yield ()做延遲。
2000 fream 1000 fream fps 4fps always
CPU Time CPU Time CPU Time CPU Time CPU Time
。ch1 --% --s --% --s 72% 77s 77% 74s 72% 79s
。ch2 --% --s --% --s 68% 42s 70% 42s 71% 45s

工作紀要:usleep for Pentamicro

在Pentamicro上使用usleep所得到的真實時間:
[0]:(sleep.c::main) runtime=7921(10-6 s)
[1]:(sleep.c::main) runtime=9223(10-6 s)
[2]:(sleep.c::main) runtime=9915(10-6 s)
[3]:(sleep.c::main) runtime=9786(10-6 s)
[4]:(sleep.c::main) runtime=10147(10-6 s)
[5]:(sleep.c::main) runtime=9522(10-6 s)
[6]:(sleep.c::main) runtime=9673(10-6 s)
[7]:(sleep.c::main) runtime=9846(10-6 s)
[8]:(sleep.c::main) runtime=9831(10-6 s)
[9]:(sleep.c::main) runtime=9733(10-6 s)
[10]:(sleep.c::main) runtime=19919(10-6 s)
[11]:(sleep.c::main) runtime=20233(10-6 s)
[12]:(sleep.c::main) runtime=19682(10-6 s)
[13]:(sleep.c::main) runtime=19759(10-6 s)
[14]:(sleep.c::main) runtime=19931(10-6 s)
[15]:(sleep.c::main) runtime=20125(10-6 s)
[16]:(sleep.c::main) runtime=19772(10-6 s)
[17]:(sleep.c::main) runtime=19901(10-6 s)
[18]:(sleep.c::main) runtime=19956(10-6 s)
[19]:(sleep.c::main) runtime=19931(10-6 s)
[20]:(sleep.c::main) runtime=30250(10-6 s)
[21]:(sleep.c::main) runtime=29850(10-6 s)
[22]:(sleep.c::main) runtime=30170(10-6 s)
[23]:(sleep.c::main) runtime=29601(10-6 s)
[24]:(sleep.c::main) runtime=30010(10-6 s)
[25]:(sleep.c::main) runtime=30107(10-6 s)
[26]:(sleep.c::main) runtime=30181(10-6 s)
[27]:(sleep.c::main) runtime=29524(10-6 s)
[28]:(sleep.c::main) runtime=30048(10-6 s)
[29]:(sleep.c::main) runtime=30055(10-6 s)

=>以每10ms為一單位,若在此單位中,無論其值為何,皆sleep近乎同一值。

AVI檔造成檔案總管掛掉

當使用檔案總管開啟某些Pentamicro轉出的avi檔案時,會造成檔案總管當掉。
錯誤發生的dll為:shmedia.dll
上google搜尋發現是檔案總管會使用媒體預覽的功能(shmedia.dll),可能是avi的檔案內容有問題,造成預覽錯誤。
解決方式:
反註冊 shmedia.dll:regsvr32 /u shmedia.dll

PS:若需要重新安裝:regsvr32 shmedia.dll