None functions in APO, such as IsInputFormatSupported(), is called when the media is changing from 2ch to 6ch file by using WinAmp. From APO side, we can not detect any actions. But it is very strange that when we play 6ch file first and then the 2ch file. APO can be correctly informed and a format negotiate process will be perform by IsInputFormatSupported() and IsOutputFormatSupported(). It is hard to explain. BTW, WinAmp is using DSound plug-in to output sound. It is OK when we just play 2ch file or just play 6ch file and then close the WinAmp. Mike ________________________________ 发件人: wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] 代表 Cheng-mean Liu (SOCCER) 发送时间: 2009年8月4日 0:47 收件人: wdmaudiodev@xxxxxxxxxxxxx 主题: [wdmaudiodev] Re: Question about APO and multichannel inputs When running with different players, are you seeing different behavior (call parameters, return code) in your APO's handling of IsInputFormatSupported()? From: wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of MikeLee@xxxxxxxxxxxxxx Sent: Monday, August 03, 2009 5:46 AM To: wdmaudiodev@xxxxxxxxxxxxx Subject: [wdmaudiodev] Question about APO and multichannel inputs Hi All, I am developing a LFX APO to implement a stereo headphone with surround effect. The APO includes a multi-channel to stereo virtualizer. The APO can accept both stereo input and multi-channel input and output stereo virtualized sound. Now, we are testing our APO. If the test player is Windows Media player, the APO works fine. We can try a 2-channel songs and then a 6-channel music. The APO input channel number is changing with the file content which is playing by WMP. But, it is not the case of other players. When we use WinAmp as player and play a stereo music file and then drag a 6 channel file to play. The result is we can not see any format change action in APO side. And the input format remain unchanged 2 channel. The 6 channel file is down mixed to 2-channel to be received by APO. Since APO did not get the exact multi-channel data, the virtualized result is not what we desired. I tried another player; it has the same behaviors as WinAmp. Does any one know why it happens? Why WMP can void this problem? I am trying to fix the input format to 6-channel( by change IsInputFormatSupported() and IsOutputFormatSupported() ), but failed. Is it possible? Thanks in advance. Mike Software Dept. VIA Technologies (China) Inc., Ltd. E-mail: MikeLee@xxxxxxxxxxxxxx Tele: 86-010-59852288 ext.3830