📄 audio_player.h
字号:
///////////////////////////////////////////////////////// FileName: video_player.h// Author: b1gm0use// Project: myvideo#ifndef _AUDIO_PLAYER_H_#define _AUDIO_PLAYER_H_#include <qwidget.h>#include <qsemaphore.h>#include "common.h"#include "typedef.h"class avi;class audio_cap_thread;class audio_play_thread;class QWaitCondition;class AudioPlayer : public QWidget{ Q_OBJECTpublic: // 构造函数 AudioPlayer ( avi * avi_ptr_in, QWidget *parent = 0, const char *name = 0 ); // 析构函数 ~AudioPlayer(); // 初始化函数 int init( void ); void begin_running ( void ); bool running ( void ); friend class audio_play_thread;protected: // 内部函数,用于接收自定义的事件 void customEvent ( QCustomEvent * e );private: // 初始化动态链接库 void init_codec_lib ( void ); void mono_8k_to_48k ( BUFF * buff_8k, BUFF * buff_48k ); void mono_to_stereo ( BUFF * buff_stereo, BUFF * buff_mono );private: // 音频捕捉线程 audio_cap_thread * act; // 音频播放线程 audio_play_thread * apt; // 声音缓冲区 BUFF * mono_8k_buff; BUFF * mono_48k_buff; BUFF * stereo_48k_buff; BUFF * g723_buff; BUFF * g711_buff; BUFF * normal_buff; int frame;#ifdef _ARM_CODEC_ g723dec_obj *g723dec;#endif avi * avi_ptr; bool is_running; QWaitCondition * ready_to_play_audio; bool current_use_g723;};#endif //_AUDIO_PLAYER_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -