shimmer 寫:對了,順便問一下
media player 有沒有 ASIO 可以用?
一般的 Media Player 如果是走 DirectShow 的話,那幾乎可以確定是不可能支援 ASIO 的,要能支援 ASIO 必須要另外寫一套 audio 輸出的模式。不過如果退而求其次,目前已經有可以用 Kernel Streaming 輸出的解決方案了唷
有一個叫做
ReClock DirectShow Filter 的東西,本來的目的是避免影像跟顯示器更新不同步造成在螢幕上看起來一個畫面的上半部是後一張 frame 而下半部卻還是前一張 frame 的情況,它會在盡可能地自動把 frame rate 調整成螢幕更新頻率的因數。因為這玩意兒本身就是一個 audio output 的 filter 所以作者也幫它加入了 kernel streaming 的功能。但是要注意的是看影片的時候用這個,音質可能反而不會更好,因為調節 frame rate 的話,影片的播放速度也會改變,而聲音的部份也因此必須要作一次 src 的動作,這樣在改變速度的時候聲音的音調才不至於改變,不過目前 reclock 內建的 resmapler 的品質還不錯,選到 very good 或 excellent 的情況下,我覺得很難分出差異,但是 excellent 非常耗 CPU cycle,電腦不夠力的話就沒辦法囉。像我的電腦就無法在看 HD video 的時候用 excellent 品質。
如果是聽音樂的話就沒這種困擾囉,可以 bit exactly 傳送到音效卡上,也就是說連普通的 media player 也可以用 kernel streaming 來輸出囉
