summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Makefile2
-rw-r--r--src/frag_av.c11
-rw-r--r--src/frag_dedup.c112
-rw-r--r--src/frag_reassembly.c212
-rw-r--r--src/main.c60
-rw-r--r--src/main.h29
6 files changed, 119 insertions, 307 deletions
diff --git a/src/Makefile b/src/Makefile
index ae8d433..92bee65 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -36,7 +36,7 @@ CC = g++
CCC = g++
LIB = -L./lib/
-LIB += -lsoqav_dedup
+#LIB += -lsoqav_dedup
#LIB += -lappdetect
LIB += -lrdkafka
LIB += -lssl -lcrypto
diff --git a/src/frag_av.c b/src/frag_av.c
index 80a0669..4d63e37 100644
--- a/src/frag_av.c
+++ b/src/frag_av.c
@@ -1135,11 +1135,6 @@ int proc_mediainfo_opt(frag_unit_t* frg_unit, rssb_media_info_t* media_info)
memcpy(frg_unit->opt[MEDIA_OPT_PROTOCOL]->opt_value,(char*)&media_info->protocol,frg_unit->opt[MEDIA_OPT_PROTOCOL]->opt_len);
}
-/*
- if(g_frag_cfg.av_dedup_switch)
- {
- generate_td_meta(frg_unit, url, url_len, etag, etag_len, last_modify, last_modify_len, serverIP);
- }*/
return 0;
}
@@ -1454,12 +1449,6 @@ long index_query_timeout_cb(void *data, const uint8_t *key, uint size, void *use
}
}
}
- /*�ڶ��η���֮�󣬿��Բ�ѯ��Դ��*/
- if(g_frag_cfg.av_dedup_switch && !FLAG_TEST(mdi->td_query,TD_QUERY_TYPE_MULTISRC))
- {
- FLAG_SET(mdi->td_query,TD_QUERY_TYPE_MULTISRC);
- proc_media_multisrc(mdi, 1);
- }
}
/*voip�ڶ��β�ѯ*/
else if(mdi->media_service_type==MEDIA_SERVICE_TYPE_SIP)
diff --git a/src/frag_dedup.c b/src/frag_dedup.c
index 0c2d503..ac55f27 100644
--- a/src/frag_dedup.c
+++ b/src/frag_dedup.c
@@ -1,5 +1,5 @@
/*
-* �������Դ��ѯҵ��
+* �������Դ��ѯҵ�ᅣ1�7
*/
#include <sys/ioctl.h>
@@ -107,16 +107,16 @@ void media_dedup_report(media_t* mdi)
break;
}
}
-
+ /*
if(FLAG_TEST(mdi->td_query, TD_QUERY_TYPE_DEDUP) && !FLAG_TEST(mdi->td_query, TD_QUERY_RES_NOREPORT))
{
soqav_dedup_report(g_frag_run.dedup_hd, mdi->td, &detail);
}
else
{
- /*�ظ���Ŀ����Ҫ�ϱ���TD��ΪNULL*/
+ /*�ظ���Ŀ����Ҫ�ϱ���TD��ΪNULL
soqav_dedup_report(g_frag_run.dedup_hd, NULL, &detail);
- }
+ }*/
frag_write_to_log(AV_DEDUP_REPORT, mdi->mid, (void*)mdi->td, (void*)&mdi->byte_proc, mdi->configID);
atomic_inc(&g_frag_stat.media_stat[LOG_MEDIA_DEDUP_REPORT]);
if(mdi->td_complete)
@@ -142,7 +142,7 @@ long media_query_ack(void *data, const uint8_t *key, uint size, void *user_arg)
int result = ack_rsl->status;
uint32_t multisrc_bizmanip = ack_rsl->cpz_payload_ip;
- /*���Դ���*/
+ /*���Դ���*/
/*
result = BIT_TD_MULTI_SOURCE;
multisrc_bizmanip = 16777343;
@@ -151,7 +151,7 @@ long media_query_ack(void *data, const uint8_t *key, uint size, void *user_arg)
if(NULL!=mdi)
{
- /*���֮ǰ�յ���Ӧ�𣬲����ٴ���*/
+ /*���֮ǰ�յ���Ӧ�𣬲����ٴ��ᅣ1�7*/
if(FLAG_TEST(mdi->td_query, TD_QUERY_ACK_DEDUP) || FLAG_TEST(mdi->td_query, TD_QUERY_ACK_MULTISRC))
{
return 0;
@@ -159,8 +159,8 @@ long media_query_ack(void *data, const uint8_t *key, uint size, void *user_arg)
FLAG_SET(mdi->td_query, TD_QUERY_ACK_DEDUP);
FLAG_SET(mdi->td_query, TD_QUERY_ACK_MULTISRC);
- /*debug ���ز����ߵ�����£�����debugģʽ������ʧЧ*/
- /*��Դ�����ݻ���*/
+ /*debug ���ز����ߵ�����£�����debugģʽ������ʧЧ*/
+ /*��Դ�����ݻ���*/
if(FLAG_TEST(mdi->td_query, TD_QUERY_TYPE_MULTISRC))
{
if(result & BIT_TD_KNOWN)
@@ -170,7 +170,7 @@ long media_query_ack(void *data, const uint8_t *key, uint size, void *user_arg)
FLAG_SET(mdi->td_query, TD_QUERY_RES_DEDUP);
FLAG_SET(mdi->td_query, TD_QUERY_RES_NOREPORT);
}
- /*���IP�DZ���16777343(127.0.0.1)���ҽ�ĿIDһ��������Ҫ�ۺ�*/
+ /*���IP�DZ���16777343(127.0.0.1)���ҽ�ĿIDһ��������Ҫ�ۺ�*/
else if(result & BIT_TD_MULTI_SOURCE && (multisrc_bizmanip!=16777343 ||(multisrc_bizmanip==16777343 && mdi->mid != (uint64_t)ack_rsl->mid)))
{
inet_ntop(AF_INET, &multisrc_bizmanip, ip_buf, 64);
@@ -193,10 +193,10 @@ long media_query_ack(void *data, const uint8_t *key, uint size, void *user_arg)
frag_ivi_info.thread_seq = first_item->thread_seq;
atomic_inc(&g_frag_stat.sysinfo_stat[MULTISRC_QUEUE][QUEUE_OUT]);
frag_write_to_log(ADD_FRAG_FROM_TAILQ, frag_ivi_info.frg->mid, frag_ivi_info.frg, NULL, 0);
- /*��Ŀ�ظ���ֱ�Ӷ���*/
+ /*��Ŀ�ظ���ֱ�Ӷ���*/
if(result & BIT_TD_KNOWN && !g_frag_cfg.dedup_invalid)
{
- /*��Ӧ�ü���ȥ��ͳ�ƣ���Ϊ�ⲿ��������ʵ�Ѿ����͸��˷�������*/
+ /*��Ӧ�ü���ȥ��ͳ�ƣ���Ϊ�ⲿ��������ʵ�Ѿ����͸��˷�������*/
free_frag_in(frag_ivi_info.frg,0,NULL);
}
else
@@ -208,7 +208,7 @@ long media_query_ack(void *data, const uint8_t *key, uint size, void *user_arg)
FLAG_SET(frag_ivi_info.frg->frag_flag, FRAG_FLAG_MULTISRC);
frag_add_wait_lq(&frag_ivi_info, 1, frag_ivi_info.thread_seq);
}
- /*���ۺϵĶ�Դ�����ݶ�������Ϊ�Ѿ����͹���*/
+ /*���ۺϵĶ�Դ�����ݶ�������Ϊ�Ѿ����͹���*/
else
{
free_frag_in(frag_ivi_info.frg,0,NULL);
@@ -356,10 +356,10 @@ long set_td_data(media_t* mdi, frag_in_t* frg)
cur_td_datalen = ((frg->offset+frg->datalen)>g_frag_cfg.td_data_maxsize) ? (g_frag_cfg.td_data_maxsize-frg->offset): frg->datalen;
memcpy(mdi->td_data+frg->offset, frg->data, cur_td_datalen);
mdi->td_datalen += cur_td_datalen;
- /*td_data�������ܲ�ѯ*/
+ /*td_data�������ܲ�ѯ*/
if(mdi->td_datalen==g_frag_cfg.td_data_maxsize)
{
- //url is not empty,�ȴ���Դ��ѯURL�����url����TD
+ //url is not empty,�ȴ���Դ��ѯURL�����url����TD
if(NULL != mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index])
{
FLAG_SET(mdi->td_query,TD_QUERY_TYPE_DEDUP);
@@ -428,88 +428,4 @@ void free_query_detail(query_detail_t* query_detail)
}
}
-void proc_media_multisrc(media_t* mdi, int timeout)
-{
- query_detail_t* query_detail = NULL;
- struct stream_tuple4_v4 tuple4_v4 ;
- struct stream_tuple4_v6 tuple4_v6 ;
-
- /*�ж��Ƿ���Ҫ�����ѯ*/
- /*��׼��ʱ֮��һ���ᷢ���ѯ*/
- if(!FLAG_TEST(mdi->td_query, TD_QUERY_TYPE_YES)&&
- (((FLAG_TEST(mdi->td_query, TD_QUERY_TYPE_DEDUP)||mdi->byte_proc>g_frag_cfg.td_data_maxsize)
- && FLAG_TEST(mdi->td_query, TD_QUERY_TYPE_MULTISRC))||timeout))
- {
- /*��������td_meta,�̶�����td*/
- if((g_frag_cfg.av_dedup_switch) && (mdi->opt[MEDIA_OPT_TD_META][mdi->url_opt_index] == NULL))
- {
- generate_td_meta(mdi);
- if(mdi->td_complete != 1 && mdi->td_datalen==g_frag_cfg.td_data_maxsize)
- {
- caculate_md5(mdi->opt[MEDIA_OPT_TD_META][mdi->url_opt_index]->opt_value, mdi->opt[MEDIA_OPT_TD_META][mdi->url_opt_index]->opt_len, mdi->td_data, mdi->td_datalen, mdi->td, TD_LEN);
- mdi->td_complete = 1;
- }
- }
-
- FLAG_SET(mdi->td_query, TD_QUERY_TYPE_YES);
- /*�����Ҫ���ж�Դ���߽��ز�ѯ�����query_detail*/
- query_detail = (query_detail_t*)calloc(1, sizeof(query_detail_t));
- query_detail->total_len = mdi->media_len;
- query_detail->mid = mdi->mid;
-
- /*addr*/
- if(NULL!=mdi->opt[MEDIA_OPT_ADDR][mdi->url_opt_index])
- {
- query_detail->addrtype = addrlist_to_streamtuple4(mdi->opt[MEDIA_OPT_ADDR][mdi->url_opt_index]->opt_value, &tuple4_v4, &tuple4_v6);
- switch(query_detail->addrtype)
- {
- case ADDR_TYPE_IPV4:
- query_detail->tuple4_v4 = (struct stream_tuple4_v4*)malloc(sizeof(struct stream_tuple4_v4));;
- memcpy(query_detail->tuple4_v4, &tuple4_v4, sizeof(tuple4_v4));
- break;
- case ADDR_TYPE_IPV6:
- query_detail->tuple4_v6 = (struct stream_tuple4_v6*)malloc(sizeof(struct stream_tuple4_v6));;
- memcpy(query_detail->tuple4_v6, &tuple4_v6, sizeof(tuple4_v6));
- break;
- }
- }
- /*��Դ��ѯ*/
- if(FLAG_TEST(mdi->td_query, TD_QUERY_TYPE_MULTISRC))
- {
- /*���ö�ʱ��*/
- struct timer_context_t *context = (struct timer_context_t *)calloc(1, sizeof(struct timer_context_t));
- context->mid = mdi->mid;
- MESA_timer_add(g_frag_run.multisrc_timer[mdi->thread_seq],
- time(NULL),
- g_frag_cfg.multisrc_wait_timeout,
- soqav_query_timeout,
- context,
- soqav_query_free_timeout,
- &mdi->timer_idx);
- g_frag_run.multisrc_timer_on[mdi->thread_seq] = 1;
- if(NULL!=mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index])
- {
- query_detail->url = (char*)malloc(mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index]->opt_len);
- query_detail->urllen = mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index]->opt_len;
- memcpy((void*)query_detail->url, mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index]->opt_value, mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index]->opt_len);
- }
- }
- if(FLAG_TEST(mdi->td_query, TD_QUERY_TYPE_DEDUP))
- {
- atomic_inc(&g_frag_stat.media_stat[LOG_MEDIA_TD_QUERY]);
- soqav_dedup_query(g_frag_run.dedup_hd, mdi->td, query_detail, soqav_query_callback, (void*)mdi->mid);
- }
- else
- {
- soqav_dedup_query(g_frag_run.dedup_hd, NULL, query_detail, soqav_query_callback, (void*)mdi->mid);
- }
- atomic_inc(&g_frag_stat.media_stat[LOG_MEDIA_DEDUP_QUERY]);
- frag_write_to_log(SEND_AV_DEDUP_QUERY, mdi->mid, mdi, NULL, 0);
- if(NULL!=query_detail)
- {
- free_query_detail(query_detail);
- query_detail =NULL;
- }
- }
-}
diff --git a/src/frag_reassembly.c b/src/frag_reassembly.c
index 1dffda1..15f1e25 100644
--- a/src/frag_reassembly.c
+++ b/src/frag_reassembly.c
@@ -300,11 +300,6 @@ void free_media(void* data)
media_json_report(mdi, TOPIC_EVENT_EXPIRE);
}
- /*av_dup report upload*/
- if(g_frag_cfg.av_dedup_switch && MEDIA_SERVICE_TYPE_AV==mdi->media_service_type)
- {
- media_dedup_report(mdi);
- }
if(mdi->media_service_type==MEDIA_SERVICE_TYPE_SIP)
{
send_sip_log_when_expire(mdi);
@@ -352,7 +347,7 @@ void free_media(void* data)
free(mdi->monitor_path);
}
- /*����������*/
+ /*����������*/
struct queue_item* first_item = TAILQ_FIRST(&mdi->query_wait_lq);
frag_in_t* frg = NULL;
while(first_item != NULL)
@@ -382,7 +377,7 @@ void free_media(void* data)
void set_sip_query_task(frag_unit_t* frg_unit, media_t* mdi)
{
- /*voip SIP����*/
+ /*voip SIP����*/
frag_write_to_log(SEND_VOIP_QUERY_1, frg_unit->pid, frg_unit, NULL, 0);
atomic_inc(&frag_rssb.stat_info[RSSB_INDEX_ONCE_QUERY_SEND]);
if(sip_index_query(frg_unit, frg_unit->thread_seq))
@@ -400,7 +395,7 @@ void set_sip_query_task(frag_unit_t* frg_unit, media_t* mdi)
{
if(mdi->re_offset==0)
{
- /*���ö�ʱ����:������URL��ʱ����Ҫ���еڶ��ε���������*/
+ /*���ö�ʱ����:������URL��ʱ����Ҫ���еڶ��ε���������*/
struct timer_context_t *context = (struct timer_context_t *)calloc(1, sizeof(struct timer_context_t));
context->mid = mdi->mid;
MESA_timer_add(g_frag_run.index_query_timer[mdi->thread_seq],
@@ -425,7 +420,7 @@ void proc_media_opt(frag_unit_t* frg_unit, media_t* mdi)
}
void save_media_opt(frag_unit_t* frg_unit, media_t* mdi)
{
- /*���ÿһ��ѡ��*/
+ /*���ÿһ��ѡ��*/
for(int i =0;i<MEDIA_OPT_MAXNUN;i++)
{
if(mdi->opt_index<OPT_MAXNUN && NULL!=frg_unit->opt[i])
@@ -443,37 +438,10 @@ void save_media_opt(frag_unit_t* frg_unit, media_t* mdi)
mdi->opt_index++;
}
- /*���ö��β�ѯ�Ķ�ʱ����*/
- if(g_frag_cfg.av_dedup_switch && MEDIA_SERVICE_TYPE_AV==mdi->media_service_type)
- {
- if(NULL!=mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index])
- {
- /*����URL���ж�Դ��ѯ*/
- if(!FLAG_TEST(mdi->td_query,TD_QUERY_TYPE_YES))
- {
- FLAG_SET(mdi->td_query,TD_QUERY_TYPE_MULTISRC);
- }
- }
- /*����URLҲ�����˲�ѯ��������Ϊ��ͳ��*/
- if(NULL==mdi->index_query_timer_idx)
- {
- /*���ö�ʱ����:������URL��ʱ����Ҫ���еڶ��ε���������*/
- struct timer_context_t *context = (struct timer_context_t *)calloc(1, sizeof(struct timer_context_t));
- context->mid = mdi->mid;
- MESA_timer_add(g_frag_run.index_query_timer[mdi->thread_seq],
- time(NULL),
- g_frag_cfg.index_query_timeout,
- index_query_timeout,
- context,
- index_query_timeout_free,
- &mdi->index_query_timer_idx);
- g_frag_run.index_query_timer_on[mdi->thread_seq] = 1;
- }
- }
}
-/*ʶ���Ŀ������ ��ͨ����Ƶ ��Ƭ��Ŀ VOIP*/
+/*ʶ���Ŀ������ ��ͨ����Ƶ ��Ƭ��Ŀ VOIP*/
void set_media_service_type(media_t* mdi)
{
if(FILE_OSMF==mdi->media_type||FILE_HLS==mdi->media_type)
@@ -526,19 +494,19 @@ long media_create_cb(void *data, const uint8_t *key, uint size, void *user_arg)
mdi->meta_flag = frg_unit->flag;
mdi->thread_seq = frg_unit->thread_seq;
- /*ȷ����Ŀ�Ƿ�����Ƭ����VOIP*/
+ /*ȷ����Ŀ�Ƿ�����Ƭ����VOIP*/
set_media_service_type(mdi);
- /*����ѡ��*/
+ /*����ѡ��*/
proc_media_opt(frg_unit, mdi);
- /*����sip��ѯ����*/
+ /*����sip��ѯ����*/
if(mdi->media_service_type==MEDIA_SERVICE_TYPE_SIP)
{
set_sip_query_task(frg_unit, mdi);
}
- /*����ý�����ͼ��*/
+ /*����ý�����ͼ��*/
if(0!=mdi->media_type)
{
set_special_media_service(mdi->media_type, mdi);
@@ -561,7 +529,7 @@ long media_create_cb(void *data, const uint8_t *key, uint size, void *user_arg)
mdi->ivi = IVI_create();
mdi->save_ivi = IVI_create();
- /*��Դ��ѯ�������*/
+ /*��Դ��ѯ�������*/
TAILQ_INIT(&mdi->query_wait_lq);
/*fuzzy*/
@@ -575,7 +543,7 @@ long media_create_cb(void *data, const uint8_t *key, uint size, void *user_arg)
}
else
{
- /*��������Ƶ��Ŀһ��ʱ������������ּ�⣬renew��Ŀ��*/
+ /*��������Ƶ��Ŀһ��ʱ������������ּ�⣬renew��Ŀ��*/
if(!g_frag_cfg.app_switch && frg_unit->ab_offset==0
&& ((MEDIA_SERVICE_TYPE_AV==mdi->media_service_type && mdi->renew_time < time(NULL))||mdi->hit_service==SERVICE_AUDIO_LANG))
{
@@ -584,27 +552,16 @@ long media_create_cb(void *data, const uint8_t *key, uint size, void *user_arg)
}
}
save_media_opt(frg_unit,mdi);
- /*av_dedup*/
- if(g_frag_cfg.av_dedup_switch
- && mdi->td_complete==0
- && g_frag_cfg.td_data_maxsize==0
- && MEDIA_SERVICE_TYPE_AV==mdi->media_service_type
- && NULL!=mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index])
- {
- generate_td_meta(mdi);
- FLAG_SET(mdi->td_query,TD_QUERY_TYPE_DEDUP);
- caculate_md5(mdi->opt[MEDIA_OPT_TD_META][mdi->url_opt_index]->opt_value, mdi->opt[MEDIA_OPT_TD_META][mdi->url_opt_index]->opt_len, NULL, 0, mdi->td, TD_LEN);
- mdi->td_complete = 1;
- }
+
- /*��Ƭȥ��*/
+ /*��Ƭȥ��*/
if(-1==media_frag_removal(mdi, frg_unit))
{
return -1;
}
frag_write_to_log(SET_OFFSET, *(uint64_t*)key, frg_unit, NULL, 0);
- /*PID�洢*/
+ /*PID�洢*/
mdi->frag_unit_cnt++;
if(NULL==mdi->pid)
{
@@ -624,7 +581,7 @@ long media_create_cb(void *data, const uint8_t *key, uint size, void *user_arg)
mdi->pid_idx_last = (mdi->pid_idx_last+1)%PID_MAXNUM;
}
- /*CAP_IP �ش����ݵ�ǰ�˻���IP*/
+ /*CAP_IP �ش����ݵ�ǰ�˻���IP*/
if(frg_unit->qd_info_from_cpz_idx_last==0)
{
if(save_qd_info(mdi->qd_info, QD_MAXNUM, &mdi->qdinfo_idx_last,frg_unit->capIP, frg_unit->mid))
@@ -633,7 +590,7 @@ long media_create_cb(void *data, const uint8_t *key, uint size, void *user_arg)
create_media_write_to_log(mdi, MEDIA_FROM_CAPIP, pbuf);
}
}
- /*��Դ�����£�������ƿװ��ǰ����Ϣ�����ڻؽ���*/
+ /*��Դ�����£�������ƿװ��ǰ����Ϣ�����ڻؽ���*/
for(int i=0;i<frg_unit->qd_info_from_cpz_idx_last;i++)
{
inet_ntop(AF_INET, &frg_unit->capIP, pbuf, buf_len);
@@ -641,10 +598,10 @@ long media_create_cb(void *data, const uint8_t *key, uint size, void *user_arg)
save_qd_info(mdi->qd_info_from_cpz, QD_MAXNUM, &mdi->qdinfo_from_cpz_idx_last, frg_unit->qd_info_from_cpz[i].cap_ip, frg_unit->qd_info_from_cpz[i].mid);
}
- /*monitor because of ��Ƶ����ȫ��Ŀ���*/
- /*����Ƶ���ּ��������������ƴװ����������־���е���Ƶԭʼ�ļ���¼*/
+ /*monitor because of ��Ƶ����ȫ��Ŀ���*/
+ /*����Ƶ���ּ��������������ƴװ����������־���е���Ƶԭʼ�ļ���¼*/
audio_lang_monitor_service(frg_unit->src_ip, mdi);
- /*send ��⽨��*/
+ /*send ��⽨��*/
#if K_PROJECT
if(frg_unit->hitservice >= 0x180 && frg_unit->hitservice < 0x200)
{
@@ -659,7 +616,7 @@ long media_create_cb(void *data, const uint8_t *key, uint size, void *user_arg)
}
#endif
- /*����ȫ��⣬���Dz���ǰ�˷�����*/
+ /*����ȫ��⣬���Dz���ǰ�˷�����*/
if(g_frag_cfg.all_hit_monitor_switch==ALL_HIT_MONITOR_FULLFILE && MEDIA_SERVICE_TYPE_AV==mdi->media_service_type)
{
FLAG_SET(mdi->flag, PROG_FLAG_DUMP);
@@ -678,12 +635,8 @@ int media_create(frag_unit_t* frg_unit)
{
long rec_cb = 0;
- /*��鶨ʱ��*/
- if(g_frag_cfg.av_dedup_switch && g_frag_run.multisrc_timer_on[frg_unit->thread_seq] && g_frag_run.multisrc_timer[frg_unit->thread_seq])
- {
- MESA_timer_check(g_frag_run.multisrc_timer[frg_unit->thread_seq], time(NULL), g_frag_cfg.multisrc_timer_cb_maxtime);
- }
- /*��鶨ʱ��*/
+
+ /*��鶨ʱ��*/
if(g_frag_run.index_query_timer_on[frg_unit->thread_seq] && g_frag_run.index_query_timer[frg_unit->thread_seq])
{
MESA_timer_check(g_frag_run.index_query_timer[frg_unit->thread_seq], time(NULL), g_frag_cfg.index_query_timer_cb_maxtime);
@@ -771,7 +724,7 @@ int add_media_info(msg_metainfo_t* minfo, char* opt, uint32_t src_ip, int thread
media_info.src_ip = src_ip;
media_info.thread_seq = thread_seq;
- /*����Ƶ��Ƭ��*/
+ /*����Ƶ��Ƭ��*/
if(is_frag(minfo->media_type))
{
if(minfo->media_type==FILE_MAYBE_FRAG)
@@ -781,7 +734,7 @@ int add_media_info(msg_metainfo_t* minfo, char* opt, uint32_t src_ip, int thread
MESA_htable_search_cb(frag_rssb.converge_hash, (const uint8_t *)&media_info.pid, sizeof(media_info.pid),
converge_mediainfo_search_cb, (void*)&media_info, &rec_cb);
}
- /*VOIP��*/
+ /*VOIP��*/
else if(minfo->protocol==AV_PROTOCOL_SIP)
{
if(!(g_frag_cfg.voip_filter_switch && minfo->media_type==VOIP_UNKNOWN_MEDIA_TYPE))
@@ -794,32 +747,13 @@ int add_media_info(msg_metainfo_t* minfo, char* opt, uint32_t src_ip, int thread
frg_unit = NULL;
}
}
- /*���߳�����*/
+ /*���߳�����*/
else
{
frg_unit = (frag_unit_t*)calloc(1,sizeof(frag_unit_t));
set_frag_unit(&media_info, frg_unit);
- /*ǰ���ʼ�û��addr�����ػ�δ���*/
- if(g_frag_cfg.av_dedup_switch && frg_unit->opt[MEDIA_OPT_ADDR]==NULL)
- {
- free_frag_unit(frg_unit);
- return 0;
- }
- /*��������Դ��ѯ*/
- if(g_frag_cfg.av_dedup_switch && NULL==frg_unit->opt[MEDIA_OPT_URL] && NULL!=frg_unit->opt[MEDIA_OPT_SINGLE_KEY])
- {
- frag_write_to_log(SEND_AV_QUERY_1, frg_unit->pid, frg_unit, NULL, 0);
- atomic_inc(&frag_rssb.stat_info[RSSB_AV_ONCE_QUERY_SEND]);
- if(av_query(frg_unit))
- {
- frag_write_to_log(RECV_AV_ACK_1, frg_unit->pid, frg_unit, NULL, 0);
- atomic_inc(&frag_rssb.stat_info[RSSB_AV_ONCE_QUERY_RECV]);
- }
- else
- {
- frag_write_to_log(AV_QUERY_FAIL_1, frg_unit->pid, frg_unit, NULL, 0);
- }
- }
+ /*ǰ���ʼ�û��addr�����ػ�δ���*/
+
frg_unit->mid = frg_unit->pid;
media_create(frg_unit);
free_frag_unit(frg_unit);
@@ -847,7 +781,7 @@ void trace_store_file(uint64_t mid, uint8_t media_type, uint8_t proto, uint16_t
return;
}
- /*����media_type�����ļ���׺*/
+ /*����media_type�����ļ���׺*/
suffix = gen_filesuffix_by_mediatype(suffix, media_type, proto);
mkdir_r(g_frag_cfg.store_filepath);
@@ -885,30 +819,23 @@ void tag_frag_in_media(media_t* mdi, frag_in_t* frg)
{
mdi->fuzzy_acc_len += SFH_feed(mdi->fuzzy, frg->data, frg->datalen, frg->offset_in);
}
- if(g_frag_cfg.av_dedup_switch && !FLAG_TEST(mdi->td_query,TD_QUERY_TYPE_YES) && MEDIA_SERVICE_TYPE_AV==mdi->media_service_type)
- {
- if(set_td_data(mdi, frg))
- {
- FLAG_SET(mdi->td_query,TD_QUERY_TYPE_DEDUP);
- }
- }
- /*�ڵ�һ�����ݰ�֮ǰ��Ҫ���ͽ�ĿԪ��Ϣ*/
+ /*�ڵ�һ�����ݰ�֮ǰ��Ҫ���ͽ�ĿԪ��Ϣ*/
if(!FLAG_TEST(mdi->flag, PROG_SEND_META))
{
FLAG_SET(frg->frag_flag, FRAG_FLAG_SEND_META);
FLAG_SET(mdi->flag, PROG_SEND_META);
}
- /*�����Ƿ���Ҫ���͸���ϵͳ*/
+ /*�����Ƿ���Ҫ���͸���ϵͳ*/
if(FLAG_TEST(mdi->flag, PROG_FLAG_EXCP))
{
FLAG_SET(frg->frag_flag, FRAG_FLAG_WINS);
}
- /*�����Ƿ��Դ�����͸�������ƿװ*/
+ /*�����Ƿ��Դ�����͸�������ƿװ*/
if(FLAG_TEST(mdi->td_query, TD_QUERY_RES_MULTISRC))
{
FLAG_SET(frg->frag_flag, FRAG_FLAG_MULTISRC);
frg->multisrc_bizmanip = mdi->multisrc_bizmanip;
- /*��Դ��mid�Ѿ����޸�*/
+ /*��Դ��mid�Ѿ����޸�*/
frg->new_mid = mdi->mid_after_multisrc;
}
if(g_frag_cfg.app_switch)
@@ -946,7 +873,7 @@ int frag_add_tailq(media_t* mdi, frag_in_t* frg, int thread_seq)
return 0;
}
-/*���ض�Դ�ȴ�����,����ͬʱ����ش������Բ���free*/
+/*���ض�Դ�ȴ�����,����ͬʱ����ش������Բ���free*/
int frag_add_query_wait_lq(media_t* mdi, frag_ivi_info_t* frag_ivi_info, uint32_t frag_stat)
{
frag_in_t* frg = frag_ivi_info->frg;
@@ -980,17 +907,17 @@ long media_preproc_cb(void *data, const uint8_t *key, uint size, void *user_arg)
return -1;
}
- /*��Ŀ�յ������ݳ���ͳ��*/
+ /*��Ŀ�յ������ݳ���ͳ��*/
mdi->pkt_in++;
mdi->byte_in += frg->datalen;
- /*���м�����ã�������ȥ��֮ǰд�ļ�*/
+ /*���м�����ã�������ȥ��֮ǰд�ļ�*/
if(g_frag_cfg.monitor_file_switch && FLAG_TEST(mdi->flag, PROG_FLAG_DUMP))
{
monitor_service_dump_file(frg, mdi);
}
- /*�����Ŀ�ظ�������Ҫ����*/
+ /*�����Ŀ�ظ�������Ҫ����*/
if(FLAG_TEST(mdi->td_query, TD_QUERY_RES_DEDUP) && !g_frag_cfg.dedup_invalid)
{
frag_ivi_info->td_query = mdi->td_query;
@@ -1013,7 +940,7 @@ long media_preproc_cb(void *data, const uint8_t *key, uint size, void *user_arg)
/*record maxoffset*/
//mdi->maxoffset = MAX(frg->offset, mdi->maxoffset);
- /*IVI ȥ��*/
+ /*IVI ȥ��*/
if(NULL!=frg)
{
frag_stat = media_removal(mdi, frg_unit, frg, frag_ivi_info);
@@ -1057,7 +984,7 @@ long media_preproc_cb(void *data, const uint8_t *key, uint size, void *user_arg)
/*record maxoffset*/
mdi->maxoffset = MAX(frg->offset, mdi->maxoffset);
- /*���Թ���:�洢��Ч�ļ�dmj*/
+ /*���Թ���:�洢��Ч�ļ�dmj*/
if(g_frag_cfg.save_media)
{
if(g_frag_cfg.cpz_type == CPZ_VOIP)
@@ -1080,17 +1007,6 @@ long media_preproc_cb(void *data, const uint8_t *key, uint size, void *user_arg)
}
}
- /*��Ŀ���ض�Դ��ѯ֮ǰ������׼��*/
- if(g_frag_cfg.av_dedup_switch && MEDIA_SERVICE_TYPE_AV==mdi->media_service_type)
- {
- proc_media_multisrc(mdi, 0);
- if(!FLAG_TEST(mdi->td_query, TD_QUERY_ACK_MULTISRC))
- {
- /*��Ϊ��Դ��Ҫ���ݻ��棬ͬʱ��������˷���*/
- frag_add_query_wait_lq(mdi, frag_ivi_info, frag_stat);
- }
- frag_ivi_info->td_query = mdi->td_query;
- }
return (long)frag_stat;
}
@@ -1098,14 +1014,6 @@ int media_preproc(frag_ivi_info_t* frag_ivi_info)
{
long rec_cb = -1;
frag_in_t* frg = frag_ivi_info->frg;
-
- /*���ԣ�ʹ�ü�鶨ʱ����ʱ��̭*/
- /*
- if(g_frag_cfg.av_dedup_switch && g_frag_run.multisrc_timer[frag_ivi_info->thread_seq])
- {
- MESA_timer_check(g_frag_run.multisrc_timer[frag_ivi_info->thread_seq], time(NULL), g_frag_cfg.multisrc_timer_cb_maxtime);
- }
- */
if(0!=frg->mid)
{
@@ -1115,7 +1023,7 @@ int media_preproc(frag_ivi_info_t* frag_ivi_info)
return (int)rec_cb;
}
-/*���������У����Զ�η���*/
+/*���������У����Զ�η���*/
void frag_try_add_wait_lq(uint8_t td_query, frag_in_t* frg, int thread_seq)
{
int lq_rec = 0;
@@ -1149,12 +1057,12 @@ int media_preproc(frag_ivi_info_t* frag_ivi_info)
}
}
-/*���Ͷ���*/
+/*���Ͷ���*/
int frag_add_wait_lq(frag_ivi_info_t* frag_ivi_info, uint32_t frag_stat, int thread_seq)
{
frag_in_t* frg = frag_ivi_info->frg;
- /*rec=1: IVI ȥ��ֻ��һ��frag rec=2:IVIȥ��ֻ������frag*/
+ /*rec=1: IVI ȥ��ֻ��һ��frag rec=2:IVIȥ��ֻ������frag*/
if(1==frag_stat)
{
frag_try_add_wait_lq(frag_ivi_info->td_query, frg, thread_seq);
@@ -1177,7 +1085,7 @@ int frag_add_wait_lq(frag_ivi_info_t* frag_ivi_info, uint32_t frag_stat, int thr
return 0;
}
-/*����ֵ��-1��*/
+/*����ֵ��-1��*/
int frag_service(frag_ivi_info_t* frag_ivi_info, uint32_t src_ip, int thread_seq)
{
int frag_stat = 0;
@@ -1185,7 +1093,7 @@ int frag_service(frag_ivi_info_t* frag_ivi_info, uint32_t src_ip, int thread_seq
frag_ivi_info->thread_seq = thread_seq;
frag_ivi_info->mid = frag_ivi_info->frg->mid;
- /*��Ƭ���������ظ����ݲ��ٴ���*/
+ /*��Ƭ���������ظ����ݲ��ٴ���*/
if(frag_ivi_info->frg_unit!=NULL && frag_ivi_info->frg_unit->repeat_not_proc)
{
atomic_inc(&g_frag_stat.stat_info[FRAG_DEDUP][TOTAL_PKTS]);
@@ -1197,13 +1105,13 @@ int frag_service(frag_ivi_info_t* frag_ivi_info, uint32_t src_ip, int thread_seq
frag_stat = media_preproc(frag_ivi_info);
if(-1==frag_stat)
{
- /*û���ҵ���Ŀ��������û��Ԫ��Ϣ*/
+ /*û���ҵ���Ŀ��������û��Ԫ��Ϣ*/
frag_write_to_log(MEDIA_NO_META, frag_ivi_info->frg->pid, NULL, NULL, 0);
atomic_inc(&g_frag_stat.stat_info[MEDIA_NOMETA][TOTAL_PKTS]);
atomic_add(&g_frag_stat.stat_info[MEDIA_NOMETA][TOTAL_BYTES],frag_ivi_info->frg->datalen);
return -1;
}
- /*��Ƭ����������:����У�����*/
+ /*��Ƭ����������:����У�����*/
if(!g_frag_cfg.app_switch)
{
frag_add_wait_lq(frag_ivi_info, frag_stat, thread_seq);
@@ -1224,7 +1132,7 @@ long converge_data_search_cb(void *data, const uint8_t *key, uint size, void *us
frag_ivi_info->frg_unit = frg_unit;
- /*��Ƭ���������������IJ��ٴ����������ﶪ�������ٲ��Ŀ�Ĵ���*/
+ /*��Ƭ���������������IJ��ٴ����������ﶪ�������ٲ��Ŀ�Ĵ���*/
if(frg_unit->repeat_not_proc)
{
atomic_inc(&g_frag_stat.stat_info[FRAG_DEDUP][TOTAL_PKTS]);
@@ -1275,13 +1183,13 @@ int add_frag(uint64_t pid, uint64_t offset, char* data, uint32_t datalen, uint8_
frg->thread_seq = thread_seq;
frg->src_ip = src_ip;
- /*������Ӧ��*/
+ /*������Ӧ��*/
send_ack_to_qd(frg, src_ip, thread_seq);
frag_ivi_info->frg = frg;
MESA_htable_search_cb(frag_rssb.converge_hash, (const uint8_t *)&pid, sizeof(pid),
converge_data_search_cb, (void*)frag_ivi_info, &rec);
- /*��Ƭ����������׼������*/
+ /*��Ƭ����������׼������*/
if(1==rec)
{
rec=frag_service(frag_ivi_info, src_ip, thread_seq);
@@ -1290,11 +1198,11 @@ int add_frag(uint64_t pid, uint64_t offset, char* data, uint32_t datalen, uint8_
free_frag_in(frg,0,NULL);
}
}
- /*��ͳ��Ŀ*/
+ /*��ͳ��Ŀ*/
else if(-1==rec)
{
rec = frag_service(frag_ivi_info, src_ip, thread_seq);
- /*û��Ԫ��Ϣ,�ͷ�*/
+ /*û��Ԫ��Ϣ,�ͷ�*/
if(-1==rec)
{
free_frag_in(frg,0,NULL);
@@ -1305,9 +1213,9 @@ int add_frag(uint64_t pid, uint64_t offset, char* data, uint32_t datalen, uint8_
}
/*return
-* -1:��Ŀ������
-* 0:������Ԫ��Ϣ
-* 1:����Ԫ��Ϣ
+* -1:��Ŀ������
+* 0:������Ԫ��Ϣ
+* 1:����Ԫ��Ϣ
*/
long get_media(void *data, const uint8_t *key, uint size, void *user_arg)
{
@@ -1324,7 +1232,7 @@ long get_media(void *data, const uint8_t *key, uint size, void *user_arg)
media_info->protocol = mdi->proto;
media_info->data_flag = mdi->data_flag;
media_info->flag = mdi->meta_flag;
- /*��Դ��������۴�ƴװ�ϲ�����ɢ����ʶ*/
+ /*��Դ��������۴�ƴװ�ϲ�����ɢ����ʶ*/
if(FLAG_TEST(mdi->td_query, TD_QUERY_RES_MULTISRC))
{
media_info->hitservice = 0;
@@ -1333,8 +1241,8 @@ long get_media(void *data, const uint8_t *key, uint size, void *user_arg)
{
media_info->hitservice = mdi->hit_service;
}
- /*����ͳ��for data*/
- /*����HLS OSMF��������ƬЭ��media_type����Ϊ��ͳ��Ŀ��mediatype*/
+ /*����ͳ��for data*/
+ /*����HLS OSMF��������ƬЭ��media_type����Ϊ��ͳ��Ŀ��mediatype*/
if(mdi->media_type==FILE_REQ_FRAG)
{
media_info->media_type = FILE_AV;
@@ -1353,10 +1261,10 @@ long get_media(void *data, const uint8_t *key, uint size, void *user_arg)
media_info->cap_IP = mdi->qd_info[0].cap_ip;
}
- /*��Դ������������ƴ��װ����Ҫ����ѡ��*/
+ /*��Դ������������ƴ��װ����Ҫ����ѡ��*/
if(FLAG_TEST(mdi->td_query, TD_QUERY_RES_MULTISRC))
{
- /*������ƿװ��ѡ��*/
+ /*������ƿװ��ѡ��*/
if(NULL!=mdi->opt[MEDIA_OPT_URL][mdi->url_opt_index])
{
media_info->opt_unit = (struct opt_unit_t*)calloc(2+mdi->qdinfo_idx_last, sizeof(struct opt_unit_t));
@@ -1398,7 +1306,7 @@ long get_media(void *data, const uint8_t *key, uint size, void *user_arg)
}
else
{
- /*SIP ѡ��*/
+ /*SIP ѡ��*/
if(mdi->proto==AV_PROTOCOL_SIP && mdi->sip_rate_info!=NULL)
{
media_info->opt_unit = (struct opt_unit_t*)calloc(1, sizeof(struct opt_unit_t));
@@ -1412,7 +1320,7 @@ long get_media(void *data, const uint8_t *key, uint size, void *user_arg)
#else
if(mdi->proto!=AV_PROTOCOL_SIP)
{
- /*�������ݷ�������ѡ��*/
+ /*�������ݷ�������ѡ��*/
media_info->opt_unit = (struct opt_unit_t*)calloc(1, sizeof(struct opt_unit_t));
media_info->opt_unit->opt_len = sizeof(uint32_t)+sizeof(uint8_t)+sizeof(unsigned int);
media_info->opt_unit->opt_type = OPT_SOURCE_IP;
diff --git a/src/main.c b/src/main.c
index ed67102..4f1c5ef 100644
--- a/src/main.c
+++ b/src/main.c
@@ -70,20 +70,20 @@ void frag_rssb_history()
//2017.03.03 v1.0 1, monitor: data_flag, not hitservice
//2017.03.06 v1.0 1. av_dedup , set media_len
//2017.03.09 v2.0 use redis to query
- //2017.03.14 v2.0 1. mulit-bizman ���bizman��������,���߳�������һ�£������˿�BizmanPort->BizmanPort+thread_num-1
- //2. json to kafka ����ƿװ��Ϣ��JSON�ļ��ش���KAFKA������ý�����
- //3. redis connect bug ���redis ��������
- //4. send mateinfo add localIP �ش���Ԫ��Ϣ����IPѡ��
- //2017.03.15 v2.0 �ϲ������ڴ�汾
+ //2017.03.14 v2.0 1. mulit-bizman ���bizman��������,���߳�������һ�£������˿�BizmanPort->BizmanPort+thread_num-1
+ //2. json to kafka ����ƿװ��Ϣ��JSON�ļ��ش���KAFKA������ý�����
+ //3. redis connect bug ���redis ��������
+ //4. send mateinfo add localIP �ش���Ԫ��Ϣ����IPѡ��
+ //2017.03.15 v2.0 �ϲ������ڴ�汾
//2017.02.14 v1.0 alter unix socket to usm by dumeijie
//2017.03.09 v1.0 add lqnum opt by dumeijie
//2017.03.14 v1.0 support switch usm or unix socket
//2017.03.16 V2.0
- //fuzzy_hash���ӿ���FuzzyDigestSwitch
- //û��Ԫ��Ϣ������frag_unit
+ //fuzzy_hash���ӿ���FuzzyDigestSwitch
+ //û��Ԫ��Ϣ������frag_unit
//hash thread_safe = 512
//2017.03.17 V2.0
- //JSON���ӿ���
+ //JSON���ӿ���
//2017.03.28 V2.0
//log file open and close thread safe
//query fail or succ when once and twice
@@ -268,7 +268,6 @@ int dedup_read_conf_and_init(const char* filename)
return -1;
}
- MESA_load_profile_short_def(filename, "DEDUP", "AVDedupSwitch", (short*)&g_frag_cfg.av_dedup_switch,0);
MESA_load_profile_short_def(filename, "DEDUP", "AVDedupInvalid", (short*)&g_frag_cfg.dedup_invalid,0);
MESA_load_profile_uint_def(filename, "DEDUP", "DedupTdDataSize", (uint32_t*)&g_frag_cfg.td_data_maxsize, 1024);
MESA_load_profile_short_def(filename, "DEDUP", "MultiWaitTimeout", (short*)&g_frag_cfg.multisrc_wait_timeout, 30);
@@ -299,7 +298,7 @@ int dedup_read_conf_and_init(const char* filename)
}
}
/*LocalIP for thrift*/
- g_frag_run.dedup_hd = soqav_dedup_plug_init(addr_array, dedup_ipnum, g_frag_cfg.local_ip_nr, g_frag_cfg.fwd_ip_nr, g_frag_cfg.thread_num, g_frag_run.dedup_logger);
+ //g_frag_run.dedup_hd = soqav_dedup_plug_init(addr_array, dedup_ipnum, g_frag_cfg.local_ip_nr, g_frag_cfg.fwd_ip_nr, g_frag_cfg.thread_num, g_frag_run.dedup_logger);
if(NULL!=dedup_ip_serial)
{
free(dedup_ip_serial);
@@ -310,6 +309,7 @@ int dedup_read_conf_and_init(const char* filename)
free(addr_array);
addr_array = NULL;
}
+ /*
value = 0;
MESA_load_profile_int_def(filename, "DEDUP", "DedupBalanceNum", &value, 1000);
soqav_dedup_set_opt(g_frag_run.dedup_hd, DEDUP_TYPE_BALANCE_NUM, &value, sizeof(value));
@@ -321,7 +321,7 @@ int dedup_read_conf_and_init(const char* filename)
soqav_dedup_set_opt(g_frag_run.dedup_hd, DEDUP_TYPE_THRIFT_TIME, &value, sizeof(value));
MESA_load_profile_int_def(filename, "DEDUP", "DedupHtableArg", &value, 1000);
soqav_dedup_set_opt(g_frag_run.dedup_hd, DEDUP_TYPE_HTABLE_ARG, &value, sizeof(value));
-
+*/
g_frag_run.cpz_send_bizman = bizman_get_handle();
bizman_set_handle(g_frag_run.cpz_send_bizman, BIZMAN_SENDER_ACTIVE);
bizman_init_handle(g_frag_run.cpz_send_bizman);
@@ -331,7 +331,7 @@ int dedup_read_conf_and_init(const char* filename)
int multimedia_read_conf_and_init(const char* filename)
{
MESA_load_profile_short_def(filename, "MULTIMEDIA", "MediaJSONSwitch", (short*)&g_frag_cfg.media_json_switch,0);
- // Kafka��ʼ��
+ // Kafka��ʼ��
if(MESA_load_profile_string_nodef(filename, "MULTIMEDIA", "MediaJSONKafkaBrokers", g_frag_cfg.kafka_brokers, sizeof(g_frag_cfg.kafka_brokers))<0)
{
printf("get [NETWORK]KafkaBrokers error.\n");
@@ -361,7 +361,7 @@ int multimedia_read_conf_and_init(const char* filename)
"{%s:%d} KafkaConnection %s succ.",
__FILE__,__LINE__, g_frag_cfg.kafka_brokers);
}
- //����topic
+ //����topic
if((g_frag_run.kafka_producer->CreateTopicHandle(TOPIC_MEDIA_CREATE_JSON)) == NULL)
{
printf("Kafka CreateTopicHandle %s failed.", TOPIC_MEDIA_CREATE_JSON);
@@ -571,7 +571,7 @@ int read_conf_and_init(const char* filename)
/*stat log*/
rssb_stats_init(filename);
- /*���� 0:AV_PIC 1:voip*/
+ /*���� 0:AV_PIC 1:voip*/
MESA_load_profile_short_def(filename, "SYSTEM", "CPZTpye", (short*)&g_frag_cfg.cpz_type, 0);
/*thread_num*/
@@ -619,10 +619,10 @@ int read_conf_and_init(const char* filename)
g_frag_run.special_media_table[special_media_type[i]] = 1;
}
- /*ģ��hashժҪ���㿪��*/
+ /*ģ��hashժҪ���㿪��*/
MESA_load_profile_short_def(filename, "SYSTEM", "FuzzyDigestSwitch", (short*)&g_frag_cfg.fuzzy_digest_switch,0);
- /*�޸�Ԫ��ϢcapIP*/
+ /*�޸�Ԫ��ϢcapIP*/
MESA_load_profile_short_def(filename, "SYSTEM", "ModifyCapIPSwitch", (short*)&g_frag_cfg.modify_capIP_switch,1);
/*media hash param*/
@@ -702,7 +702,7 @@ int read_conf_and_init(const char* filename)
MESA_load_profile_short_def(filename, "SYSTEM", "MonitorFileDay", (short*)&g_frag_cfg.monitor_file_days,0);
mkdir_r(g_frag_cfg.monitor_file_root_dir);
- /*maat��ʼ��*/
+ /*maat��ʼ��*/
MESA_load_profile_short_def(filename, "SYSTEM", "FragForecastSwitch", (short*)&g_frag_cfg.forecast_switch,0);
if(g_frag_cfg.forecast_switch)
{
@@ -733,17 +733,17 @@ int read_conf_and_init(const char* filename)
g_frag_run.expr_tableid = Maat_table_register(g_frag_run.feather,"FRAG_MONITOR_KEYWORDS");
}
- /*������*/
+ /*������*/
memset(conf_buf,0,sizeof(conf_buf));
MESA_load_profile_string_nodef(filename, "NETWORK", "LocalIP", conf_buf, sizeof(conf_buf));
g_frag_cfg.local_ip_nr = get_ip_by_ifname(conf_buf);
- /*���ؿ�*/
+ /*���ؿ�*/
memset(conf_buf,0,sizeof(conf_buf));
MESA_load_profile_string_nodef(filename, "NETWORK", "FwdIP", conf_buf, sizeof(conf_buf));
g_frag_cfg.fwd_ip_nr = get_ip_by_ifname(conf_buf);
- /*recv_bizman init:��ƴװ��������*/
+ /*recv_bizman init:��ƴװ��������*/
MESA_load_profile_short_def(filename, "NETWORK", "BizmanPort", (short*)&g_frag_cfg.bizman_port,22082);
MESA_load_profile_uint_def(filename, "NETWORK", "BizmanAckSmoothTime", &front_bizman_smooth_msec,10);
MESA_load_profile_uint_def(filename, "NETWORK", "BizmanAckAccumulateTime", &front_bizman_acc_msec,10);
@@ -759,7 +759,7 @@ int read_conf_and_init(const char* filename)
bizman_init_handle(g_frag_run.recv_bizman[i]);
}
- /*���ؾ���*/
+ /*���ؾ���*/
MESA_load_profile_short_def(filename, "WLB", "wlb_on", (short*)&g_frag_cfg.wlb_on,1);
MESA_load_profile_string_def(filename, "WLB", "wlb_topic", g_frag_cfg.wlb_topic, sizeof(g_frag_cfg.wlb_topic),"AV");
MESA_load_profile_string_def(filename, "WLB", "wlb_group_name", g_frag_cfg.wlb_group_name, sizeof(g_frag_cfg.wlb_group_name),"group1");
@@ -774,7 +774,7 @@ int read_conf_and_init(const char* filename)
MESA_load_profile_short_def(filename, "WLB", "down_threshold", (short*)&g_frag_cfg.bfd_threshold,90);
MESA_load_profile_short_def(filename, "WLB", "down_num", (short*)&g_frag_cfg.bfd_down_num,20);
- /*send bizman :��ƴװ��ǰ�˷����ݣ�������Ӧ�˿�*/
+ /*send bizman :��ƴװ��ǰ�˷����ݣ�������Ӧ�˿�*/
MESA_load_profile_short_def(filename, "NETWORK", "BizmanAckPort", (short*)&g_frag_cfg.bizman_ack_port,22084);
g_frag_run.answer_sapp_bizman = bizman_get_handle();
bizman_set_handle(g_frag_run.answer_sapp_bizman, BIZMAN_SENDER_ACTIVE);
@@ -876,7 +876,7 @@ int read_conf_and_init(const char* filename)
}
}
- /*msg port:��ƴװ���ս���Ķ˿ڣ�ǰ�˽��ս���Ķ˿�*/
+ /*msg port:��ƴװ���ս���Ķ˿ڣ�ǰ�˽��ս���Ķ˿�*/
MESA_load_profile_short_def(filename, "NETWORK", "CPZMsgPort", (short*)&g_frag_cfg.cpz_msg_port, 22080);
MESA_load_profile_short_def(filename, "NETWORK", "QDMsgPort", (short*)&g_frag_cfg.qd_msg_port, 22080);
@@ -1010,30 +1010,30 @@ int read_conf_and_init(const char* filename)
MESA_load_profile_short_def(filename, "DEBUG", "HlsAboffsetInMode", (short*)&g_frag_cfg.hls_in_aboffset_mode,1);
MESA_load_profile_short_def(filename, "DEBUG", "JSONLocalSwitch", (short*)&g_frag_cfg.json_local_switch,0);
- /*��Ƭ����ʧЧ����*/
+ /*��Ƭ����ʧЧ����*/
MESA_load_profile_short_def(filename, "DEBUG", "FragSurveyInvalid", (short*)&g_frag_cfg.frag_survey_invalid,0);
/*trace path*/
MESA_load_profile_string_def(filename, "DEBUG", "TracePath", g_frag_cfg.trace_filepath, sizeof(g_frag_cfg.trace_filepath),"./log/");
- /*JSON��Ϣ�ش���ý��ҵ��*/
+ /*JSON��Ϣ�ش���ý��ҵ��*/
if(-1==multimedia_read_conf_and_init(filename))
{
return -1;
}
- /*����Ƶ����ҵ��td_data*/
+ /*����Ƶ����ҵ��td_data*/
if(-1==dedup_read_conf_and_init(filename))
{
return -1;
}
- /*VOIP ��־����ҵ��*/
+ /*VOIP ��־����ҵ��*/
if(-1==voip_read_conf_and_init(filename))
{
return -1;
}
- /* APP����ҵ��*/
+ /* APP����ҵ��*/
#ifdef APP_FUNC
if(-1==app_read_conf_and_init(filename))
{
@@ -1279,7 +1279,7 @@ int main(int argc, char **argv)
}
/* bizman recv data from papp*/
- /*bizman�����޶���ģʽ*/
+ /*bizman�����޶���ģʽ*/
if(0==g_frag_cfg.bizman_queue_mode)
{
for(i=0;i<g_frag_cfg.thread_num;i++)
@@ -1292,7 +1292,7 @@ int main(int argc, char **argv)
}
}
}
- /*bizman���ն���ģʽ*/
+ /*bizman���ն���ģʽ*/
else
{
g_frag_run.recv_bizman_lq = (MESA_lqueue_head*)calloc(1, g_frag_cfg.thread_num*sizeof(MESA_lqueue_head));
diff --git a/src/main.h b/src/main.h
index 1c89d12..6cbb524 100644
--- a/src/main.h
+++ b/src/main.h
@@ -17,7 +17,7 @@
#include "AV_interface.h"
#include "wiredLB.h"
-/*������֧�ֵ�ҵ������*/
+/*������֧�ֵ�ҵ������*/
#define CPZ_AV_PIC 0
#define CPZ_VOIP 1
@@ -29,7 +29,7 @@
#define SPECIAL_MEDIA_TYPE_MAXNUM 16 //in main.conf
#define SPECIAL_MEDIA_TABLE_MAXNUM 256 //special media type is 0Xxx, less than 256
-/*��Ŀȷ�ϻ����С*/
+/*��Ŀȷ�ϻ����С*/
#define ACK_BUF_SIZE 1500
typedef struct frag_rssb_parameter_s
@@ -60,7 +60,7 @@ typedef struct frag_rssb_parameter_s
MESA_timer_t* index_query_timer[MAX_THREAD_NUM];
char index_query_timer_on[MAX_THREAD_NUM];
- /*��Դ����ҵ��*/
+ /*��Դ����ҵ��*/
void* dedup_hd; //av_dedup_handle
void* dedup_logger; //av_dedup log
MESA_timer_t* multisrc_timer[MAX_THREAD_NUM];
@@ -185,41 +185,40 @@ typedef struct frag_rssb_configure_s
uint32_t local_ip_nr;
uint32_t thread_num;
- uint16_t bizman_queue_mode; //0:�޶��н��� 1:���л���
+ uint16_t bizman_queue_mode; //0:�޶��н��� 1:���л���
uint16_t avrecord_switch;
uint16_t forecast_switch;
- uint32_t bizman_queue_maxnum; //bizman ���е����ֵ
- /*���ض�Դҵ��*/
+ uint32_t bizman_queue_maxnum; //bizman ���е����ֵ
+ /*���ض�Դҵ��*/
uint32_t td_data_maxsize;
- int16_t av_dedup_switch;
uint32_t multisrc_wait_timeout;
uint32_t index_query_timeout;
int16_t multisrc_timer_cb_maxtime;
int16_t index_query_timer_cb_maxtime;
- int16_t dedup_invalid; //0:�������� 1:�ظ����ϱ� 2:
+ int16_t dedup_invalid; //0:�������� 1:�ظ����ϱ� 2:
/*debug*/
int16_t all_hit_monitor_switch;
int16_t all_hit_monitor_complete_rate;
- int16_t all_hit_filename; //����meidia_type�����ļ���׺
+ int16_t all_hit_filename; //����meidia_type�����ļ���׺
int16_t hls_in_aboffset_mode;
int16_t json_local_switch;
int16_t frag_survey_invalid;
int16_t ack_switch;
- /*APPҵ��*/
+ /*APPҵ��*/
int16_t app_switch;
int16_t IVI_switch;
int16_t asmis_switch;
int16_t cpz_type;
- uint32_t* voip_survey_log_iplist; /*VOIP�ļ����־����IP*/
+ uint32_t* voip_survey_log_iplist; /*VOIP�ļ����־����IP*/
uint16_t voip_survey_log_port;
uint16_t voip_survey_log_ipnum;
uint16_t voip_full_log_port;
uint16_t voip_full_log_ipnum;
- uint32_t* voip_full_log_iplist; /*VOIP��ȫ����־����IP*/
+ uint32_t* voip_full_log_iplist; /*VOIP��ȫ����־����IP*/
- int16_t voip_filter_switch; /*VOIP����media_type�����*/
+ int16_t voip_filter_switch; /*VOIP����media_type�����*/
char kafka_brokers[512];
int16_t media_json_switch;
@@ -240,9 +239,9 @@ typedef struct frag_rssb_configure_s
uint32_t health_check_port;
int16_t save_media;
- uint64_t bfd_down_stat; /*ÿһ��bit��һ�μ��״̬������������64��*/
+ uint64_t bfd_down_stat; /*ÿһ��bit��һ�μ��״̬������������64��*/
uint32_t bfd_recv_port;
- int16_t bfd_down_index; /*��ǰ�ڼ���*/
+ int16_t bfd_down_index; /*��ǰ�ڼ���*/
int16_t bfd_threshold;
int16_t bfd_down_num;
int16_t send_udp_switch;