亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sei.c

?? jm_frext22.ZIP的壓縮文件,主要用于嵌入式系統圖象的編解碼的開發.
?? C
?? 第 1 頁 / 共 4 頁
字號:
 *     the size of the sei message
 *  \param img
 *     the image pointer
 *    
 ************************************************************************
 */
void interpret_user_data_registered_itu_t_t35_info( byte* payload, int size, ImageParameters *img )
{
  int offset = 0;
  byte itu_t_t35_country_code, itu_t_t35_country_code_extension_byte, payload_byte;

  itu_t_t35_country_code = payload[offset];
  offset++;
#ifdef PRINT_USER_DATA_REGISTERED_ITU_T_T35_INFO
  printf("User data registered by ITU-T T.35 SEI message\n");
  printf(" itu_t_t35_country_code = %d \n", itu_t_t35_country_code);
#endif
  if(itu_t_t35_country_code == 0xFF) 
  {
    itu_t_t35_country_code_extension_byte = payload[offset];
    offset++;
#ifdef PRINT_USER_DATA_REGISTERED_ITU_T_T35_INFO
    printf(" ITU_T_T35_COUNTRTY_CODE_EXTENSION_BYTE %d \n", itu_t_t35_country_code_extension_byte);
#endif
  }
  while (offset < size)
  {
    payload_byte = payload[offset];
    offset ++;
#ifdef PRINT_USER_DATA_REGISTERED_ITU_T_T35_INFO
    printf("itu_t_t35 payload_byte = %d\n", payload_byte);
#endif
  }
#ifdef PRINT_USER_DATA_REGISTERED_ITU_T_T35_INFO
#undef PRINT_USER_DATA_REGISTERED_ITU_T_T35_INFO
#endif
}


/*!
 ************************************************************************
 *  \brief
 *     Interpret the Pan scan rectangle SEI message
 *  \param payload
 *     a pointer that point to the sei payload
 *  \param size
 *     the size of the sei message
 *  \param img
 *     the image pointer
 *    
 ************************************************************************
 */
void interpret_pan_scan_rect_info( byte* payload, int size, ImageParameters *img )
{
  int pan_scan_rect_id, pan_scan_rect_left_offset, pan_scan_rect_right_offset;
  int pan_scan_rect_top_offset, pan_scan_rect_bottom_offset;

  Bitstream* buf;

  buf = malloc(sizeof(Bitstream));
  buf->bitstream_length = size;
  buf->streamBuffer = payload;
  buf->frame_bitoffset = 0;

  UsedBits = 0;

  pan_scan_rect_id = ue_v("SEI: pan_scan_rect_id", buf);

  pan_scan_rect_left_offset   = se_v("SEI: pan_scan_rect_left_offset"  , buf);
  pan_scan_rect_right_offset  = se_v("SEI: pan_scan_rect_right_offset" , buf);
  pan_scan_rect_top_offset    = se_v("SEI: pan_scan_rect_top_offset"   , buf);
  pan_scan_rect_bottom_offset = se_v("SEI: pan_scan_rect_bottom_offset", buf);

#ifdef PRINT_PAN_SCAN_RECT
  printf("Pan scan rectangle SEI message\n");
  printf("pan_scan_rect_id            = %d\n", pan_scan_rect_id);
  printf("pan_scan_rect_left_offset   = %d\n", pan_scan_rect_left_offset);
  printf("pan_scan_rect_right_offset  = %d\n", pan_scan_rect_right_offset);
  printf("pan_scan_rect_top_offset    = %d\n", pan_scan_rect_top_offset);
  printf("pan_scan_rect_bottom_offset = %d\n", pan_scan_rect_bottom_offset);
#endif
  free (buf);
#ifdef PRINT_PAN_SCAN_RECT
#undef PRINT_PAN_SCAN_RECT
#endif
}


/*!
 ************************************************************************
 *  \brief
 *     Interpret the Random access point SEI message
 *  \param payload
 *     a pointer that point to the sei payload
 *  \param size
 *     the size of the sei message
 *  \param img
 *     the image pointer
 *    
 ************************************************************************
 */
