POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
查看: 17163|回复: 4
打印 上一主题 下一主题

[原创]利用AC3Filter进行多声道PCM->AC3重编码SPDIF输出试验

[复制链接]
跳转到指定楼层
1#
发表于 2007-6-30 16:41 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
大家知道,SPDIF仅能传送2声道的非压缩的PCM音频流。当声卡要通过SPDIF输出多声道音频流时,必须先将PCM编码压缩成AC3、DTS等压缩音频流,再传送至SPDIF接口。
! m( s% k/ v0 T7 d! Q4 z8 Y    采用C-Media公司CMI8788芯片的声卡支持AC3、DTS输出重编码,而Intel的部分型号主板的板载声卡也支持AC3、ADDT输出重编码。
: v# z2 g( W' H5 u5 u* N     今天我上AC3Filter网站查看更新列表,发现新版AC3Filter已经增加AC3编码器,支持AC3重编码SPDIF输出!于是开始动手测试这一新特征。
& \* D# m; A8 a) E5 a  ^; d- _+ o/ Q( B9 E# z' }

- L* n2 m- f% B% R/ O% F5 u    打开AC3Filter设置页,“Use AC3Filter for:”中勾选PCM。勾选PCM后,所有Direct Show应用程序在运行时,在音频流程中的PCM输出节点会自动调用AC3Filter接收处理PCM。
( C7 U1 b! _! }1 q! G, B5 `: `7 ]- ?" k9 H

) O" u! k9 p0 g- U$ W0 E; Q    为了更加直观看到整个音频的处理过程,我使用了Windows DDK中的Graph Edit工具进行测试。2 P9 c& q/ M6 A5 r, @- `- s/ ~2 f
    身边没有外置的AC3解码器,变通利用SB Live声卡的AC3解码器作为最终的SPDIF输出解码。1 L% H- g, c/ |' j- ?
    设想的整个流程如下:" s# @6 r$ H4 }% O9 e% x$ z
    AVI文件->分离器->Dscaler解码得到多声音的PCM音频流->送入AC3Filter,编码成AC3->声卡SPDIF接口->SB Live的AC3解码器->声卡模拟接口->功放、音箱) U3 K/ j- H& L7 H  \

8 [& x, ^. M, g9 q3 L7 M: x" h4 n
$ z- D6 k& K; P    最后用MPC验证。MPC中即使音频点选静音,仍然可以听到SPDIF输出&解码后的声音。) F' _3 A- H& {* G2 z; N

# a& `0 e8 p$ f0 I6 N( R* S
: R3 Q7 j% ~3 d# E) Q[ 本帖最后由 gzXW 于 2007-6-30 17:29 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
5#
 楼主| 发表于 2007-6-30 22:41 | 只看该作者
原帖由 sd-iori 于 2007-6-30 17:33 发表 ' n8 {4 O8 f7 I, o4 Z9 Q4 C
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,6 j, u. G# _( V- G
这样看来,,AC3编码变得没有意义了,," ^  q( v- X9 B, u5 C0 l

, j+ ^) x, h- X其实解码也是一样,,软件解码,,可以让声卡解码郁闷

; h. K5 W+ q+ G' h" F5 T2 h5 Z7 f, R5 t% b' ~, R' q, y
声卡直接支持的话使用方便啊:lol:
回复 支持 反对

使用道具 举报

4#
发表于 2007-6-30 17:33 | 只看该作者
:shifty: 怪不得,,傲王取消SQ681和SQ680+的发布,,
( n6 ~  B. C9 w- o  w这样看来,,AC3编码变得没有意义了,,0 V8 a8 z! v! K1 O. ^: t9 E, D

7 }& {6 Z/ I' l" o2 E, N其实解码也是一样,,软件解码,,可以让声卡解码郁闷
回复 支持 反对

使用道具 举报

3#
 楼主| 发表于 2007-6-30 16:41 | 只看该作者
预留空位0002
回复 支持 反对

使用道具 举报

2#
 楼主| 发表于 2007-6-30 16:41 | 只看该作者
存在问题:* J2 N% m3 l3 h. q0 h
1、sb live只支持48K的SPDIF,如果播放非48K的音频会发生变调,加入ffdshow做SRC(44.1K->48K)后声音正常。9 W* r* L2 I9 O6 [) G, X

* N; h7 w8 H+ `5 g7 }' `/ F# K0 ^8 w  v" r
MPC中也可以加载ffdshow做SRC,AC3编码器同样工作正常:2 B' ]' U; n/ B

. L0 g3 ~) u. J1 D; q
0 A: \9 v1 Q( {' C
0 y' ?/ s8 ^/ ]5 W0 p) n2、AC3Filter的AC3编码器使用范围还比较窄,仅限于directshow filter调用。如果能加入SRC、并做成renderer或虚拟声卡模式,则所有程序都可以方便直接使用AC3Filter,那样我就不用羡慕CMI8788之类声卡了。
# a" y: M: H. X$ @3 [; a" @
6 ?# ]; Q6 P" \; l6 @) R1 e0 I2 y; Y: r' i[ 本帖最后由 gzXW 于 2007-6-30 22:39 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

广告投放或合作|网站地图|处罚通告|

GMT+8, 2025-10-19 05:15

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

快速回复 返回顶部 返回列表