sdlaudio_render.h

来自「audio-video-codecs.rar语音编解码器」· C头文件 代码 · 共 72 行

H
72
字号
/*
 *
 *                  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 __SDLAUDIO_RENDER_H__
#define __SDLAUDIO_RENDER_H__

#include "umc_defs.h"

#ifdef UMC_ENABLE_SDL_AUDIO_RENDER

#include "umc_structures.h"
#include "basic_audio_render.h"
#include "sdlaudio_drv.h"

namespace UMC
{

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

    // Destructor
    virtual ~SDLAudioRender() { 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);

    SDLAudioDrv *m_pDrv;
    Ipp64f m_dfStartPTS;
    vm_tick m_tickStartTime;
    vm_tick m_tickPrePauseTime;
};
} // namespace UMC

#endif // UMC_ENABLE_SDL_AUDIO_RENDER

#endif // __SDL_AUDIO_RENDER_H__

⌨️ 快捷键说明

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