POPPUR爱换

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

作者: gzXW    时间: 2007-6-30 16:41
标题: [原创]利用AC3Filter进行多声道PCM->AC3重编码SPDIF输出试验
大家知道,SPDIF仅能传送2声道的非压缩的PCM音频流。当声卡要通过SPDIF输出多声道音频流时,必须先将PCM编码压缩成AC3、DTS等压缩音频流,再传送至SPDIF接口。
! z3 @9 a! ?" D4 G/ v8 D: X    采用C-Media公司CMI8788芯片的声卡支持AC3、DTS输出重编码,而Intel的部分型号主板的板载声卡也支持AC3、ADDT输出重编码。  v( w7 @: P4 B+ C0 H1 t, U( L
     今天我上AC3Filter网站查看更新列表,发现新版AC3Filter已经增加AC3编码器,支持AC3重编码SPDIF输出!于是开始动手测试这一新特征。
$ j2 z  g0 S' F+ V7 c' m" }$ L0 l' D6 G4 _; p* D& Z$ R

. r5 S, o# Q' Z1 }' t2 A% T# l    打开AC3Filter设置页,“Use AC3Filter for:”中勾选PCM。勾选PCM后,所有Direct Show应用程序在运行时,在音频流程中的PCM输出节点会自动调用AC3Filter接收处理PCM。& [7 |2 N! b2 U/ \: L$ J3 }# j$ q
[attach]760968[/attach]7 H) [! g( t: O* ~' L4 ~5 V
$ ?/ {, L  c# d1 H) t' w
    为了更加直观看到整个音频的处理过程,我使用了Windows DDK中的Graph Edit工具进行测试。
, j1 E* }! E! @9 }4 J    身边没有外置的AC3解码器,变通利用SB Live声卡的AC3解码器作为最终的SPDIF输出解码。
  [7 b  H" `9 \5 e    设想的整个流程如下:
% ^; k5 C4 C' ]# s& M% h    AVI文件->分离器->Dscaler解码得到多声音的PCM音频流->送入AC3Filter,编码成AC3->声卡SPDIF接口->SB Live的AC3解码器->声卡模拟接口->功放、音箱% i3 c, D" E+ J* f1 n3 K2 t% y
[attach]760969[/attach]
7 I2 }+ t  }: u- {; C7 S1 x* s# k  B5 J: e8 {" m/ G' @& t
    最后用MPC验证。MPC中即使音频点选静音,仍然可以听到SPDIF输出&解码后的声音。
: ]$ S! h, c) L3 W" p/ [[attach]760970[/attach]/ S2 M$ |0 c( U, R4 C% l/ V

2 l8 n6 ?6 c9 a" \5 @[ 本帖最后由 gzXW 于 2007-6-30 17:29 编辑 ]
作者: gzXW    时间: 2007-6-30 16:41
存在问题:
( q& z0 ^% ?! z: z& i5 O* i+ i8 S1、sb live只支持48K的SPDIF,如果播放非48K的音频会发生变调,加入ffdshow做SRC(44.1K->48K)后声音正常。
3 c& U! W; {# g) ^- u. R3 t) L[attach]761087[/attach]: A  \; o3 x' g* D( o
0 A4 |( V, v3 y$ j
MPC中也可以加载ffdshow做SRC,AC3编码器同样工作正常:% W2 P, @2 o% R# n: P1 d* d
[attach]761088[/attach]
, z" y' f2 d0 y6 i9 K/ M, n+ c$ ~2 c3 [  T* d4 x& P/ q
4 ^$ |$ F  t# v1 O% o; x
2、AC3Filter的AC3编码器使用范围还比较窄,仅限于directshow filter调用。如果能加入SRC、并做成renderer或虚拟声卡模式,则所有程序都可以方便直接使用AC3Filter,那样我就不用羡慕CMI8788之类声卡了。* p# a' }( H/ f" J8 ~5 C

' `7 V5 N. k( v% a, U: J+ u[ 本帖最后由 gzXW 于 2007-6-30 22:39 编辑 ]
作者: gzXW    时间: 2007-6-30 16:41
预留空位0002
作者: sd-iori    时间: 2007-6-30 17:33
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,
  r* V/ Q6 C0 k8 o( a$ S6 @这样看来,,AC3编码变得没有意义了,,$ P7 Q( w6 l# ?4 A6 P
# ?+ b" D2 O+ \! e
其实解码也是一样,,软件解码,,可以让声卡解码郁闷
作者: gzXW    时间: 2007-6-30 22:41
原帖由 sd-iori 于 2007-6-30 17:33 发表 4 k( I- h) x. L2 h- r% ^
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,4 W; m2 \0 l6 K( Z# }
这样看来,,AC3编码变得没有意义了,,: ]  S2 O1 `4 T$ z. s9 M% u

, C9 W2 Y8 @" m& X+ K" T3 T其实解码也是一样,,软件解码,,可以让声卡解码郁闷

- e, Z+ _0 S6 o' w. ]8 r( h7 q# L0 k1 ?4 L/ s" u& I
声卡直接支持的话使用方便啊:lol:




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