void interpret_random_access_info( byte* payload, int size, ImageParameters *img )
{
  int recovery_frame_cnt, exact_match_flag, broken_link_flag, changing_slice_group_idc;


  Bitstream* buf;


  buf = malloc(sizeof(Bitstream));
  buf->bitstream_length = size;
  buf->streamBuffer = payload;
  buf->frame_bitoffset = 0;

  UsedBits = 0;

  recovery_frame_cnt       = ue_v(    "SEI: recovery_frame_cnt"      , buf);
  exact_match_flag         = u_1 (    "SEI: exact_match_flag"        , buf);
  broken_link_flag         = u_1 (    "SEI: broken_link_flag"        , buf);
  changing_slice_group_idc = u_v ( 2, "SEI: changing_slice_group_idc", buf);

#ifdef PRINT_RANDOM_ACCESS
  printf("Random access point SEI message\n");
  printf("recovery_frame_cnt       = %d\n", recovery_frame_cnt);
  printf("exact_match_flag         = %d\n", exact_match_flag);
  printf("broken_link_flag         = %d\n", broken_link_flag);
  printf("changing_slice_group_idc = %d\n", changing_slice_group_idc);
#endif
  free (buf);
#ifdef PRINT_RANDOM_ACCESS
#undef PRINT_RANDOM_ACCESS
#endif
}


/*!
 ************************************************************************
 *  \brief
 *     Interpret the Decoded Picture Buffer Management Repetition SEI message
 *  \param payload
 *     a pointer that point to the sei payload
 *  \param size
 *     the size of the sei message
 *  \param img
 *     the image pointer
 *    
 ************************************************************************
 */
void interpret_dec_ref_pic_marking_repetition_info( byte* payload, int size, ImageParameters *img )
{
  int original_idr_flag, original_frame_num;

  DecRefPicMarking_t *tmp_drpm;

  DecRefPicMarking_t *old_drpm;
  int old_idr_flag , old_no_output_of_prior_pics_flag, old_long_term_reference_flag , old_adaptive_ref_pic_buffering_flag;


  Bitstream* buf;

  buf = malloc(sizeof(Bitstream));
  buf->bitstream_length = size;
  buf->streamBuffer = payload;
  buf->frame_bitoffset = 0;

  UsedBits = 0;

  original_idr_flag     = u_1 (    "SEI: original_idr_flag"    , buf);
  original_frame_num    = ue_v(    "SEI: original_frame_num"   , buf);

#ifdef PRINT_DEC_REF_PIC_MARKING
  printf("Decoded Picture Buffer Management Repetition SEI message\n");
  printf("original_idr_flag       = %d\n", original_idr_flag);
  printf("original_frame_num      = %d\n", original_frame_num);
#endif

  // we need to save everything that is probably overwritten in dec_ref_pic_marking()
  old_drpm = img->dec_ref_pic_marking_buffer;
  old_idr_flag = img->idr_flag;

  old_no_output_of_prior_pics_flag = img->no_output_of_prior_pics_flag;
  old_long_term_reference_flag = img->long_term_reference_flag;
  old_adaptive_ref_pic_buffering_flag = img->adaptive_ref_pic_buffering_flag;

  // set new initial values
  img->idr_flag = original_idr_flag;
  img->dec_ref_pic_marking_buffer = NULL;

  dec_ref_pic_marking(buf);

  // print out decoded values
#ifdef PRINT_DEC_REF_PIC_MARKING
  if (img->idr_flag)
  {
    printf("no_output_of_prior_pics_flag = %d\n", img->no_output_of_prior_pics_flag);
    printf("long_term_reference_flag     = %d\n", img->long_term_reference_flag);
  }
  else
  {
    printf("adaptive_ref_pic_buffering_flag  = %d\n", img->adaptive_ref_pic_buffering_flag);
    if (img->adaptive_ref_pic_buffering_flag)
    {
      tmp_drpm=img->dec_ref_pic_marking_buffer;
      while (tmp_drpm != NULL)
      {
        printf("memory_management_control_operation  = %d\n", tmp_drpm->memory_management_control_operation);
        
        if ((tmp_drpm->memory_management_control_operation==1)||(tmp_drpm->memory_management_control_operation==3)) 
        {
          printf("difference_of_pic_nums_minus1        = %d\n", tmp_drpm->difference_of_pic_nums_minus1);
        }
        if (tmp_drpm->memory_management_control_operation==2)
        {
          printf("long_term_pic_num                    = %d\n", tmp_drpm->long_term_pic_num);
        }
        if ((tmp_drpm->memory_management_control_operation==3)||(tmp_drpm->memory_management_control_operation==6))
        {
          printf("long_term_frame_idx                  = %d\n", tmp_drpm->long_term_frame_idx);
        }
        if (tmp_drpm->memory_management_control_operation==4)
        {
          printf("max_long_term_pic_idx_plus1          = %d\n", tmp_drpm->max_long_term_frame_idx_plus1);
        }
        tmp_drpm = tmp_drpm->Next;
      }
      
    }
  }
#endif

  while (img->dec_ref_pic_marking_buffer)
  {
    tmp_drpm = img->dec_ref_pic_marking_buffer->Next;
    free (tmp_drpm);
  }

  // restore old values in img
  img->dec_ref_pic_marking_buffer = old_drpm;
  img->idr_flag = old_idr_flag;
  img->no_output_of_prior_pics_flag = old_no_output_of_prior_pics_flag;
  img->long_term_reference_flag = old_long_term_reference_flag;
  img->adaptive_ref_pic_buffering_flag = old_adaptive_ref_pic_buffering_flag;
  
   
  free (buf);
#ifdef PRINT_DEC_REF_PIC_MARKING
#undef PRINT_DEC_REF_PIC_MARKING
#endif
}

