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>
132 lines
3.9 KiB
C++
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_)
|