2 * Copyright (C) 2003-2006 Gabest
3 * http://www.gabest.org
5 * This Program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2, or (at your option)
10 * This Program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with GNU Make; see the file COPYING. If not, write to
17 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
18 * http://www.gnu.org/copyleft/gpl.html
24 #include "PPageBase.h"
25 #include "FloatEdit.h"
26 #include "..\..\filters\switcher\AudioSwitcher\AudioSwitcher.h"
28 // CPPageAudioSwitcher dialog
30 class CPPageAudioSwitcher
: public CPPageBase
32 DECLARE_DYNAMIC(CPPageAudioSwitcher
)
35 CComQIPtr
<IAudioSwitcherFilter
> m_pASF
;
36 DWORD m_pSpeakerToChannelMap
[18][18];
37 DWORD m_dwChannelMask
;
40 CPPageAudioSwitcher(IFilterGraph
* pFG
);
41 virtual ~CPPageAudioSwitcher();
44 enum { IDD
= IDD_PPAGEAUDIOSWITCHER
};
46 BOOL m_fEnableAudioSwitcher
;
47 BOOL m_fAudioNormalize
;
48 BOOL m_fAudioNormalizeRecover
;
50 CSliderCtrl m_AudioBoostCtrl
;
51 BOOL m_fDownSampleTo441
;
52 CButton m_fDownSampleTo441Ctrl
;
53 BOOL m_fCustomChannelMapping
;
54 CButton m_fCustomChannelMappingCtrl
;
55 CEdit m_nChannelsCtrl
;
57 CSpinButtonCtrl m_nChannelsSpinCtrl
;
59 int m_tAudioTimeShift
;
60 CButton m_fAudioTimeShiftCtrl
;
61 CIntEdit m_tAudioTimeShiftCtrl
;
62 CSpinButtonCtrl m_tAudioTimeShiftSpin
;
63 BOOL m_fAudioTimeShift
;
66 virtual void DoDataExchange(CDataExchange
* pDX
); // DDX/DDV support
67 virtual BOOL
OnInitDialog();
68 virtual BOOL
OnApply();
73 afx_msg
void OnNMClickList1(NMHDR
* pNMHDR
, LRESULT
* pResult
);
74 afx_msg
void OnDrawItem(int nIDCtl
, LPDRAWITEMSTRUCT lpDrawItemStruct
);
75 afx_msg
void OnEnChangeEdit1();
76 afx_msg
void OnUpdateAudioSwitcher(CCmdUI
* pCmdUI
);
77 afx_msg
void OnUpdateChannelMapping(CCmdUI
* pCmdUI
);
79 afx_msg
void OnHScroll(UINT nSBCode
, UINT nPos
, CScrollBar
* pScrollBar
);