/*!
 ************************************************************************
 *  \brief
 *     Interpret the Full-frame freeze SEI message
 *  \param payload
 *     a pointer that point to the sei payload
 *  \param size
 *     the size of the sei message
 *  \param img
 *     the image pointer
 *    
 ************************************************************************
 */
void interpret_full_frame_freeze_info( byte* payload, int size, ImageParameters *img )
{
#ifdef PRINT_FULL_FRAME_FREEZE_INFO
  printf("Full-frame freeze SEI message\n");
  if (size)
  {
    printf("payload size of this message should be zero, but is %d bytes.\n", size);
  }
#endif

#ifdef PRINT_FULL_FRAME_FREEZE_INFO
#undef PRINT_FULL_FRAME_FREEZE_INFO
#endif
}


/*!
 ************************************************************************
 *  \brief
 *     Interpret the Full-frame freeze release SEI message
 *  \param payload
 *     a pointer that point to the sei payload
 *  \param size
 *     the size of the sei message
 *  \param img
 *     the image pointer
 *    
 ************************************************************************
 */
void interpret_full_frame_freeze_release_info( byte* payload, int size, ImageParameters *img )
{
#ifdef PRINT_FULL_FRAME_FREEZE_RELEASE_INFO
  printf("Full-frame freeze release SEI message\n");
  if (size)
  {
    printf("payload size of this message should be zero, but is %d bytes.\n", size);
  }
#endif

#ifdef PRINT_FULL_FRAME_FREEZE_RELEASE_INFO
#undef PRINT_FULL_FRAME_FREEZE_RELEASE_INFO
#endif
}

/*!
 ************************************************************************
 *  \brief
 *     Interpret the Full-frame snapshot SEI message
 *  \param payload
 *     a pointer that point to the sei payload
 *  \param size
 *     the size of the sei message
 *  \param img
 *     the image pointer
 *    
 ************************************************************************
 */
void interpret_full_frame_snapshot_info( byte* payload, int size, ImageParameters *img )
{
  int snapshot_id;

  Bitstream* buf;

  buf = malloc(sizeof(Bitstream));
  buf->bitstream_length = size;
  buf->streamBuffer = payload;
  buf->frame_bitoffset = 0;

  UsedBits = 0;

  snapshot_id = ue_v("SEI: snapshot_id", buf);

#ifdef PRINT_FULL_FRAME_SNAPSHOT_INFO
  printf("Full-frame snapshot SEI message\n");
  printf("snapshot_id = %d\n", snapshot_id);
#endif
  free (buf);
#ifdef PRINT_FULL_FRAME_SNAPSHOT_INFO
#undef PRINT_FULL_FRAME_SNAPSHOT_INFO
#endif
}

