2010年3月4日 星期四

試作TTS (Text-To-Speech) for Flash


今天有朋友分享一個Flash的Text-To-Speech服務,網址在這
http://www.flashrealtime.com/real-text-to-speech-for-your-flash-apps/



這讓我突然想起來,之前因為專案的需求,曾經找過類似的資料,當時由於忙別的東西,所以就停了下來沒把這TTS寫出來。
其實這種TTS的服務有一個遠在天邊近在眼前,那就是Google。

Google並沒有真的「公開」的提供TTS的api給大家用,但是它卻有一個服務是有TTS功能的,而且TTS因為是聲音檔的關係,所以並不需要crossdomain policy就可以播放(當然,如果你要把它丟進mixer裡就是另一回事了)。因此這個服務即使Google沒有置放crossdomain.xml,也可以「不要太明目張膽」的使用。(如果要商業上使用請小心啊... 最好不要亂用...)
喔對,這個服務就是「Google翻譯」。

不過不管是上面那個FlashRealtime的TTS或是Google翻譯TTS,都.不.支.援.中.文!!

但我還是寫了一下powered by Google的TTS。

swf在這裡

整個程式十分簡單,就是直接new一個Sound類別去load一串網址而已:
http://translate.google.com.tw/translate_tts?tl=en&q=whatever you want to speek

就結束了。

因為之前有寫好了mp3切割及串接的類別檔,想說既然是可以直接用Sound類別讀進來,那應該就是mp3格式了吧?
於是順便的Google丟出來的東西丟到我的類別檔裡,但是結果卻發現它不是正確的mp3格式!?
這個問題目前還是無解,挺怪。

另外一個奇怪的問題,在本機寫這個TTS的時候,我送出request一直收到IOError,但是一擺到瀏覽器裡去看就ok!?
我猜Google應該是有做了什麼手腳限定一定要用瀏覽器才給資料吧?

總之就是這樣。

2010年3月1日 星期一

令人眼睛一亮的BingMaps


今天把玩了一下SilverLight版本的BingMaps,覺得它很威。
微軟很久以前就有個計劃叫PhotoSynth,現在透過BingMaps終於看到實體應用了,不過GoogleMap之前就已經擁有類似PhotoSynth的功能,所以相對的在BingMaps上看到就比較不這麼讓人驚豔,但是微軟在Demo時有demo到「live video」的synth,就很讓人想要鼓掌了。
Video在這邊:


PhotoSynth:


點Overhead View之後,會發現它把所有附近的圖片都依照地理位置湊起來了,有的點甚至多到可以看出大概地貌,很威。(我記得這也是當初PhotoSynth的終極目標)



除了PhotoSynth以外,我還很喜歡BingMaps的Bird’s Eye模式,這一點也是GoogleMap缺乏的,Bird’s Eye可以很清楚的看到當地的建築物高度位置,比衛星空照圖要人性化多了。


而且還可以旋轉,哈哈!


挺好玩的,另外一部份比較讓我感到驚訝的是SilverLight的發展速度,不久之前還挺陽春的,現在已經搞這麼完整了。嘖嘖。
是該時候再注意一下SilverLight的狀況了。