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

📄 voip.h

📁 基于实时嵌入式系统的voip系统(real time embeded system)。主要难点在实时处理语音信号。语音信号基于其自身特点
💻 H
字号:
/**************************************************************************
*  voip.h - Header used by entire project.
*  Author - Ed Hursey
*  Date - December 2005
**************************************************************************/
#include "inetLib.h"
#include "rc4.h"

/* Dac and Adc buffers */
#define DAC_BUFFER_SIZE   1024
#define ADC_BUFFER_SIZE   DAC_BUFFER_SIZE

#define SERVER_PORT_NUM 5002 /* server's port number for bind() */
#define REQUEST_MSG_SIZE ADC_BUFFER_SIZE/2 /* max size of request message */
#define RC4_KEY_DATA_LEN 8 /* lenght of the rc4 key data */

/* structure used for client's request */
struct new_request
{
   int display; /* TRUE = display message */
   char message[REQUEST_MSG_SIZE]; /* message buffer */
   int request_type; /*1 = change mode, 2 = change complete, 3 = audio data */
   int mode; /* 1= 8-bit, 2=8-bit stereo, 3=16 bit stereo*/
   int message_number;  /*used to sync packets and make sure we aren't loosing any*/
};

/*request that is recievied from other machines and played by local machine*/
struct new_request receivedRequest;

/*the request that will be transmitted, i.e. the recorded sound byte*/
struct new_request transmitRequest;

/*semaphorse for playback, record, and signifying packet receivied*/
SEM_ID  SEM_DMA_Playback, SEM_DMA_Record, SEM_RECEIVED;

/*udp stuff*/
int sFd; /* client socket file descriptor */
struct sockaddr_in serverAddr; /* server's socket address */
int sockAddrSize; /* size of socket address structure */

/*buffers*/
void *DAC_BUFFER;
void *ADC_BUFFER;
int DTC_DMA_Playback, DTC_DMA_Record; /* Empty or Half Empty */

/*indicates if we are in 1 = 8 bit mono, 2 = 8 bit stereo, 3 = 16 bit stereo*/
/*track this so we know when we have to switch on the fly*/
int current_mode;

/*a persistenct copy of the rc4 key so we won't have to generate it every time*/
rc4_key perm_key;

/*which machine we are running on*/
int g_machine_number;

⌨️ 快捷键说明

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