📄 umc_audio_render.h
字号:
/*//// INTEL CORPORATION PROPRIETARY INFORMATION// This software is supplied under the terms of a license agreement or// nondisclosure agreement with Intel Corporation and may not be copied// or disclosed except in accordance with the terms of that agreement.// Copyright(c) 2003-2005 Intel Corporation. All Rights Reserved.//*/#ifndef __UMC_AUDIO_RENDER_H__#define __UMC_AUDIO_RENDER_H__#include "vm_time.h"#include "umc_structures.h"#include "umc_media_data.h"#include "umc_module_context.h"#include "umc_media_receiver.h"/*// Class: AudioRender//// Notes: Base abstract class of audio render. Class describes// the high level interface of abstract audio render.// All system specific (Windows (DirectSound, WinMM), Linux(SDL, etc)) must be implemented in// derevied classes.//*/namespace UMC{class AudioRenderParams: public MediaReceiverParams{ DYNAMIC_CAST_DECL(AudioRenderParams, MediaReceiverParams)public: // Default constructor AudioRenderParams(void); // Destructor virtual ~AudioRenderParams(void){}; AudioStreamInfo info; // (AudioStreamInfo) common fields which necessary to initialize decoder ModuleContext *pModuleContext; // (ModuleContext *) platform dependent context};class AudioRender: public virtual MediaReceiver{ DYNAMIC_CAST_DECL(AudioRender, MediaReceiver)public: // Default constructor AudioRender(void){} // Destructor virtual ~AudioRender(void){} // Pause(Resume) playing of soundSend new portion of data to render virtual Status Pause(bool pause) = 0; // Volume manipulating virtual float SetVolume(float volume) = 0; virtual float GetVolume(void) = 0; // Audio Reference Clock virtual double GetTime(void) = 0; // Estimated value of device latency virtual double GetDelay(void) = 0; virtual Status SetParams(MediaReceiverParams *pMedia) = 0;protected: // Send new portion of data to render virtual Status SendFrame(MediaData *in) = 0; };} // namespace UMC#endif /* __UMC_AUDIO_RENDER_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -