1159b3361Sopenharmony_ci/* 2159b3361Sopenharmony_ci * LAME MP3 encoder for DirectShow 3159b3361Sopenharmony_ci * Basic property page 4159b3361Sopenharmony_ci * 5159b3361Sopenharmony_ci * Copyright (c) 2000-2005 Marie Orlova, Peter Gubanov, Vitaly Ivanov, Elecard Ltd. 6159b3361Sopenharmony_ci * 7159b3361Sopenharmony_ci * This library is free software; you can redistribute it and/or 8159b3361Sopenharmony_ci * modify it under the terms of the GNU Library General Public 9159b3361Sopenharmony_ci * License as published by the Free Software Foundation; either 10159b3361Sopenharmony_ci * version 2 of the License, or (at your option) any later version. 11159b3361Sopenharmony_ci * 12159b3361Sopenharmony_ci * This library is distributed in the hope that it will be useful, 13159b3361Sopenharmony_ci * but WITHOUT ANY WARRANTY; without even the implied warranty of 14159b3361Sopenharmony_ci * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15159b3361Sopenharmony_ci * Library General Public License for more details. 16159b3361Sopenharmony_ci * 17159b3361Sopenharmony_ci * You should have received a copy of the GNU Library General Public 18159b3361Sopenharmony_ci * License along with this library; if not, write to the 19159b3361Sopenharmony_ci * Free Software Foundation, Inc., 59 Temple Place - Suite 330, 20159b3361Sopenharmony_ci * Boston, MA 02111-1307, USA. 21159b3361Sopenharmony_ci */ 22159b3361Sopenharmony_ci 23159b3361Sopenharmony_ciclass CMpegAudEncPropertyPage : public CBasePropertyPage 24159b3361Sopenharmony_ci{ 25159b3361Sopenharmony_ci 26159b3361Sopenharmony_cipublic: 27159b3361Sopenharmony_ci static CUnknown *CreateInstance( LPUNKNOWN punk, HRESULT *phr ); 28159b3361Sopenharmony_ci CMpegAudEncPropertyPage( LPUNKNOWN punk, HRESULT *phr ); 29159b3361Sopenharmony_ci 30159b3361Sopenharmony_ci HRESULT OnConnect(IUnknown *pUnknown); 31159b3361Sopenharmony_ci HRESULT OnDisconnect(); 32159b3361Sopenharmony_ci HRESULT OnActivate(); 33159b3361Sopenharmony_ci HRESULT OnDeactivate(); 34159b3361Sopenharmony_ci HRESULT OnApplyChanges(); 35159b3361Sopenharmony_ci BOOL OnReceiveMessage(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam); 36159b3361Sopenharmony_ci 37159b3361Sopenharmony_ciprivate: 38159b3361Sopenharmony_ci void InitPropertiesDialog(HWND hwndParent); 39159b3361Sopenharmony_ci void EnableControls(HWND hwndParent, bool bEnable); 40159b3361Sopenharmony_ci void SetDirty(void); 41159b3361Sopenharmony_ci 42159b3361Sopenharmony_ci DWORD m_dwBitrate; //constant bit rate 43159b3361Sopenharmony_ci DWORD m_dwVariable; //flag - whether the variable bit rate set 44159b3361Sopenharmony_ci DWORD m_dwMin; //specify a minimum allowed bitrate 45159b3361Sopenharmony_ci DWORD m_dwMax; //specify a maximum allowed bitrate 46159b3361Sopenharmony_ci DWORD m_dwQuality; //encoding quality 47159b3361Sopenharmony_ci DWORD m_dwVBRq; //VBR quality setting (0=highest quality, 9=lowest) 48159b3361Sopenharmony_ci DWORD m_dwSampleRate; 49159b3361Sopenharmony_ci DWORD m_dwChannelMode; 50159b3361Sopenharmony_ci DWORD m_dwCRC; 51159b3361Sopenharmony_ci DWORD m_dwForceMono; 52159b3361Sopenharmony_ci DWORD m_dwCopyright; 53159b3361Sopenharmony_ci DWORD m_dwOriginal; 54159b3361Sopenharmony_ci 55159b3361Sopenharmony_ci HWND m_hwndQuality; //Slider window handle 56159b3361Sopenharmony_ci 57159b3361Sopenharmony_ci int m_srIdx; 58159b3361Sopenharmony_ci 59159b3361Sopenharmony_ci IAudioEncoderProperties *m_pAEProps; 60159b3361Sopenharmony_ci}; 61