用Directsound实现音频采集Visual C++
应用Directshow SDK 用c++语言实现音频采集功能
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 272820 2002-12-04 01:07 CaptureSoundRecorderamstrmid.lib
文件 10763 2008-11-17 18:48 CaptureSoundRecorderAudioFormat.cpp
文件 1318 2008-11-17 18:26 CaptureSoundRecorderAudioFormat.h
文件 3748 2008-11-16 21:53 CaptureSoundRecorderCaptureDevices.cpp
文件 1335 2008-11-16 21:52 CaptureSoundRecorderCaptureDevices.h
文件 2466 2002-12-04 01:25 CaptureSoundRecorderd3d8.lib
文件 3010 2002-12-04 01:22 CaptureSoundRecorderd3d9.lib
文件 614522 2002-12-04 01:31 CaptureSoundRecorderd3dx.lib
文件 2151212 2002-12-04 01:26 CaptureSoundRecorderd3dx8.lib
文件 53414 2002-12-04 01:28 CaptureSoundRecorderd3dx8d.lib
文件 2679888 2002-12-04 01:28 CaptureSoundRecorderd3dx8dt.lib
文件 4383332 2002-12-10 22:25 CaptureSoundRecorderd3dx9.lib
文件 72100 2002-12-10 22:25 CaptureSoundRecorderd3dx9d.lib
文件 5146120 2002-12-10 22:25 CaptureSoundRecorderd3dx9dt.lib
文件 615364 2002-12-04 01:34 CaptureSoundRecorderd3dxd.lib
文件 1722 2002-11-12 20:15 CaptureSoundRecorderd3dxof.lib
文件 4540 2002-12-04 01:11 CaptureSoundRecorderddraw.lib
文件 126296 2009-05-08 11:11 CaptureSoundRecorderDebugAudioFormat.obj
文件 8796 2009-05-08 11:13 CaptureSoundRecorderDebugBuildLog.htm
文件 114713 2009-05-08 11:11 CaptureSoundRecorderDebugCaptureDevices.obj
文件 103351 2009-05-08 11:11 CaptureSoundRecorderDebugdsutil.obj
文件 74389 2009-05-08 11:11 CaptureSoundRecorderDebugdxutil.obj
文件 67 2009-05-08 11:13 CaptureSoundRecorderDebugmt.dep
文件 798208 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.exe
文件 920 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.exe.embed.manifest
文件 984 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.exe.embed.manifest.res
文件 861 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.exe.intermediate.manifest
文件 2983064 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.ilk
文件 121739 2009-05-08 11:11 CaptureSoundRecorderDebugRecorder.obj
文件 25231360 2009-05-08 11:10 CaptureSoundRecorderDebugRecorder.pch
............此处省略62个文件信息
// AudioFormat.cpp : implementation file
//
#include “stdafx.h“
#include “Recorder.h“
#include “AudioFormat.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CAudioFormat dialog
extern CRecorderApp theApp;
//-----------------------------------------------------------------------------
// Function-prototypes
//-----------------------------------------------------------------------------
HRESULT ScanAvailableInputFormats();
VOID GetWaveFormatFromIndex( INT nIndex WAVEFORMATEX* pwfx );
HRESULT FillFormatListBox( HWND hListBox BOOL* aFormatSupported );
VOID ConvertWaveFormatToString( WAVEFORMATEX* pwfx TCHAR* strFormatName );
HRESULT CreateCaptureBuffer( WAVEFORMATEX* pwfxInput );
HRESULT InitNotifications();
//-----------------------------------------------------------------------------
// Name: GetWaveFormatFromIndex()
// Desc: Returns 20 different wave formats based on nIndex
//-----------------------------------------------------------------------------
VOID GetWaveFormatFromIndex( INT nIndex WAVEFORMATEX* pwfx )
{
INT iSampleRate = nIndex / 4;
INT iType = nIndex % 4;
switch( iSampleRate )
{
case 0: pwfx->nSamplesPerSec = 48000; break;
case 1: pwfx->nSamplesPerSec = 44100; break;
case 2: pwfx->nSamplesPerSec = 22050; break;
case 3: pwfx->nSamplesPerSec = 11025; break;
case 4: pwfx->nSamplesPerSec = 8000; break;
}
switch( iType )
{
case 0: pwfx->wBitsPerSample = 8; pwfx->nChannels = 1; break;
case 1: pwfx->wBitsPerSample = 16; pwfx->nChannels = 1; break;
case 2: pwfx->wBitsPerSample = 8; pwfx->nChannels = 2; break;
case 3: pwfx->wBitsPerSample = 16; pwfx->nChannels = 2; break;
}
pwfx->nBlockAlign = pwfx->nChannels * ( pwfx->wBitsPerSample / 8 );
pwfx->nAvgBytesPerSec = pwfx->nBlockAlign * pwfx->nSamplesPerSec;
}
//-----------------------------------------------------------------------------
// Name: ConvertWaveFormatToString()
// Desc: Converts a wave format to a text string
//-----------------------------------------------------------------------------
VOID ConvertWaveFormatToString( WAVEFORMATEX* pwfx TCHAR* strFormatName )
{
wsprintf( strFormatName
TEXT(“%u Hz %u-bit %s“)
pwfx->nSamplesPerSec
pwfx->wBitsPerSample
( pwfx->nChannels == 1 ) ? TEXT(“Mono“) : TEXT(“Stereo“) );
}
//-----------------------------------------------------------------------------
// Name: FillFormatListBox()
// Desc: Fills the format list box based on the availible formats
//-----------------------------------------------------------------------------
HRESULT FillFormatListBox( HWND hListBox BOOL* aFormatSupported )
{
TCHAR strFormatName[255];
WAVEFORMATEX wfx;
DWORD dw
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 272820 2002-12-04 01:07 CaptureSoundRecorderamstrmid.lib
文件 10763 2008-11-17 18:48 CaptureSoundRecorderAudioFormat.cpp
文件 1318 2008-11-17 18:26 CaptureSoundRecorderAudioFormat.h
文件 3748 2008-11-16 21:53 CaptureSoundRecorderCaptureDevices.cpp
文件 1335 2008-11-16 21:52 CaptureSoundRecorderCaptureDevices.h
文件 2466 2002-12-04 01:25 CaptureSoundRecorderd3d8.lib
文件 3010 2002-12-04 01:22 CaptureSoundRecorderd3d9.lib
文件 614522 2002-12-04 01:31 CaptureSoundRecorderd3dx.lib
文件 2151212 2002-12-04 01:26 CaptureSoundRecorderd3dx8.lib
文件 53414 2002-12-04 01:28 CaptureSoundRecorderd3dx8d.lib
文件 2679888 2002-12-04 01:28 CaptureSoundRecorderd3dx8dt.lib
文件 4383332 2002-12-10 22:25 CaptureSoundRecorderd3dx9.lib
文件 72100 2002-12-10 22:25 CaptureSoundRecorderd3dx9d.lib
文件 5146120 2002-12-10 22:25 CaptureSoundRecorderd3dx9dt.lib
文件 615364 2002-12-04 01:34 CaptureSoundRecorderd3dxd.lib
文件 1722 2002-11-12 20:15 CaptureSoundRecorderd3dxof.lib
文件 4540 2002-12-04 01:11 CaptureSoundRecorderddraw.lib
文件 126296 2009-05-08 11:11 CaptureSoundRecorderDebugAudioFormat.obj
文件 8796 2009-05-08 11:13 CaptureSoundRecorderDebugBuildLog.htm
文件 114713 2009-05-08 11:11 CaptureSoundRecorderDebugCaptureDevices.obj
文件 103351 2009-05-08 11:11 CaptureSoundRecorderDebugdsutil.obj
文件 74389 2009-05-08 11:11 CaptureSoundRecorderDebugdxutil.obj
文件 67 2009-05-08 11:13 CaptureSoundRecorderDebugmt.dep
文件 798208 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.exe
文件 920 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.exe.em
文件 984 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.exe.em
文件 861 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.exe.intermediate.manifest
文件 2983064 2009-05-08 11:13 CaptureSoundRecorderDebugRecorder.ilk
文件 121739 2009-05-08 11:11 CaptureSoundRecorderDebugRecorder.obj
文件 25231360 2009-05-08 11:10 CaptureSoundRecorderDebugRecorder.pch
............此处省略62个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)