/*!
 ************************************************************************
 *  \brief
 *     Interpret the Progressive refinement segment start SEI message
 *  \param payload
 *     a pointer that point to the sei payload
 *  \param size
 *     the size of the sei message
 *  \param img
 *     the image pointer
 *    
 ************************************************************************
 */
void interpret_progressive_refinement_start_info( byte* payload, int size, ImageParameters *img )
{
  int progressive_refinement_id, num_refinement_steps_minus1;

  Bitstream* buf;

  buf = malloc(sizeof(Bitstream));
  buf->bitstream_length = size;
  buf->streamBuffer = payload;
  buf->frame_bitoffset = 0;

  UsedBits = 0;

  progressive_refinement_id   = ue_v("SEI: progressive_refinement_id"  , buf);
  num_refinement_steps_minus1 = ue_v("SEI: num_refinement_steps_minus1", buf);

#ifdef PRINT_PROGRESSIVE_REFINEMENT_START_INFO
  printf("Progressive refinement segment start SEI message\n");
  printf("progressive_refinement_id   = %d\n", progressive_refinement_id);
  printf("num_refinement_steps_minus1 = %d\n", num_refinement_steps_minus1);
#endif
  free (buf);
#ifdef PRINT_PROGRESSIVE_REFINEMENT_START_INFO
#undef PRINT_PROGRESSIVE_REFINEMENT_START_INFO
#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区免费视频| 亚洲伦理在线免费看| 国产成人精品aa毛片| 国产精品久线在线观看| 在线视频欧美精品| 日韩二区三区四区| 久久综合色8888| 成人国产免费视频| 一区二区国产盗摄色噜噜| 欧美欧美欧美欧美首页| 国产尤物一区二区在线| 最新日韩在线视频| 在线播放国产精品二区一二区四区| 日韩精品欧美精品| 国产亚洲短视频| 色狠狠色狠狠综合| 麻豆91精品视频| 国产精品美女视频| 欧美日韩国产美| 九九视频精品免费| 国产精品传媒在线| 911精品产国品一二三产区| 国产成人h网站| 亚洲一二三四在线观看| 欧美成人性战久久| 91啦中文在线观看| 久久精品国产网站| 亚洲色图另类专区| 日韩免费观看高清完整版| 波多野结衣中文字幕一区 | 91久久精品一区二区三区| 日韩1区2区日韩1区2区| 日本一区二区成人| 欧美人伦禁忌dvd放荡欲情| 国产精品99久久久久久宅男| 一二三区精品视频| 久久这里只精品最新地址| 色狠狠一区二区| 国产精品自拍一区| 性欧美大战久久久久久久久| 国产欧美一区二区在线观看| 欧美日韩精品专区| 成人午夜av在线| 日本va欧美va欧美va精品| 国产精品毛片久久久久久久| 欧美一区二区三区在线视频| 成人国产精品免费网站| 免费高清不卡av| 亚洲自拍偷拍综合| 国产网站一区二区| 91精品国产综合久久福利软件| 99久久婷婷国产| 国产一区二区日韩精品| 婷婷开心激情综合| 中文字幕亚洲区| 精品国产91亚洲一区二区三区婷婷| 91精彩视频在线观看| 大美女一区二区三区| 乱中年女人伦av一区二区| 怡红院av一区二区三区| 国产精品色婷婷久久58| 日韩欧美中文字幕制服| 欧美三级视频在线观看| 99久久久无码国产精品| 国产伦精品一区二区三区视频青涩| 亚洲一区二区视频| 亚洲欧美中日韩| 国产欧美日韩一区二区三区在线观看| 91精品国产91久久综合桃花| 色综合久久综合| 成人一道本在线| 国内久久精品视频| 日本欧美加勒比视频| 亚洲二区在线视频| 亚洲精品视频观看| 中文字幕在线观看一区二区| 国产喂奶挤奶一区二区三区| 精品国产网站在线观看| 在线综合亚洲欧美在线视频| 欧美伊人久久大香线蕉综合69| 99国产精品久久久久久久久久久| 福利91精品一区二区三区| 狠狠v欧美v日韩v亚洲ⅴ| 日韩黄色一级片| 丝瓜av网站精品一区二区| 亚洲色图另类专区| 中文字幕佐山爱一区二区免费| 日本一区二区视频在线观看| www久久精品| 精品蜜桃在线看| 精品国产一区二区三区久久影院 | 欧美性色综合网| 一本色道综合亚洲| 色综合久久久久综合体桃花网| 99在线精品视频| 91视频一区二区| 99r国产精品| 99久久婷婷国产综合精品| 99久久婷婷国产综合精品电影| av一区二区三区| 91在线视频播放| 色婷婷狠狠综合| 欧洲一区二区av| 欧美日韩一区二区在线视频| 欧美丝袜自拍制服另类| 欧美日韩国产在线观看| 欧美日韩成人一区二区| 欧美精品欧美精品系列| 91精品国产综合久久福利软件| 欧美一区二区免费视频| 欧美本精品男人aⅴ天堂| 欧美va亚洲va在线观看蝴蝶网| 精品欧美一区二区久久| 精品国产三级电影在线观看| 久久精品一区二区三区不卡| 国产欧美日韩精品a在线观看| 日本一区二区成人| 亚洲品质自拍视频| 亚洲成人你懂的| 日韩av一区二区三区| 久久精品久久精品| 国产成人在线色| 白白色 亚洲乱淫| 色成年激情久久综合| 欧美性猛交xxxx乱大交退制版| 在线不卡欧美精品一区二区三区| 日韩欧美国产成人一区二区| 久久久久久**毛片大全| 亚洲天堂福利av| 亚洲网友自拍偷拍| 蜜臀久久99精品久久久画质超高清| 久久er精品视频| 成人性视频免费网站| 亚洲国产一区二区三区青草影视| 丝袜美腿一区二区三区| 国内久久婷婷综合| 97精品视频在线观看自产线路二| 欧美性受xxxx黑人xyx性爽| 欧美一级生活片| 国产女同互慰高潮91漫画| 亚洲欧美欧美一区二区三区| 午夜精品福利一区二区三区蜜桃| 久久精品国产久精国产爱| 亚洲三级电影网站| 五月激情六月综合| 国产一区二区三区视频在线播放| 99re亚洲国产精品| 91精品国产乱码久久蜜臀| 国产欧美日韩视频一区二区| 一区二区国产盗摄色噜噜| 久久国产精品99久久人人澡| 成人免费黄色在线| 欧美巨大另类极品videosbest | 国产xxx精品视频大全| 91久久精品日日躁夜夜躁欧美| 日韩欧美一级二级| 国产精品久久久一本精品| 日韩精品视频网| av一区二区三区四区| 欧美一区二区在线视频| 日本一区二区久久| 日韩电影在线一区二区| av高清久久久| 日韩视频一区二区三区 | 综合久久久久综合| 看片网站欧美日韩| 色婷婷av一区| 久久久久久久久久久久久女国产乱 | 伊人一区二区三区| 国产一区二区在线视频| 欧美性一二三区| 日本一区二区三区久久久久久久久不| 一二三区精品视频| 福利一区福利二区| 日韩欧美国产三级电影视频| 亚洲特黄一级片| 国产在线一区二区综合免费视频| 91国产视频在线观看| 国产人久久人人人人爽| 日日欢夜夜爽一区| 91丨porny丨首页| 国产日韩欧美一区二区三区乱码| 午夜欧美大尺度福利影院在线看| 播五月开心婷婷综合| 精品成人一区二区| 亚洲成人tv网| 91在线观看免费视频| 久久久.com| 蜜桃视频第一区免费观看| 欧美性一区二区| 综合网在线视频| 国产成人精品在线看| 日韩午夜在线观看| 亚洲一区二区偷拍精品| www.亚洲在线| 国产视频一区二区在线观看| 麻豆国产91在线播放| 欧美区一区二区三区| 一区二区三区在线观看视频| 不卡视频在线观看|