史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > 多媒體影音轉檔燒錄技術文件
忘記密碼?
論壇說明

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2004-01-04, 08:37 AM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 FooBar 2000 Output部份(輸出)

幾種輸出方式FAQ

Q: Directsound 與 Waveout 有何不同?

A: Waveout 是在32位的Windows上的一種老舊且過時,用來播放數字音訊的應用程式接頭(Application Programming Interface,簡稱API)。

舊的Windows操作系統(如Win9x WinNT4)在 Waveout 的完成度很高(因為 waveout 是針對這些操作系統設計的),如果你想獲得最好的效能,你應該在這些操作系統上使用 Waveout輸出。

然而 Waveout 的功能有所局限,它無法支持「混和多重音訊流」的功能。
這顯示在Win2k/XP下的Waveout,只是為了舊的軟體的相容性所提供的,也因此Win2k/XP下 Waveout 的完成度很糟,它沒有使用任何的硬體加速功能,所有的混音動作都是用軟體來執行(因此當CPU的使用率很高時,常常會發生類似CD跳針的斷音現象)。

Directsound 是種較新、較現代化的聲音播放 API,都已經內建在最近的32位Windows操作系統中。 Directsound 支持混和多重音訊流、獨立的音量控制、硬體加速層及硬體仿真層(如果某些功能硬體無法支持 ,可以用軟體來仿真,因此程序設計師無須擔心他們的新 l33t 碼無法在舊的聲霸卡16上運作)。

一般來說,只要你的操作系統安裝了適當的音效卡驅動程式及最新的 DirectX,Direstsound 都應該可以運作的很好(除了WinNT4以外)。


在Win2k/XP下,Directsound 比 waveout 更好,因為在這些操作系統裡,Directsound 的完成度相對的比 waveout 來的更高(比 waveout 佔用較少的CPU資源,自由度較高,且不會有 Waveout 一般的小毛病)。

Directsound 原本是被設計來讓遊戲利用系統的硬體加速功能,而無須直接接觸低階的硬體函數(就如同 DirectX 其它的元件)。


Q: 為何 Directsound 總是比 waveout 來的小聲?

A: 在Win2k/XP中,改變 waveout 的音量似乎會改變整體音量的設定,然而 Directsound 的音量是獨立控制的。

換句話說,你用 waveout 來播放音樂,你將音量設為50%,你就會得到50%的音量,然後你用 Directsound來播放,你將音量設為50%,你只會得到最大音量的25%。解決之道:別使用 waveout,並在Windows的音量控制中將音量設為最大。


Q: Directsound 及 waveout 之間的聲音輸出品質有所不同嗎?

A: 在Win2k/XP下(或者使用WDM驅動程式),waveout 及 Directsound 只有在傳輸 PCM 資料給 Windows kernel mixer(Windows內核混音器)上有兩點不同。


waveout 只使用軟體混音,因此較少造成系統中的特殊問題,而 Dircetsound可以使用硬體混音,因此會造成某些已知的,聲音品質的問題。
在Win9x下,Directsound 驅動系統完全的與 waveout 分離,並使用低階的方式來控制硬體,因此這就像拿兩種不同的驅動程式來配合 waveout 及 Directsound。

在使用某些老舊的ISA接頭的音效卡時,Directsound為了節省 ISA 總線的頻寬,有著會將音訊資料降低取樣率至 22khz 8bit (或者其它相近的取樣率)的問題。

Q: 對於 Directsound 而言,軟體混音及硬體混音有何不同?


A: 在 WinXP sp1、DirectX 8.1 中,無論是使用微軟的 Directsound 核心或者是驅動程式來進行硬體混音,都很容易碰到問題。目前已經證實,在 Winxp 下使用硬體混音來傳輸音訊資料時,即使是使用不同的音效卡,皆會碰上「取樣頻率」的問題。

特別是某些驅動程式存在已久的問題(著名的創新未來 Audigy 音效卡 Skipping問題,在某些設定中會出現不間斷、靜態的雜音,甚至在某些例子中,會發生聲音品質驟降的情形,天曉得為何會如此!)。


如果你想穩定的運作電腦,那建議你最好把硬體加速給關掉。硬體混音可以foobar2000 的偏好設定中的 Driectsound 這個字段裡找到 "allow hardware acceleration"。開啟它不代表你就真的啟動了這個功能(Directsound 會在沒有可用資源時自動使用軟體混音)。


Q: 何謂 Kernel Streaming(內和音瀕流) ?

A: Kernel Streaming 會繞過 Windows kernel mixer,直接輸出音瀕信號給音效卡。這種方式有著較低的輸出延遲,也許可以被視為 ASIO output 之外的另一種選項。

Q: 我應該用 Kernel Streaming 嗎?

A: 如果你的音效卡及驅動程式能支持,且你使用 Kernel Streaming 沒有什麼問題的情況下,我會建議你使用Kernel Streaming 。


Q: 為何使用 Kernel Streaming 來輸出,比使用 Directsound 輸出,感覺聲音變的更大聲或者明亮?

A: 聲音並沒有變的明亮,只有變大聲。因為輸出資料給音效卡的方式不同,因為繞過了 Windows 的混音器,音量控制(wave)對於 Kernel Streaming 是無效的,而且都以最大音量來輸出。

如果你將音量控制中的 wave 音量設為最大,並使用 Directsound 輸出,你會發現音質和 Kernel Streaming 輸出沒什麼不同。

