📄 avi.h
字号:
#ifndef _AVI_H_#define _AVI_H_#include <qwidget.h>#include <common.h>#include <audio.h>#include <video.h>#include <network.h>#include "network.h"class QSemaphore;class VideoPlayer;class AudioPlayer;class network_ctrl;class avi : public QWidget{ Q_OBJECTpublic: avi( QWidget * parent = 0, const char * name = 0, int wFlags = 0 ); ~avi ( void ); // Set options void init_video ( const char * video_dev_in, video_opt_t * video_opt_in/* , QSemaphore * video_send_semaphore_in, QSemaphore * video_cap_semaphore_in */ ); void init_audio ( const char * audio_dev_in, bool use_g723_in, bool g723_high_bit_rate_in, bool g723_voice_detect_in/* , QSemaphore * audio_can_play_semaphore_in, QSemaphore * audio_cap_semaphore_in, QSemaphore * snd_buff_semaphore_in[3] */ ); void init_network ( network_mode_t net_mode_in, const char * ip_in, bool use_multicast_in, const char * mc_addr_in ); void init_other ( va_mode_t va_mode_in/* , QSemaphore * send_image_semaphore_in */, bool show_local_video_in ); void init ( void ); // Get options void get_video ( const char *& video_dev_out, video_opt_t *& video_opt_out ); void get_audio ( const char *& audio_dev_out, bool & use_g723_out, bool & g723_high_bit_rate_out, bool & g723_voice_detect_out ); void get_network ( network_mode_t & net_mode_out, const char *& ip_out, bool use_multicast_out, const char *& mc_addr_out ); void get_other ( va_mode_t & va_mode_out, bool & show_local_video_out );protected: void mousePressEvent ( QMouseEvent * e ); void customEvent ( QCustomEvent * e );public slots: void begin_running( void ); void stop_running ( void );signals: void error_signal ( int sig_num ); public: // Video Part Public Variables video_opt_t video_opt; const char * video_dev; VideoPlayer * video_player_ptr; QSemaphore * video_send_semaphore; QSemaphore * video_cap_semaphore; // Audio Part Public Variables const char * audio_dev; bool use_g723; bool g723_high_bit_rate; bool g723_voice_detect; AudioPlayer * audio_player_ptr; QSemaphore * snd_buff_semaphore[3]; QSemaphore * audio_cap_semaphore; BUFF * snd_buff[3]; // Network Part Public Variables network_mode_t net_mode; const char * ip; bool use_multicast; const char * mc_addr; network_ctrl * network_ctrl_ptr; // Other Part Public Variables va_mode_t va_mode; bool show_local_video; QSemaphore * send_image_semaphore;};#endif // _AVI_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -