目前分類:我的電腦二三事 (24)

瀏覽方式: 標題列表 簡短摘要
Packetized Elementary Stream (PES):
原始檔案的資料長度跟ES是相同的,
而ES可以切割成多個長度不一的封包 (packet),
這些封包就是PES

每一個PES都包含了標頭(Header)以及串流資料 (Stream data; Payload)

PES的標頭包含了MPEG解碼器在解壓縮的過程中所需要的解碼資料
例如:
資料流識別碼(Stream ID)以表示基本資料流的型態;
優先權(Priority)用以表示優先權的高低,位元欄值為1時表示擁有高優先權,反之為0;
播放的時間標記(Presentation Time Stamp;PT)是記錄播放的時間,
解碼的時間標記(Decoding Time Stamp;DTS)則記錄解碼的時間;
基本資料流時序索引(Elementary Stream Clock Reference;ESCR);
顯示抵達系統目標解碼器(System Target Decorder;STD)的時間;
甚本資料流速率(Elementary Stream Rate;ES Rate)則標示STD接收PES的速率值;
PES循環冗長檢查(Cyclical Redundancy Check;CRC)用以作錯誤的檢測﹔

PES的承載資料(Stream data;Payload)記錄壓縮的視訊資料流以及音訊與文字資料流,
視訊流(Video)以序列標頭作開端,
接著是序列延伸及其相關聯的資料;
通常一個序列包含有好幾個GOP(Group of Pictures﹔畫面群組),
而一個GOP由許多的畫面所組成,
一個畫面則又由許多片段(Slice)組成,
一個片段則包含了許多的巨集區塊(Macroblock)

PES會同時包含視訊資料(Vedio)跟音訊資料(Audio),
藉由共享相同的一個時間基準得以同步地對視訊資料流與音訊資料流進行解碼作業
例如 :Presentation Time Stamp (PTS)

PES的設計並不具有資料傳輸以及交換的作用
因為後來又衍生Transport Stream (TS)的格式

Referance:
1. http://www.iec.org/online/tutorials/test_dv/topic01.html
2. http://dvd.sourceforge.net/dvdinfo/pes-hdr.html
3. http://study.tnit.edu.tw/teacher/cchang/851030/03.htm
4. http://hpc.ee.ntu.edu.tw/~ydlin/Ver2/dtfinal/
5. http://www.eetc.globalsources.com/ART_8800341750_617717,676964.HTM.99fa4ced
6. http://www.eetc.globalsources.com/ART_8800294047_617717,617726.HTM.7264b000
7. http://www.hope.com.tw/art/print.asp?O=200404051619483495

---下次目標 Transport Streeam (TS) ---

skydiary 發表在 痞客邦 留言(0) 人氣()

Elementary Stream (ES) :
ESs是將類比的影像以及聲音(Analog Vedio and Audio)透過MPEG 編碼器
進行一連串的演算法,壓縮後成的影像以及聲音

判斷經過壓縮過後的ES是否良好則可以根據下列幾個要點:

1. 原始檔案的播放品質
2. 編碼後資料串流(Stream)的位元率(Bitrate)
3. MPEG 編碼器的演算法

MPEG 演算法壓縮檔案時,最重要的兩個基本元素是

1. 畫格跟畫格之間的空間壓縮 (intraframe spatial compression )
2. 畫格間的動態影像補償 (interframe motion compression)

而編碼器就是透過演算法同時對這兩個基本元素進行壓縮

目前在測試編碼後的ES資料以及畫格的播放品質只能透過人的眼睛去檢測

---

會想要寫這樣的文章
是因為我對為什麼在測STB時老是要盯著影片不停的重覆看這個動作覺得很奇怪
不過讀了International Engineering Consiturm (IEC) MPEG的測試方法後才明白
原來MPEG檔案開始壓縮編碼後
為了確認原有框架裡的畫面以及編碼後的資料是否正確
目前只有透過人的眼睛去檢測

畢竟最後這些被演算過,壓縮過後的檔案
還是要給人看的

品質不好的東西一定很快就被淘汰了

本來是想一次就把MPEG測試方法給寫完的
可是寫的時候才發現
對於MPEG我還有很多不懂的地方

所以現在我也不急著一次就把MPEG測試寫完了

現在就先試著去懂IEC所寫的MPEG測試方法
也順便把MPEG的規格跟內容弄懂後
慢慢的把自己學到的MPEG寫上來

這樣我也可以曉得
這份工作讓我學到了多少的東西

我知道很多同學現在也都是在IT裡工作
所以~
如果我有寫錯的地方
希望大家也能告訴我

Reference:
1. http://www.iec.org/online/tutorials/test_dv/topic01.html
2. http://www.eedesign.com.tw/article/forum/fo700.htm

---下次目標 packetized elementary stream (PES) ---

skydiary 發表在 痞客邦 留言(0) 人氣()

這篇文章是對岸寫的,看完後;有自己還太嫩的感覺!

