static void* ALI_OSD_MemMalloc(BU32 size) { #if USE_MEM_MON == 1 BU32 * lp; cur_size +=size; if(cur_size > all_size_max) { all_size_max = cur_size; if(all_size_max >100000) { soc_printf("gui mem use = %d\n",all_size_max); } } lp = (BU32 *)MALLOC(size+4); *lp = size; lp++; return (void *)lp; #else if(size != 0) { return MALLOC(size); } else { return 0; } #endif }
static void epg_printf_event(eit_event_info_t *ep) { if (ep==NULL) soc_printf("\tevent empty!\n"); else { soc_printf("\tevent: 0x%x, running status=0x%x ",ep->event_id,ep->running_status); if (ep->eit_sht_desc->event_name==NULL) soc_printf("\n"); else soc_printf("\tevent_name: %s start=%04d/%02d/%02d %02d:%02d end=%04d/%02d/%02d %02d:%02d\n",ep->eit_sht_desc->event_name,ep->start_time.year,ep->start_time.month,ep->start_time.day,ep->start_time.hour,ep->start_time.min,ep->end_time.year,ep->end_time.month,ep->end_time.day,ep->end_time.hour,ep->end_time.min); if (ep->eit_pr_desc==NULL) soc_printf("rating==NULL\n"); else soc_printf("rating==%d\n",ep->eit_pr_desc->rating); if (ep->eit_ct_desc==NULL) soc_printf("content==NULL\n"); else soc_printf("content_id=%d,content=%s\n",ep->eit_ct_desc->content_nibble1,content_nibble[ep->eit_ct_desc->content_nibble1]); } }
static void ALI_OSD_MemFree(void * lpmem) { #if USE_MEM_MON == 1 BU32 * lp; lp = (BU32 *)lpmem; lp--; cur_size -= *lp; soc_printf("gui mem free = %d\n",*lp); FREE((void *)lp); #else if(lpmem != NULL) { FREE(lpmem); } #endif }
static void epg_list_service(eit_service_info_t *sp) { eit_event_info_t *ep=sp->pf_event_header; osal_task_dispatch_off(); soc_printf(" service: 0x%x\n sch_cur_section[0]=%d\n sch_cur_section[1]=%d \n",sp->service_id,sp->sch_cur_sec_num[0],sp->sch_cur_sec_num[1]); soc_printf("--------------------------------pf event------------------------------------------------------------------------------\n"); while (ep!=NULL) { epg_printf_event(ep); ep=ep->next; } ep=sp->sch_event_header[0]; soc_printf("--------------------------------schedule event table_id 0x50--------------------------------\n"); while(ep!=NULL) { epg_printf_event(ep); ep=ep->next; } ep=sp->sch_event_header[1]; soc_printf("--------------------------------schedule event table_id 0x51--------------------------------\n"); while(ep!=NULL) { epg_printf_event(ep); ep=ep->next; } ep=sp->sch_event_header[2]; soc_printf("--------------------------------schedule event table_id 0x52--------------------------------\n"); while(ep!=NULL) { epg_printf_event(ep); ep=ep->next; } ep=sp->sch_event_header[3]; soc_printf("--------------------------------schedule event table_id 0x53--------------------------------\n"); while(ep!=NULL) { epg_printf_event(ep); ep=ep->next; } soc_printf("---------------------------------------------------------------------------------------------------------------------\n\n"); osal_task_dispatch_on(); }
void mpeg2enc(UINT16 h_size,UINT16 v_size,UINT8* y_addr,UINT8* c_addr,UINT8* f_y_addr,UINT8* f_c_addr,UINT8* out_stream_buf,UINT32* out_stream_size) { UINT32 dest_size = *out_stream_size; if(dest_size == 0) dest_size = 32768; #if (CAPTURE_MODE==FRAME_CAPTURE) prog_frame = 0; g_mquant = 18; #else //(CAPTURE_MODE==FIELD_CAPTURE) prog_frame = 1; g_mquant = 10; #endif do{ g_bs_ptr = out_stream_buf; g_bs_len = 0; initparam(); /* round picture dimensions to nearest multiple of 16 or 32 */ mb_width = (h_size+15)/16; #if (CAPTURE_MODE==FRAME_CAPTURE) mb_height = prog_seq ? (v_size+15)/16 : 2*((v_size+31)/32); #else//(CAPTURE_MODE==FIELD_CAPTURE) mb_height = prog_seq ? (v_size/2+15)/16 : 2*((v_size/2+31)/32); #endif mb_height2 = fieldpic ? mb_height>>1 : mb_height; /* for field pictures */ luma_width = 16*mb_width; luma_height = 16*mb_height; chrom_width = luma_width>>1; chrom_height = luma_height>>1; width2 = fieldpic ? luma_width<<1 : luma_width; chrom_width2 = fieldpic ? chrom_width<<1 : chrom_width; block_count = 6;//420 neworg[0] = f_c_addr; neworg[1] = neworg[0]+luma_width*luma_height; neworg[2] = neworg[1]+chrom_width*chrom_height; format_transform(y_addr,c_addr,neworg[0],neworg[1],neworg[2],luma_width,luma_height); initquantmat(); initbits(); putseq(); //soc_printf("mquant:%d,bs_len:%d\n",g_mquant,g_bs_len); if(g_mquant == 62 && g_bs_len>dest_size) { soc_printf("ERROR: compressed size exceed buffer size!\n"); break; } if(g_bs_len*10/dest_size < 12) g_mquant +=2; else if(g_bs_len*10/dest_size < 15) g_mquant +=4; else if(g_bs_len*10/dest_size < 18) g_mquant +=6; else if(g_bs_len*10/dest_size < 21) g_mquant +=8; else g_mquant +=10; if(g_mquant > 62) g_mquant = 62; }while(g_bs_len > dest_size); *out_stream_size = g_bs_len; return ; }