2009/07/11
不免俗的,先來說一下故事。
由於維城、文森及冠廷近年來在polyphonic music的研究上有了卓越的成果,Cuda的普及正好可解決合成上計算量過高的問題,因此老師便計畫著如何利用它來呈現大家的研究成果。此外,電機系有個同學願意幫我們完成電腦動畫,使其可在畫面上呈現提琴演奏的樣子,還有師大音樂系同學的加入,他們願意幫我們修正分析完錯誤的部份結果,並標記提琴的弓法。最後也最重要的,是冠廷跟小聽加入實作的行列。在天時、地利、人和的條件都滿足的情況下,這個編曲工具的專案便問世了。
昨天跟冠廷和小聽已討論出大概的系統架構、初步實作之資料格式及功能等等,因此開條Thread來紀錄一下工作事項及進度。目前工作的分配如下:
冠廷:
先實作資料格式的I/O,也就是先將文森的結果,按照以下格式紀錄在程式中,輸出的格式暫定為 XML 與 Binary,時間的最小單位是 10ms。註: Track外還會包一層 Group,來代表是同一組 partial group。
class Track
{
int 樂器id;
float[] 頻率;
float[] 能量;
int 起始單位時間;
int 持續單位時間;
Control[] control;
}
class Control
{
int type; //紀錄 control種類, ex: vibrato 就填1
int subType; //紀錄 是哪一個子類, ex: vibrato有三種,如果要第二種,就填2
string tablePath; //如果type是user define, 會由使用者指定這個路徑
int 起始單位時間; //在這個Track的單位時間多少時發生
int 持續單位時間;
}
小聽:
使用Java Swing製作GUI,先尋找一下網路上是否已有寫好的函式庫有提供我們所需要的功能。需要的功能細項待補。(我寫的字條放在 Lab …)
1. 畫waveform的panel (time domain、FFT)
2. 在波形圖上選取區段,變色效果。
3. 經由畫筆改變waveform
4. 可以自由配置視窗的功能
5. 隨不同視窗,改變工具列。
6. 屬性頁
7. midi檔的note number用樂譜形式呈現
showmin:
實作擷取一段聲音的 partials 並另存成樂器庫及 OLA additive synthesis。
2 則留言:
太感謝了, 我把相關的計劃開了其他串, 技術部分就由該管同學來維護. 這一串就只是這authoring tool的開發吧!
Hi:
我想變更一下工作的分配, 因為我想請仕偉加入, 所以原來小聽的工作可能要做一下變更, 而仕偉可以接原來assign給小聽的工作, 因為仕偉的古琴軟體很快就會需要這功能, 詳情就請見小聽與仕偉的串子. 另外要督促D.N.A.快一點把文森的東西弄玩以便整合進來. 我也想開始monitor這個工作的進行以便它早一點可以給師大的同學用.
So, 我們需要來一個meeting來確認嗎?
張貼留言