POPPUR爱换

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

作者: gzXW    时间: 2007-6-30 16:41
标题: [原创]利用AC3Filter进行多声道PCM->AC3重编码SPDIF输出试验
大家知道,SPDIF仅能传送2声道的非压缩的PCM音频流。当声卡要通过SPDIF输出多声道音频流时,必须先将PCM编码压缩成AC3、DTS等压缩音频流,再传送至SPDIF接口。, |& d: R9 x$ O1 T/ H# v
    采用C-Media公司CMI8788芯片的声卡支持AC3、DTS输出重编码,而Intel的部分型号主板的板载声卡也支持AC3、ADDT输出重编码。+ L# H7 t2 G/ r' j: ]+ D
     今天我上AC3Filter网站查看更新列表,发现新版AC3Filter已经增加AC3编码器,支持AC3重编码SPDIF输出!于是开始动手测试这一新特征。
, Y; Z, W5 o" s4 |' [0 g+ o; X8 p( J/ s. j4 ^2 A  K: X8 J
) b" G7 ~3 q2 f$ Z( w" `: {
    打开AC3Filter设置页,“Use AC3Filter for:”中勾选PCM。勾选PCM后,所有Direct Show应用程序在运行时,在音频流程中的PCM输出节点会自动调用AC3Filter接收处理PCM。
9 g/ u- N  J  E2 L/ ~3 q# P[attach]760968[/attach]- I- h  ?2 F: f3 @0 ?2 ?9 A
$ B! d; e6 a8 E3 K  i! c( Z
    为了更加直观看到整个音频的处理过程,我使用了Windows DDK中的Graph Edit工具进行测试。
# n, s5 o" d4 E- n; a4 _$ m6 j    身边没有外置的AC3解码器,变通利用SB Live声卡的AC3解码器作为最终的SPDIF输出解码。
+ x; Q, c1 {; w    设想的整个流程如下:2 K9 R7 B! x0 |5 e6 R. j1 C1 h) ^
    AVI文件->分离器->Dscaler解码得到多声音的PCM音频流->送入AC3Filter,编码成AC3->声卡SPDIF接口->SB Live的AC3解码器->声卡模拟接口->功放、音箱6 I7 A, S, J1 \2 \  d9 e$ {- y
[attach]760969[/attach]( R) ]( h7 @) C+ e

9 ?+ s: c0 M! n( ]0 ^2 u    最后用MPC验证。MPC中即使音频点选静音,仍然可以听到SPDIF输出&解码后的声音。% c/ r6 r6 L4 Y, ]) F. Z* i
[attach]760970[/attach]3 C/ D; K  a7 P; B

; Y+ {* r3 U% ?5 D9 i[ 本帖最后由 gzXW 于 2007-6-30 17:29 编辑 ]
作者: gzXW    时间: 2007-6-30 16:41
存在问题:' T" I# Q# q- b5 u
1、sb live只支持48K的SPDIF,如果播放非48K的音频会发生变调,加入ffdshow做SRC(44.1K->48K)后声音正常。* _' G1 Q! V* d; }
[attach]761087[/attach]5 H( @3 x' M  j1 E3 X/ ~

, j( K& V4 Y  `. q$ n5 w4 ]; oMPC中也可以加载ffdshow做SRC,AC3编码器同样工作正常:& ^0 J7 o: T# h" P& N" m$ p2 |
[attach]761088[/attach]& Z% H+ A0 n3 I- i

) n0 }- d# @( v( \5 v9 m9 k
, L" o. ]( H) o" b5 u. B+ y- `2、AC3Filter的AC3编码器使用范围还比较窄,仅限于directshow filter调用。如果能加入SRC、并做成renderer或虚拟声卡模式,则所有程序都可以方便直接使用AC3Filter,那样我就不用羡慕CMI8788之类声卡了。& K  k7 i5 p7 N
7 A& g$ o; M- s. t% B0 _
[ 本帖最后由 gzXW 于 2007-6-30 22:39 编辑 ]
作者: gzXW    时间: 2007-6-30 16:41
预留空位0002
作者: sd-iori    时间: 2007-6-30 17:33
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,
" d/ P- p. d4 `! k) L( z, R这样看来,,AC3编码变得没有意义了,,
( E7 J: J  o$ Q( ?; N2 t5 R# R) c2 Y1 ]" F
其实解码也是一样,,软件解码,,可以让声卡解码郁闷
作者: gzXW    时间: 2007-6-30 22:41
原帖由 sd-iori 于 2007-6-30 17:33 发表 7 g  f' K' z& `* |
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,
( n/ ^! P6 l: y这样看来,,AC3编码变得没有意义了,,1 p4 m: r! y+ Z" z; `- m
. N) f. ^' F3 ~5 G/ j8 D
其实解码也是一样,,软件解码,,可以让声卡解码郁闷
& M' s8 Q$ Q. @- M

6 h7 j# Q) w9 S! K% i1 g声卡直接支持的话使用方便啊:lol:




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