POPPUR爱换

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

作者: gzXW    时间: 2007-6-30 16:41
标题: [原创]利用AC3Filter进行多声道PCM->AC3重编码SPDIF输出试验
大家知道,SPDIF仅能传送2声道的非压缩的PCM音频流。当声卡要通过SPDIF输出多声道音频流时,必须先将PCM编码压缩成AC3、DTS等压缩音频流,再传送至SPDIF接口。. I( e! |* x  T- |: N" R
    采用C-Media公司CMI8788芯片的声卡支持AC3、DTS输出重编码,而Intel的部分型号主板的板载声卡也支持AC3、ADDT输出重编码。
" v, z* V3 A9 p3 e7 u     今天我上AC3Filter网站查看更新列表,发现新版AC3Filter已经增加AC3编码器,支持AC3重编码SPDIF输出!于是开始动手测试这一新特征。
4 S0 }; X+ j  Q; O$ c2 K* @8 W
  P2 \. T4 V* H7 v& N4 e: j+ v( W2 Z" W- ]6 e# Y3 i/ r
    打开AC3Filter设置页,“Use AC3Filter for:”中勾选PCM。勾选PCM后,所有Direct Show应用程序在运行时,在音频流程中的PCM输出节点会自动调用AC3Filter接收处理PCM。
9 F# H# \8 v, k$ W; A" J[attach]760968[/attach]' R: E. _  a8 {# M  n. c) \) T

/ S& T) h) o8 _: |$ `, z  R    为了更加直观看到整个音频的处理过程,我使用了Windows DDK中的Graph Edit工具进行测试。
, n- {2 P; m2 q( o, T3 z+ m7 i( P    身边没有外置的AC3解码器,变通利用SB Live声卡的AC3解码器作为最终的SPDIF输出解码。9 x$ J: \( H/ K8 t7 v. w
    设想的整个流程如下:- l0 L# _% t! b4 A" D+ [
    AVI文件->分离器->Dscaler解码得到多声音的PCM音频流->送入AC3Filter,编码成AC3->声卡SPDIF接口->SB Live的AC3解码器->声卡模拟接口->功放、音箱2 r+ R* V* q6 \1 `* K% y
[attach]760969[/attach]
- G2 @/ L, l/ k8 K  e0 ]9 H' N4 j4 L. d6 z
    最后用MPC验证。MPC中即使音频点选静音,仍然可以听到SPDIF输出&解码后的声音。* X( H/ n2 e9 G/ H
[attach]760970[/attach]$ l( P1 ~& [9 u  |/ E
+ P5 d, p( ~: A! o- X  P0 J  F
[ 本帖最后由 gzXW 于 2007-6-30 17:29 编辑 ]
作者: gzXW    时间: 2007-6-30 16:41
存在问题:
4 Z/ I! U7 }: s1、sb live只支持48K的SPDIF,如果播放非48K的音频会发生变调,加入ffdshow做SRC(44.1K->48K)后声音正常。
) T" X+ [6 }! C- f7 [8 y) ^& C- H( }[attach]761087[/attach]0 d1 |5 T' H4 J% A& o
/ [) e$ O4 W7 p* |: R& J$ s$ q
MPC中也可以加载ffdshow做SRC,AC3编码器同样工作正常:
: U1 \8 J: ^9 a[attach]761088[/attach]
" M5 W/ k* a  U2 n8 z+ D# i5 z' i3 `5 O" a* y

/ w4 q  s6 T& H2 D9 B; ]2、AC3Filter的AC3编码器使用范围还比较窄,仅限于directshow filter调用。如果能加入SRC、并做成renderer或虚拟声卡模式,则所有程序都可以方便直接使用AC3Filter,那样我就不用羡慕CMI8788之类声卡了。9 ?" b( Z3 w2 ~" c/ R& ~# D, u( Z
! k8 M* A: }! m# p0 J2 z" z; C! A
[ 本帖最后由 gzXW 于 2007-6-30 22:39 编辑 ]
作者: gzXW    时间: 2007-6-30 16:41
预留空位0002
作者: sd-iori    时间: 2007-6-30 17:33
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,; c' B. ^6 b6 D1 h1 o
这样看来,,AC3编码变得没有意义了,,5 B) a# R+ M/ @2 e5 S) W6 z/ v

( S/ [0 ]( i6 N其实解码也是一样,,软件解码,,可以让声卡解码郁闷
作者: gzXW    时间: 2007-6-30 22:41
原帖由 sd-iori 于 2007-6-30 17:33 发表 6 p! _. W& ?6 U# H; C6 r
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,
" g, f6 W# V' Z4 L9 w* c. B! c这样看来,,AC3编码变得没有意义了,,! f3 Q$ w' V+ @  G) G, N
8 h% `4 M' z/ P! \: c$ Z9 Y
其实解码也是一样,,软件解码,,可以让声卡解码郁闷

: t  {6 Q9 L5 w( s0 I/ M& A/ b1 Y. a1 P& P3 E0 q# p4 R0 T+ [
声卡直接支持的话使用方便啊:lol:




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