Files
Client/Library/dxx8/samples/Multimedia/DirectShow/Capture/AudioCap/AudioCapDlg.h
LGram16 e067522598 Initial commit: ROW Client source code
Game client codebase including:
- CharacterActionControl: Character and creature management
- GlobalScript: Network, items, skills, quests, utilities
- RYLClient: Main client application with GUI and event handlers
- Engine: 3D rendering engine (RYLGL)
- MemoryManager: Custom memory allocation
- Library: Third-party dependencies (DirectX, boost, etc.)
- Tools: Development utilities

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:24:34 +09:00

132 lines
3.9 KiB
C++

//------------------------------------------------------------------------------
// File: AudioCapDlg.h
//
// Desc: DirectShow sample code - Main header for CAudioCapDlg class
//
// Copyright (c) 2000-2001 Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
#if !defined(AFX_AUDIOCAPDLG_H__CC9BF075_154D_430A_9E58_7311EC641C61__INCLUDED_)
#define AFX_AUDIOCAPDLG_H__CC9BF075_154D_430A_9E58_7311EC641C61__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <dshow.h>
//
// Constants
//
#define DEFAULT_BUFFER_TIME ((float) 0.05) /* 50 milliseconds*/
#define DEFAULT_FILENAME TEXT("c:\\test.wav\0")
#define RECORD_EVENT 0
#define PLAYBACK_EVENT 1
static const GUID CLSID_WavDest =
{ 0x3c78b8e2, 0x6c4d, 0x11d1, { 0xad, 0xe2, 0x0, 0x0, 0xf8, 0x75, 0x4b, 0x99 } };
/////////////////////////////////////////////////////////////////////////////
// CAudioCapDlg dialog
class CAudioCapDlg : public CDialog
{
// Construction
public:
CAudioCapDlg(CWnd* pParent = NULL); // standard constructor
HRESULT FillLists(void);
void ClearLists(void);
void SetDefaults(void);
void EnableButtons(BOOL bEnable);
void EnableRadioButtons(BOOL bEnable);
HRESULT InitializeCapture(void);
HRESULT GetInterfaces(void);
HRESULT GetPlaybackInterfaces();
void FreeInterfaces(void);
void FreePlaybackInterfaces(void);
void ReleaseCapture(void);
void ResetCapture(void);
void UpdateFilterLists(IGraphBuilder *pGB);
HRESULT HandleGraphEvent(void);
HRESULT HandlePlaybackGraphEvent(void);
HRESULT SetInputPinProperties(IAMAudioInputMixer *pPinMixer);
HRESULT SetAudioProperties();
HRESULT ActivateSelectedInputPin(void);
HRESULT RenderPreviewStream(void);
HRESULT RenderCaptureStream(void);
HRESULT DestroyPreviewStream(void);
HRESULT DestroyCaptureStream(void);
void ClearAllocatedLists(void);
void Say(TCHAR *szMsg);
// Dialog Data
//{{AFX_DATA(CAudioCapDlg)
enum { IDD = IDD_AUDIOCAP_DIALOG };
CStatic m_strStatus;
CButton m_btnMono;
CButton m_btn8BIT;
CButton m_btn11KHZ;
CButton m_btnPause;
CButton m_btnStop;
CButton m_btnPlay;
CListBox m_ListFilterOutputs;
CListBox m_ListFilterInputs;
CButton m_btnRecord;
CButton m_btnProperties;
CListBox m_ListInputs;
CListBox m_ListInputPins;
CListBox m_ListFilters;
CEdit m_StrFilename;
CButton m_CheckWriteFile;
CButton m_CheckAudition;
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CAudioCapDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);
//}}AFX_VIRTUAL
// Implementation
protected:
HICON m_hIcon;
BOOL m_bPausedRecording;
IGraphBuilder *m_pGB, *m_pGBPlayback;
IMediaControl *m_pMC, *m_pMCPlayback;
IMediaEventEx *m_pME, *m_pMEPlayback;
ICaptureGraphBuilder2 *m_pCapture;
IBaseFilter *m_pInputDevice, *m_pRenderer, *m_pFileWriter,
*m_pSplitter, *m_pWAVDest;
// Generated message map functions
//{{AFX_MSG(CAudioCapDlg)
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnClose();
afx_msg void OnButtonFile();
afx_msg void OnSelchangeListInputDevices();
afx_msg void OnSelchangeListFilters();
afx_msg void OnButtonClear();
afx_msg void OnSelchangeListInputPins();
afx_msg void OnButtonProperties();
afx_msg void OnButtonPlay();
afx_msg void OnButtonPause();
afx_msg void OnButtonStop();
afx_msg void OnButtonRecord();
afx_msg void OnDestroy();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_AUDIOCAPDLG_H__CC9BF075_154D_430A_9E58_7311EC641C61__INCLUDED_)