- Visual C++源码
- Visual Basic源码
- C++ Builder源码
- Java源码
- Delphi源码
- C/C++源码
- PHP源码
- Perl源码
- Python源码
- Asm源码
- Pascal源码
- Borland C++源码
- Others源码
- SQL源码
- VBScript源码
- JavaScript源码
- ASP/ASPX源码
- C#源码
- Flash/ActionScript源码
- matlab源码
- PowerBuilder源码
- LabView源码
- Flex源码
- MathCAD源码
- VBA源码
- IDL源码
- Lisp/Scheme源码
- VHDL源码
- Objective-C源码
- Fortran源码
- tcl/tk源码
- QT源码
AudioRenderer.h
资源名称:VC++视频传输.rar [点击查看]
上传用户:hxb_1234
上传日期:2010-03-30
资源大小:8328k
文件大小:2k
源码类别:
VC书籍
开发平台:
Visual C++
- /**************************************************************************************
- * *
- * *
- **************************************************************************************/
- #ifndef AUDIO_RENDERER_H
- #define AUDIO_RENDERER_H
- #include "MediaClasses.h"
- #include "DebugFile.h"
- /*
- * 包括直接音频
- */
- #include <math.h>
- #include <dsound.h>
- /*
- * Audio Renderer Class
- *
- * ——某一刻只有一个可用
- *
- */
- class MediaAudioRenderer : public MediaItemAudioRenderer {
- public:
- LPDIRECTSOUND lpDirectSound;
- LPDIRECTSOUNDBUFFER lpBuffer;
- WAVEFORMATEX *ourFormat;
- DWORD dwBufferSize;
- DWORD dwNextWriteOffset;
- DWORD dwProgress;
- DWORD dwLastPlayPos;
- unsigned long dwPlayed;
- HANDLE audioThread;
- UINT uTimerID;
- LONG lInTimer;
- DWORD id;
- MediaAudioCallback callback;
- void *lpData;
- int paused;
- /*
- * 方法
- *
- */
- MediaAudioRenderer();
- ~MediaAudioRenderer();
- /*
- * 媒体项方法
- */
- media_type_t GetType();
- char *GetName();
- MP_RESULT Connect(MediaItem *item);
- MP_RESULT ReleaseConnections();
- DWORD GetCaps();
- MP_RESULT Configure(HINSTANCE hInstance, HWND hwnd);
- /*
- * 音频补偿方法
- */
- MP_RESULT Open(HWND hwnd, WAVEFORMATEX *inFormat);
- MP_RESULT SetCallback(void *lpData, MediaAudioCallback callback);
- MP_RESULT SetVolume(unsigned int volume);
- unsigned long GetAudioTime();
- MP_RESULT Bufferize();
- MP_RESULT Start();
- MP_RESULT Pause();
- MP_RESULT Stop();
- MP_RESULT Close();
- };
- #endif