星期日, 12月 20, 2009

Week 15: Audio File Format

1. Audio File Format ( 音頻檔案格式 )

2. Apple's 數位音樂入門

 從 CD 匯入音樂到 iTunes









 I Dreamed There Was No War 1:37"
 
 檔案格式     檔案大小
 WAV       17,277,836 位元組

  

 AIFF       17,280,112 位元組

  

 Apple Lossless  8,175,810 位元組

  

 MP3        2,354,555 位元組

  

 AAC       1,591,708 位元組
 
  

3. 作業六: 請轉寫一個程式, 可以將 WAV 檔頭資料顯示出來。
    ( 可以將音訊波形顯示出來者尤佳 )

星期六, 12月 19, 2009

Week 14: GIF Format (2)

1. 範例程式講解

  a. 彩色或灰階 BMP 影像之自動讀取

  b. GIF 影像調色盤之讀取

2. 導讀 Wikipedia 之 GIF 條目: Graphics Interchange Format

3. 課程重要公告:

 請同學於下週二 (12/22) 以前完成上傳作業 1~3 , 逾期後果請自行負責。

星期四, 12月 17, 2009

範例程式: GIF 影像調色盤之讀取與顯示

本範例程式可以讀取與顯示 GIF 影像檔案中的調色盤。

  DMC-2009F-SP07.txt

顯示的方式為使用一個影像元件, 然後用 FillRect 這個 method 畫出來。

 
 
 
 

星期二, 12月 15, 2009

範例程式: BMP 影像讀取

範例程式: 彩色或灰階 BMP 影像之自動讀取

說明: 這個範例程式可以自動判別所開啟的影像是 24 位元之彩色影像, 或是 8 位元的灰階影像, 不論影像寬度是否為 4 的倍數, 都可以成功讀取其影像內容, 顯示在影像元件中。

  DMC-2009F-SP06.txt
 

星期四, 12月 10, 2009

Week 13: GIF format (1)

1. 維基百科中的 GIF 影像格式:

 a. 正體中文版資料
 b. 英文版資料: Graphics Interchange Format

 本週同學上課的情況很不錯, 主動提問非常踴躍,
 所以有來上課的同學, 學期總分都加 1 分。

2. 第五個作業:
  讀出 GIF 檔案中的調色盤資料, 並顯示出來。然後, 針對調色盤色彩之亮度做排序。
 
 
 
 
 
 經過用明亮度排序後的調色盤:

 
 

星期四, 12月 03, 2009

Week 12: BMP format (4)

1. 講解範例程式 DMC-2009F-SP04.txt

範例程式中, 我們使用了 TBitmap::ScanLine 這個 property, 存放著 Bitmap 某一橫列的色彩值在記憶體中存放的起始指標, 有了這個指標, 我們就可以直接在記憶體中直接存取, 修改影像內容。

2. 請同學將範例程式 DMC-2009F-SP04.txt 改成可以讀取影像寬度可以不是 4 的倍數的彩色影像。

BMP format 在儲存影像時, 把每一橫列所需的byte數都對齊為 4 的倍數。假設, 一張 24-bit 彩色影像的寬度為 250, 每一橫列所需之記憶體為 250 * BitCount / 8 = 750, 那麼在存成 bmp 檔時, 每一行最後會補上 2 bytes, 一共需要 752 bytes。

3. 範例程式 DMC-2009F-SP05.txt

4. 請同學將範例程式 DMC-2009F-SP05.txt 改成可以讀取灰階 bmp 影像 or 彩色 bmp 影像。

 同學可以藉由檔頭資料中的 iBitCount 來判斷所讀取的影像是彩色影像或是灰階影像, 如果是灰階影像, 必須增加一個灰階調色盤給影像元件 imOriginal, 這樣才可以正確顯示出來。

 灰階影像與灰階調色盤, 請參考範例程式 DMC-2009F-SP03.txt