Q: 哪些操作系統可以使用 Kernel Streaming ?

A: Kernel Streaming 只能在 Windows 2000 及 Windows XP 上運作,有人說應該可以在Windows ME 上運作一開啟 foobar2000, 你會發現它連 播放, 停止 這些基本的按鈕都沒有, 你可以到Foobar2000>參數設定>DSP Manager, 把右邊的 重采樣 (SSRC) 移到左邊, 然後在 DSP Manager 下的 重采樣 裡, 把 目標采樣頻率 設定成你 soundcard 本身的采樣率以下是一些建議數值 (參考自 DearHoney 的 RMAA 資料庫):

44100 - SB16, AWE32, AWE64 和其它類似的 ISA soundcard

48000 - SB PCI, SBLive, Audigy1, Audigy2, Extigy, Philips AE, Sonic Fury, Yamaha 7x4 和一般的 onboard soundcard

96000 - Audigy2 和一些真正支持 96khz 的 soundcard, 例如 Terratec 的
在使用 重采樣 之後, 再試試播放上面提及的兩個測試訊號, 聽聽是否只聽到很純很尖的超高頻聲音, 而且聽不出兩個檔案的分別。

如果是的話, 高質素的 src 已經成功了。否則請到foobar2000>參數設定>Output 裡, 試試選用不同的 Output, 如 Kernel Streaming (只限 WDM driver), 變更 DirectSound/WaveOut 裡的各種設定再試試看, 如果仍然失敗的話, 試試在 Windows 音量控制裡按 選項>進階控制, 看看是否有高低音控制, 如果有的話, 把高低音都移到正中間再試試看 (如果本身已經在中間就不用移了), 如果還是不行的話, 我也無話可說。


注意使用 Kernel Streaming 時 Windows 音量控制裡的 wave 輸出可能會無法控制, 那是正常的現象。


接著到 Playback 一欄, 會有一個 Output bit depth 的選項, 只有 soundcard 真正支持 24-bit 時才選項 24-bit (Audigy1 是 16-bit, Audigy2 才是 24-bit), 因為在不支持 24-bit 的 soundcard 上選 24-bit 只會令音質比 16-bit 更差, 即使你可能聽不出。

ASIO FAQ [夢想王國]

Q: 什麼是ASIO?

A: ASIO是Audio Stream Input Output的縮寫。由Steinberg發展出的一種多重聲道音瀕傳輸傳輸協定。

Q: 為什麼在WinXP下,使用ASIO會比Directsound輸出好?

A: ASIO會跳過Windows Kernel Mixer,和Kernel Streaming一樣,但是在某些生卡上使用Kernel Streaming 會發生當機的情況,因此ASIO被視為另一種替代的選項。

Q: 如果我要使用音效卡的數字輸出(SPDIF/光纖),那我要選用哪種API呢?
A: 你必須使用DirectSound來輸出數字信號,使用waveOut或Kernel Streaming均輸出錯誤的的數字信號。

ASIO 簡介[X-Sound]

ASIO:Audio Stream Input Output,這是一套帶有專業色彩的API,名字就說明問題,是一套專門負責輸入輸出的API。

在專業創作的時候,一點平時並不起眼的延時都會嚴重的破壞創作情緒,當按下琴鍵後需要幾百毫秒才能有所反應的話,會是一個什麼樣子的感覺。

ASIO因此誕生,音樂製作軟體Cubase VST的開發者Steinberg公司提出了被稱為Audio Stream Input Output的標準規範,ASIO完全擺脫了Windows操作系統對硬體的集中控制,它能實現在音瀕處理軟體與硬體之間進行多通道傳輸的同時,將系統對音瀕流的回應時間降至最短。


這套API在普通播放和錄音時並沒有大的優勢,因此也不是太多音效卡支持。

http://www.saunalahti.fi/%7Ecse/html/foobar.html #大部份插件

http://foobar.nease.net/3rdplugins.htm #其它插件
VBR(Variable Bitrate)動態比特率。也就是沒有類BIOS的比特率,壓縮軟體在壓縮時根據音瀕資料即時確定使用什麼比特率,這是以品質為前提兼顧文件大小的方式。

ABR(Average Bitrate)平均比特率,是VBR的一種插值參數。LAME針對CBR不佳的文件體積比和VBR產生文件大小不定的特點獨創了這種編碼模式。ABR在指定的文件大小內,以每50畫格(30畫格約1秒)為一段,低頻和不敏感頻率使用相對低的流量,高頻和大動態表現時使用高流量,可以做為VBR和CBR的一種折衷選項。

CBR(Constant Bitrate),常數比特率,指文件從頭到尾都是一種比特率。相對於VBR和ABR來講,它壓縮出來的文件體積很大,而且音質相對於VBR和ABR不會有明顯的提高。


[短歌行]
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
 



發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用

相似的主題
主題 主題作者 討論區 回覆 最後發表
啟動光碟製作完全手冊 psac 應用軟體使用技術文件 3 2004-05-19 11:14 PM
Microsoft Windows 2000 應用程式相容性 psac 作業系統操作技術文件 1 2003-08-12 12:02 AM
Windows 2000/Xp 錯誤編號詳解(收集整理) psac 作業系統操作技術文件 9 2003-08-03 03:27 PM


所有時間均為台北時間。現在的時間是 07:44 PM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1