#pragma once #include //定义程序需要的常量 extern int Frame_width; extern int Frame_height; #define Audio_share_memory_name "audio_audio_cache" #define Video_share_memory_name "video_cache" #define Index_Share_memory_name "audio_audio_cache-writer" #define Bota_Video_Read_Share_memory_name "bota_video_read_frame" #define Speech_Id_Cache_Share_memory_name "speech_id_cache" #define Mask_share_memory_name "mask_cache" #define Background_file_name "E:/hyg/img00001.jpg" //背景图像存放的全路径名称 #define END_FLAG_SHARE_MEMORY_NAME "speak_end_flag" #define Share_memory_frame_count 125 //25*5 #define Audio_sample_rate 16000 //采样频率 #define Audio_channel_count 1 //通道数量 #define Audio_bit_width 16 //位宽 #define Audio_buffer_size_per_get Audio_sample_rate * 1 *2 /25 //每次从音频共享缓冲中取音频的大小 extern int Video_buffer_size_per_get; //每次从视频共享缓冲中取视频的大小 extern int Video_buffer_channel; #define Speech_Id_Cache_buffer_size_per_get 128 //每次从视频共享缓冲中取视频的大小 #define End_flag_buffer_size_per_get 4 //每次从音频共享缓冲中取音频的大小 //#define template class RenderImpl { public: virtual ~RenderImpl() = default; virtual void OnRender(const T& data) = 0; }; using VoiceData = std::vector; using VoiceRender = RenderImpl;