⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 coreaudio_render.h

📁 audio-video-codecs.rar语音编解码器
💻 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-2006 Intel Corporation. All Rights Reserved.
//
*/

#ifndef __COREAUDIO_RENDER_H__
#define __COREAUDIO_RENDER_H__

#include "umc_defs.h"

#ifdef UMC_ENABLE_COREAUDIO_RENDER

#include "umc_structures.h"
#include "basic_audio_render.h"
#include "coreaudio_drv.h"

namespace UMC
{

class CoreAudioRender :public BasicAudioRender
{
public:
    // Default constructor
    CoreAudioRender();

    // Destructor
    virtual ~CoreAudioRender() { Close(); }

    /* Initialize the audio driver */
    virtual Status Init(MediaReceiverParams* mparams);

    /* Write sound data to audio buffer */
    virtual Status SendFrame(MediaData* data);

    /* Toggle pause mode */
    virtual Status Pause(bool pause);

    /* Set audio volume */
    virtual Ipp32f SetVolume(Ipp32f gain);

    /* Get audio volume */
    virtual Ipp32f GetVolume();

    /* Close the audio driver */
    virtual Status Close (void);

    /* Reset the audio driver */
    virtual Status Reset (void);

    virtual Status SetParams(MediaReceiverParams *params,
                             Ipp32u trickModes = UMC_TRICK_MODES_NO);

protected:
    virtual Ipp64f GetTimeTick(void);

    CoreAudioDrv *m_pDrv;
    Ipp64f m_dfStartPTS;
    vm_tick m_tickStartTime;
    vm_tick m_tickPrePauseTime;
};

}

#endif // UMC_ENABLE_COREAUDIO_RENDER

#endif // __COREAUDIO_RENDER_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -