:::

[日記]談Timemark Editor

4月 16, 2006 0 Comments Edit Copy Download

我做OPED的字幕,用來抓時間軸的方式,便是使用這種Timemark。

原本的程式是出自於Winamp上的一個外掛:Gucchi's Lyrics Plug-In Version1.12。裝上這個外掛,播放Winamp時便可以開啟一個Karaoke Viewer,將自己加上時間標籤之後的歌詞載入之後,便能從那個視窗當中看到有如卡拉ok般的字幕。這種字幕與影片分開的作法,還是沒辦法解決製作字幕的需求,不過他優秀的時間標籤編輯能力,被卡拉小站拿來當作是製作SSA的時間軸編輯工具,而我透過卡拉小站的教學,這個方法也就這樣傳承下來了。

我另一個將Timemark轉換成SSA檔案的程式,目前已經開發到第三版(版本完全沒意義啊XD)。如果將TM editor加入的話,一定可以成為更完善的字幕編輯程式。現在是缺少構思版面的靈感啊......

話說回來,這個程式得歸功於siroma,靈感就是從她那邊來的。這個程式從週五晚上開始撰寫,首先完成影片部分的控制(主要是開啟影片的功能),再來嘗試在textarea標籤裏面直接加入tm,不過這部份我失敗了,不管是IE專用的createTextRange()或是WYSIWYG的作法我都無法模倣。週六晚上與siroma討論之後,決定使用input的text標籤來模擬textarea的效果。雖然這種方法做為編輯器不盡完善,但是資料卻相當地好控制。另外也以innerHTML的方式靈活調整TM Editor的編輯行數欄位,而不至於像TTS那樣受到行數的限制。撰寫時也降低了「格式與內容分開」的原則,這次將各段功能拆開,而顯示的格式直接寫入功能當中,這樣將造成許多多餘的程式碼,但在維護上絕對是比較有利的,尤其是受限於「只寫一個HTML程式」的條件之下。

這個TM Editor只能在Internet Explorer裡面發揮功用。這是因為Firefox等Mozilla系的瀏覽器引擎對event.keyCode按鍵偵測的功能缺少支援,所以暫時無法提供Firefox使用。聽說W3C也在擬定keyCode更高等級的標準化,期待那天的到來。

題外話,Timemark實際上應該是Time Tag(タイムタグ),不過當初在用的時候不知道哪裡少根筋,就變成這種奇怪的專有名詞了。這個錯誤就在整個完整版完成之後再來修改吧XD。


就在不久以前的對話:

P: TM editor寫完了,我們是不是還決定做哪些功能啊?

S: 你是說字幕檔的預覽功能嗎?

P: 對對,不過要怎麼做呢?

S: javascript的setTimeout()或許是個不錯的方法喔。

P: ......我開始覺得我期中考完全不會想唸書了orz