From 779a3aba55d0dcd22dded18c7869b5ee4e72a602 Mon Sep 17 00:00:00 2001 From: dumeijie Date: Wed, 7 Sep 2022 19:43:28 +0800 Subject: 🦄 refactor(for voip): MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Makefile | 2 +- src/frag_av.c | 11 --- src/frag_dedup.c | 112 ++++---------------------- src/frag_reassembly.c | 212 ++++++++++++++------------------------------------ src/main.c | 60 +++++++------- src/main.h | 29 ++++--- 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 @@ -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;iopt_indexopt[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;iqd_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��ٴ����������ﶪ�������ٲ��Ŀ�Ĵ���*/ 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