POPPUR爱换

标题: [原创]利用AC3Filter进行多声道PCM->AC3重编码SPDIF输出试验 [打印本页]

作者: gzXW    时间: 2007-6-30 16:41
标题: [原创]利用AC3Filter进行多声道PCM->AC3重编码SPDIF输出试验
大家知道,SPDIF仅能传送2声道的非压缩的PCM音频流。当声卡要通过SPDIF输出多声道音频流时,必须先将PCM编码压缩成AC3、DTS等压缩音频流,再传送至SPDIF接口。
3 Y* o3 F0 F* ?" s    采用C-Media公司CMI8788芯片的声卡支持AC3、DTS输出重编码,而Intel的部分型号主板的板载声卡也支持AC3、ADDT输出重编码。( H; u9 u  b! d# j/ L
     今天我上AC3Filter网站查看更新列表,发现新版AC3Filter已经增加AC3编码器,支持AC3重编码SPDIF输出!于是开始动手测试这一新特征。
( }: l+ y* f  c4 y4 [. p
0 P2 m6 s" w0 w3 Q$ o  I6 m3 L% I  W7 V: u
    打开AC3Filter设置页,“Use AC3Filter for:”中勾选PCM。勾选PCM后,所有Direct Show应用程序在运行时,在音频流程中的PCM输出节点会自动调用AC3Filter接收处理PCM。5 o8 F6 A4 I; {* T$ S
[attach]760968[/attach]1 k. C" S( d) I/ ?
  J5 {- U' X6 g1 p
    为了更加直观看到整个音频的处理过程,我使用了Windows DDK中的Graph Edit工具进行测试。
3 M  |: N9 N* H    身边没有外置的AC3解码器,变通利用SB Live声卡的AC3解码器作为最终的SPDIF输出解码。1 @) C6 n4 p5 C% p9 i! ]
    设想的整个流程如下:/ J2 }$ k. Z6 D7 Z" s7 T3 c7 l7 o: k
    AVI文件->分离器->Dscaler解码得到多声音的PCM音频流->送入AC3Filter,编码成AC3->声卡SPDIF接口->SB Live的AC3解码器->声卡模拟接口->功放、音箱% K3 F) c( L( {, U
[attach]760969[/attach]/ k6 {+ g1 k' c9 J$ c

  T. J  A' x0 I/ ?3 T) V! ^3 e    最后用MPC验证。MPC中即使音频点选静音,仍然可以听到SPDIF输出&解码后的声音。
; L0 d# o% J3 X. u. C. S9 K' f[attach]760970[/attach]
/ _$ v( S. s4 Q% ]" I+ B% s$ B& ?( k
[ 本帖最后由 gzXW 于 2007-6-30 17:29 编辑 ]
作者: gzXW    时间: 2007-6-30 16:41
存在问题:
) V( e% |# N+ T. q1、sb live只支持48K的SPDIF,如果播放非48K的音频会发生变调,加入ffdshow做SRC(44.1K->48K)后声音正常。4 L4 q- X1 C& v2 t' z& L: L  Y
[attach]761087[/attach]* s. G! r; c/ o" ?) j( H

/ M& @" a: O/ F, g/ x! i$ g3 i, aMPC中也可以加载ffdshow做SRC,AC3编码器同样工作正常:
: L8 [3 b- n$ Y/ |( ?4 E[attach]761088[/attach], W' d' ~) ?/ [/ P5 ^: _

$ u+ b/ b1 b+ J% d0 r5 z) d9 l
! i' y0 V& _! I+ S( b2、AC3Filter的AC3编码器使用范围还比较窄,仅限于directshow filter调用。如果能加入SRC、并做成renderer或虚拟声卡模式,则所有程序都可以方便直接使用AC3Filter,那样我就不用羡慕CMI8788之类声卡了。! v, T+ z- t/ R& H+ n
0 X( \; [+ s+ {4 `% C. d
[ 本帖最后由 gzXW 于 2007-6-30 22:39 编辑 ]
作者: gzXW    时间: 2007-6-30 16:41
预留空位0002
作者: sd-iori    时间: 2007-6-30 17:33
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,  S5 _8 Q. l9 [$ K) n: t5 H: T
这样看来,,AC3编码变得没有意义了,,
, C$ k9 C1 ?6 ]
: e  \  N$ ]% n& e其实解码也是一样,,软件解码,,可以让声卡解码郁闷
作者: gzXW    时间: 2007-6-30 22:41
原帖由 sd-iori 于 2007-6-30 17:33 发表
: v, k- W5 o. k4 V:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,
- R- S; O/ `; T0 x这样看来,,AC3编码变得没有意义了,,
! ^/ F+ a% |2 T9 R5 @
# G: D! v$ [0 E3 k. G% y其实解码也是一样,,软件解码,,可以让声卡解码郁闷

8 ?1 t* e- Y* f3 V* G! g1 |9 A1 ?& W. F* ~- x% V4 f
声卡直接支持的话使用方便啊:lol:




欢迎光临 POPPUR爱换 (https://we.poppur.com/) Powered by Discuz! X3.4