讀後感: IT並不光只是會寫程式就好! 最重要的是懂得思考!!




談談我對讀研究所和軟體學院的看法




就我自己的理解,談談我對讀研究所和軟體學院的看法,不妥之處一笑了之即可。



如果你有實際開發工作經驗,感覺自己的水平和實力進入了一個高原期,迫切需要從理論上提高,那麼電腦學院是唯一選擇。因為電腦學院才能讓你在理論上更上一層樓。軟體學院從教學計畫上就沒有把你往這方面帶。當然能不能更上一層樓最終還是完全取決於你自己。需要特別說明的是,工作經驗並不一定等於開發經驗,我見過很多工作2-3年的人,但是沒有一點開發經驗。



你說:“他們都有很強的開發能力,只是不太喜歡讀書,也只是希望混個學歷對今後在崗位上晉升有好處”,我可以向你保證,你所說的人絕對不是開發能力很強的人。因為,

1)高手不可能不喜歡讀書;

2)高手不可能想去混一個學歷;

3)高手不可能認為晉升是因為學歷的原因。



還需要說明的是,考電腦的人未必個個都是高手,嚴格來說,大部分都不會編程式。也就是說,庸庸碌碌之輩仍然占絕大多數。研究生畢業的師兄只拿2500元左右的比比皆是,所以不要寄希望于拿一張研究生文憑出去賺高薪。但是,對于有實際開發工作經驗的人,要想自己在3年之中有一個真正的提高的話,電腦學院提供了廣闊的平臺。就我所知,每一個月拿2萬以上的也有(上海育碧,圖形特效演算法設計)。所以,同為研究生畢業,能力的差距是極大的。所以,不要去問“研究生畢業能拿多少錢?”,要問“像我這種水平的人,研究生畢業能拿多少錢?”這樣人家才能夠準確地回答你。



所謂“有實際開發工作經驗”是指你目前已經具備下列能力:

1)你已經認為C++和組合語言都是很簡單的語言,並能夠自如地運用;

2)你能夠在30分鐘之內想到正確的五子棋遊戲演算法設計思路和方向;

3)你完全理解STL為什麼這麼重要;

4)你能夠獨立地解決所有的編譯與鏈結問題,哪怕你從來沒有遇到的問題,你也不需要詢問任何人;

5)英文網站是你的首要資訊來源;

6)能夠讀懂英語寫成的國際標準,比如NTFS磁片格式標準。

7)你經常站在集合論的角度思考演算法問題;

8)能夠理解一個簡單的驅動程式,能夠理解一個簡單3D交互程式;

9)你能夠認識到線性代數和概率論在實際編程工作中的極端重要性;

10)你完全理解COM的設計思想,尤其能夠理解COM為什麼要設計成這樣;

11)當我說到虛函數的重要作用時,你不會急著去找書來翻;

12)你能夠說出C++為什麼比其他語言優秀的理由,記住這種理由應該來自於你的開發體會,而不是因為其他人都這麼說。

此外還有很多判斷標準,但如果你同時具備5條以上,可以認為你已經具備相應的開發經驗了。在這種狀態下讀研究所,你將取得讀研效益的最大值。



讀研究所最重要的是要明白你自己要幹什麼,不能等導師來告訴你你應該幹什麼。研究生的優勢在於理論功底深厚,思維具有穿透力,當然編程能力首先要過關,不要讀完研究生還不知道MFC程式的WinMain函數在哪里。所以,研究生期間,你一定要做有理論深度的演算法設計,比如大規模資料的搜索演算法,性能是首要考慮因素,不要奢望SQL函數能夠幫你解決問題,所有的問題你都必須自己解決,你必須解決內外存交換的性能瓶頸。再比如極品飛車的3D場景生成,圖形變換,碰撞檢測,物性模擬,紋理映射,燈光模型等等,這些都是可以保證你能拿到2萬以上月薪的技術。如果你認為這些東西太難,不可能做得出來的話,那麼你就不適合讀研究所。真的,要是你認為讀研究所之後還是要去搞一般的程式設計,如資訊管理系統之類的軟體,那麼你讀研究所的價值就完全不會得到體現,因為這些工作根本就不需要讀研究所。



軟體學院宣稱培養軟體發展人才,恕我直言,我從來沒有看見那個高手是培訓成功的。成為軟體發展高手的路只有一條:自學!軟體發展中需要大量的編程實踐和獨立思考,只有在此過程中,你才能夠逐步成長起來。軟體學院宣稱培養軟件項目經理,這更是搞笑,在某種意義上這是欺騙行為。學院裏面能夠培養出軟體發展經理更是十足的謊言,軟體專案經理必須,或者說更強調從戰爭中學會戰爭。沒有實踐經驗的項目經理就是繡花枕頭一個。



