blob: 151c1a8854286307e1b3b413c22bc97a6257e321 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
|
#ifndef _AV_SENDBACK_H
#define _AV_SENDBACK_H
/*ħ��*/
#define AV_MAGIC_VALUE 0x8739
/*��Ϣ����*/
#define AV_TYPE_META 0x01
#define AV_TYPE_DATA 0x02
#define AV_TYPE_RESULT 0x11
/*������*/
#define PROTOCOL_DEFAULT 0x00
#define PROTOCOL_HTTP 0x01
#define PROTOCOL_SMTP 0x02
#define PROTOCOL_POP3 0x03
#define PROTOCOL_IMAP 0x04
#define PROTOCOL_FTP 0x05
#define PROTOCOL_HTTP_PIC 0x06
#define PROTOCOL_RTSP_RDT 0x07
#define PROTOCOL_RTSP_RTP 0x08
#define PROTOCOL_MMS 0x09
#define PROTOCOL_RTMP 0x0A
#define PROTOCOL_SIP 0x0B
/*ý������*/
#define MEDIA_TYPE_UNKNOWN 0x00
/*ý������:��Ƶ֧�ֵ�ý������*/
#define MEDIA_TYPE_VIDEO 0x01
#define MEDIA_TYPE_WMV 0x02
#define MEDIA_TYPE_MPG 0x03
#define MEDIA_TYPE_FLV 0x04
#define MEDIA_TYPE_RMFF 0x05
#define MEDIA_TYPE_AVI 0x06
#define MEDIA_TYPE_SWF 0x07
#define MEDIA_TYPE_MPG4 0x08
#define MEDIA_TYPE_AIFF 0x09
#define MEDIA_TYPE_OGG 0x0A
#define MEDIA_TYPE_DRC 0x0B
#define MEDIA_TYPE_DIRECTSHOW 0x0C
#define MEDIA_TYPE_FLIC 0x0E
#define MEDIA_TYPE_INDEO 0x0F
#define MEDIA_TYPE_MKV 0x10
/*ý������:��Ƶ֧�ֵ�ý������*/
#define MEDIA_TYPE_AUDIO 0x20
#define MEDIA_TYPE_MP3 0x21
/*ý������:ͼƬ֧�ֵ�ý������*/
#define MEDIA_TYPE_IMAGE 0x30
#define MEDIA_TYPE_JPG 0x31
#define MEDIA_TYPE_BMP 0x32
#define MEDIA_TYPE_GIF 0x33
/*ý������:ʵʱ��ý��֧�ֵ�ý������*/
#define MEDIA_TYPE_MMS 0x40
#define MEDIA_TYPE_RTSP_RDT 0x41
#define MEDIA_TYPE_RTSP_RTP 0x42
/*ý������:��Ƭ������Ƶ֧�ֵ�ý������*/
#define MEDIA_TYPE_OSMF 0x50
#define MEDIA_TYPE_HLS 0x51
/*ý������:VOIP֧�ֵ�ý�����ͣ��༴��������*/
#define MEDIA_TYPE_AUDIO_UNKNOWN 0x60
#define MEDIA_TYPE_AUDIO_G711_ULAW 0x61
#define MEDIA_TYPE_AUDIO_G711_ALAW 0x62
#define MEDIA_TYPE_AUDIO_G722 0x63
#define MEDIA_TYPE_AUDIO_G723 0x64
#define MEDIA_TYPE_AUDIO_G726_40 0x65
#define MEDIA_TYPE_AUDIO_G726_32 0x66
#define MEDIA_TYPE_AUDIO_G726_24 0x67
#define MEDIA_TYPE_AUDIO_G726_16 0x68
#define MEDIA_TYPE_AUDIO_AAL2_G726_40 0x69
#define MEDIA_TYPE_AUDIO_AAL2_G726_32 0x6A
#define MEDIA_TYPE_AUDIO_AAL2_G726_24 0x6B
#define MEDIA_TYPE_AUDIO_AAL2_G726_16 0x6C
#define MEDIA_TYPE_AUDIO_G728 0x6D
#define MEDIA_TYPE_AUDIO_G729D 0x6E
#define MEDIA_TYPE_AUDIO_G729E 0x6F
#define MEDIA_TYPE_AUDIO_GSM 0x70
#define MEDIA_TYPE_AUDIO_GSM_EFR 0x71
#define MEDIA_TYPE_AUDIO_ILBC 0x72
#define MEDIA_TYPE_AUDIO_AMR 0x73
#define MEDIA_TYPE_AUDIO_AMR_WB 0x74
#define MEDIA_TYPE_AUDIO_SILK 0x75
#define MEDIA_TYPE_AUDIO_LPC 0x76
#define MEDIA_TYPE_AUDIO_LPC1016 0x77
#define MEDIA_TYPE_AUDIO_LPC1015 0x78
#define MEDIA_TYPE_AUDIO_L16 0x79
#define MEDIA_TYPE_AUDIO_SPEEX 0x7A
#define MEDIA_TYPE_AUDIO_L8 0x7B
#define MEDIA_TYPE_AUDIO_MPA 0x7C
#define MEDIA_TYPE_AUDIO_DVI4 0x7D
#define MEDIA_TYPE_AUDIO_VDVI 0x7E
#define MEDIA_TYPE_AUDIO_CN 0x7F
#define MEDIA_TYPE_AUDIO_RED 0x80
#define MEDIA_TYPE_AUDIO_QCELP 0x81
#define MEDIA_TYPE_AUDIO_EVRC0 0x82
#define MEDIA_TYPE_AUDIO_EVRCB0 0x83
#define MEDIA_TYPE_AUDIO_G729 0x84
#define MEDIA_TYPE_AUDIO_VIVOX 0x85
/*ָ����Ϣ��ѡ������*/
/*ָ����Ϣ��ѡ������-VOIPѡ������*/
#define OPT_SIP_SEND_RATE_INFO 0x71 /*VOIP���������Ϣ*/
/*==================================��Ϣͷ��==============================================*/
typedef struct msg_head_s
{
uint16_t magic;
uint16_t m_type;
uint32_t c_len; //��Ϣ�峤��(��������Ϣͷ��)
}msg_head_t;
/*==================================ָ����Ϣ��==============================================*/
typedef struct msg_meta_s
{
char pid[8]; //ID�������ݻ�ȡ�ڵ�����
uint64_t proglen; //���ļ������ֽڳ��ȣ�Ϊ0��ʾ����δ֪
uint32_t capip; // ��ȡ�ڵ��IP
uint8_t protocol; // ����������
uint8_t mediatype; // ���ܵ�ý������
uint8_t data_flag; // ���ݱ�־
uint8_t opt_num; // ѡ�����
}msg_meta_t;
/*�Ѿ��������ļ����涨���
struct opt_unit_t
{
uint32_t opt_len; //����opt_len��opt_type��opt_value
uint8_t opt_type;
char* opt_value;
};
*/
/*==================================��������Ϣ��==============================================*/
typedef struct av_data_s
{
char pid[8]; // ���ļ���ID�������ݻ�ȡ�ڵ�����
uint16_t frag_seq; // ����Ƶ��Ƭ:Ƭ����� VOIP:������
int64_t offset:48; // �����������������ļ��е�ƫ��λ��
//char* avs; // ��ý��������
}av_data_t;
/*VOIP��ý�������ݸ�ʽ*/
struct voip_header_t
{
uint32_t time_stamp; // ����֡��ʱ���, ������
uint32_t sequence;
//char* data; //VOIP����������
};
/*RTSP/RTMP��ý�������ݸ�ʽ*/
struct sdp_data_packet
{
char sdp[8]; // ��Ϊ"RTSP_SDP"
uint32_t sdp_len; // Ϊsdp�����ݳ���
//char * data; // sdp��������
};
/*RTSP sdp�������ݸ�ʽ*/
struct rtsp_data_packet
{
uint32_t flag; // RTSP����ͷ��ͷ��־ 0x46464646 "FFFF"
uint8_t type; // �������ͣ�1 for RDT��2 for RTP
uint8_t channel; // ���ݵ�ͨ����
uint16_t len; // ���ݳ���
//char * data; // ��������
};
/*RTMP sdp�������ݸ�ʽ*/
struct rtmp_data_packet
{
uint32_t flag; // RTMP����ͷ��ͷ��־ 0x52544D50"RTMP"
uint32_t av_type:8; // ����Ƶ���ͣ�8 for Audio, 9 for Video
uint32_t cs_id:24; // Chunk Stream ID
uint32_t timestamp; // ʱ���
uint32_t len; // �����ݳ���(������ͷ���ֶγ��ȣ�20�ֽ�)
uint32_t stream_id; // ��ID
//char * data; // ��������
};
/*MMS��ý�������ݸ�ʽ*/
struct mms_data_packet
{
uint32_t frame_flag; // ��Ϊ0x46464646 "FFFF"
uint32_t data_len; // Ϊ���ݳ���
//char * data; // ��������H���������ݻ���D����������
};
/*==================================�����Ϣ��==================================================*/
typedef struct msg_result_s
{
char pid[8]; // �����ļ���ID�������ݻ�ȡ�ڵ�����
int servicetype; // ҵ������
uint32_t cfgid; // ���е�����ID��ֵΪ0��ʾ����δ֪����
int8_t level; // ��������Ŷȣ� [0, 100]
uint8_t pad[7]; // Ԥ����������0ֵ
//char* logindex; // �����ֳ������ļ��Ĵ洢·��URL����"/0"����
}msg_result_t;
#endif
|