實話實說,軟體學院就是一個蒙錢的機構,公關工作做得很好,善於打廣告,而且都是打著高薪的幌子,就如同外面的什麼北大青鳥培訓班一樣。兩個字:蒙錢!四個字:還是蒙錢!



總之一句話,如果你只想成為軟體發展高手(比如認為會編驅動程式或殺毒軟體就是高手的那種),建議工作,不要考研究所;完全沒有工作經驗的,也不建議考研究所,你進來了只有瞎混一通。如果你有上述工作經驗且想成為高級軟體工程師(能夠獨立理解並設計出快速傅立葉變換演算法的那種軟體工程師)的話,那麼強烈建議考研究所。考研究所讓你有3年放鬆思考的機會,也有3年讓你思想和技術積累沉澱的機會。非常難得的機會。不考研究所的話,這種機會就是一種奢侈,可望而不可即的一種奢侈。



所以,不管你是哪一種情況,都不建議考軟體學院。除非你是女生,把能夠成為一個研究生當著一生最大滿足的那種女生。

skydiary 發表在 痞客邦 留言(0) 人氣()

Dos Command Summary

DOS COMMAND SUMMARY
HELP:Lists DOS commands
At command prompt use: HELP COPY or COPY
Lists usage of COPY
Format of Ussage: COMMAND /?

ASSOC: Displays or modifies file extension associations.
AT: Schedules commands and programs to run on a computer.
ATTRIB: Displays or changes file attributes.
BREAK: Sets or clears extended CTRL+C checking.
CACLS: Displays or modifies access control lists (ACLs) of files.
CALL: Calls one batch program from another.
CD: Displays the name of or changes the current directory.
CHCP: Displays or sets the active code page number.
CHDIR: Displays the name of or changes the current directory.
CHKDSK: Checks a disk and displays a status report.
CHKNTFS: Displays or modifies the checking of disk at boot time.
CLS: Clears the screen.
CMD: Starts a new instance of the Windows command interpreter.
COLOR: Sets the default console foreground and background colors.
COMP: Compares the contents of two files or sets of files.
COMPACT: Displays or alters the compression of files on NTFS partitions.
CONVERT: Converts FAT volumes to NTFS. You cannot convert the current drive.
COPY: Copies one or more files to another location.
DATE: Displays or sets the date.
DEL: Deletes one or more files. DELTree Delete all directories and files.
DIR: Displays a list of files and subdirectories in a directory.
DISKCOMP: Compares the contents of two floppy disks.
DISKCOPY: Copies the contents of one floppy disk to another.
DOSKEY: Edits command lines, recalls Windows commands, and creates macros.
ECHO: Displays messages, or turns command echoing on or off.
ENDLOCAL: Ends localization of environment changes in a batch file.
ERASE: Deletes one or more files.
EXIT: Quits the CMD.EXE program (command interpreter).
FC: Compares two files or sets of files, and displays the differences between them.
FIND: Searches for a text string in a file or files.
FINDSTR: Searches for strings in files.
FOR: Runs a specified command for each file in a set of files.
FORMAT: Formats a disk for use with Windows.
FTYPE: Displays or modifies file types used in file extension associations.
GOTO: Directs the Windows command interpreter to a labeled line in a batch program.
GRAFTABL: Enables Windows to display an extended character set in graphics mode.
HELP: Provides Help information for Windows commands.
IF: Performs conditional processing in batch programs.
LABEL: Creates, changes, or deletes the volume label of a disk.
MD: Creates a directory.
MKDIR: Creates a directory.
MODE: Configures a system device.
MORE: Displays output one screen at a time.
MOVE: Moves one or more files from one directory to another directory.
PATH: Displays or sets a search path for executable files.
PAUSE: Suspends processing of a batch file and displays a message.
POPD: Restores the previous value of the current directory saved by PUSHD.
PRINT: Prints a text file.
PROMPT: Changes the Windows command prompt.
PUSHD: Saves the current directory then changes it.
RD: Removes a directory.
RECOVER: Recovers readable information from a bad or defective disk.
REM: Records comments (remarks) in batch files or CONFIG.SYS.
REN: Renames a file or files.
RENAME: Renames a file or files.
REPLACE: Replaces files.
RMDIR: Removes a directory.
SET: Displays, sets, or removes Windows environment variables.
SETLOCAL: Begins localization of environment changes in a batch file.
SHIFT: Shifts the position of replaceable parameters in batch files.
SORT: Sorts input.
START: Starts a separate window to run a specified program or command.
SUBST: Associates a path with a drive letter.
TIME: Displays or sets the system time.
TITLE: Sets the window title for a CMD.EXE session.
TREE: Graphically displays the directory structure of a drive or path.
TYPE: Displays the contents of a text file.
VER: Displays the Windows version.
VERIFY: Tells Windows whether to verify that your files are written correctly to a disk.
VOL: Displays a disk volume label and serial number.
XCOPY: Copies files and directory trees.

skydiary 發表在 痞客邦 留言(0) 人氣()

«12