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

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

?? cabac.c

?? h.264編碼庫 (T264)..........................
?? C
?? 第 1 頁 / 共 4 頁
字號:
//        T264_cabac_encode_decision( &t->cabac, 36, 1 );
//        T264_cabac_encode_decision( &t->cabac, 37, 1 );
//        T264_cabac_encode_decision( &t->cabac, 38, 1 );
//        T264_cabac_encode_decision( &t->cabac, 39, 1 );
//        T264_cabac_encode_decision( &t->cabac, 39, 1 );
//    }
//}
//
//
//static __inline  void T264_cabac_mb_ref( T264_t *t, int i_list, int idx )
//{
//	const int i8    = T264_scan8[idx];
//	T264_mb_context_t *mb_ctxs = &(t->rec->mb[0]);
//	const int i_refa = t->mb.vec_ref[i8 - 1].vec[i_list].refno;
//    const int i_refb = t->mb.vec_ref[i8 - 8].vec[i_list].refno;
//    int i_ref  = t->mb.vec_ref[i8].vec[i_list].refno;
//	int a_direct, b_direct;
//	int ctx  = 0;
//	int luma_idx = luma_index[idx];
//	if( t->slice_type==SLICE_B && t->mb.mb_x > 0 && (mb_ctxs[t->mb.mb_xy-1].mb_mode == B_SKIP||mb_ctxs[t->mb.mb_xy-1].is_copy ) && (luma_idx&0x03)==0)
//	{
//		a_direct = 1;
//	}
//	else
//		a_direct = 0;
//	if( t->slice_type==SLICE_B && t->mb.mb_y > 0 && (mb_ctxs[t->mb.mb_xy - t->mb_stride].mb_mode == B_SKIP||mb_ctxs[t->mb.mb_xy - t->mb_stride].is_copy) && luma_idx<4)
//	{
//		b_direct = 1;
//	}
//	else
//		b_direct = 0;
//
//    if( i_refa>0 && !a_direct)
//        ctx++;
//    if( i_refb>0 && !b_direct)
//        ctx += 2;
//
//    while( i_ref > 0 )
//    {
//        T264_cabac_encode_decision( &t->cabac, 54 + ctx, 1 );
//        if( ctx < 4 )
//            ctx = 4;
//        else
//            ctx = 5;
//
//        i_ref--;
//    }
//    T264_cabac_encode_decision( &t->cabac, 54 + ctx, 0 );
//}
//
//
//static __inline  void  T264_cabac_mb_mvd_cpn( T264_t *t, int i_list, int i8, int l, int mvd )
//{
//    const int amvd = abs( t->mb.mvd_ref[i_list][i8 - 1][l] ) +
//                     abs( t->mb.mvd_ref[i_list][i8 - 8][l] );
//    const int i_abs = abs( mvd );
//    const int i_prefix = T264_MIN( i_abs, 9 );
//    const int ctxbase = (l == 0 ? 40 : 47);
//    int ctx;
//    int i;
//
//
//    if( amvd < 3 )
//        ctx = 0;
//    else if( amvd > 32 )
//        ctx = 2;
//    else
//        ctx = 1;
//
//    for( i = 0; i < i_prefix; i++ )
//    {
//        T264_cabac_encode_decision( &t->cabac, ctxbase + ctx, 1 );
//        if( ctx < 3 )
//            ctx = 3;
//        else if( ctx < 6 )
//            ctx++;
//    }
//    if( i_prefix < 9 )
//    {
//        T264_cabac_encode_decision( &t->cabac, ctxbase + ctx, 0 );
//    }
//
//    if( i_prefix >= 9 )
//    {
//        int i_suffix = i_abs - 9;
//        int k = 3;
//
//        while( i_suffix >= (1<<k) )
//        {
//            T264_cabac_encode_bypass( &t->cabac, 1 );
//            i_suffix -= 1 << k;
//            k++;
//        }
//        T264_cabac_encode_bypass( &t->cabac, 0 );
//        while( k-- )
//        {
//            T264_cabac_encode_bypass( &t->cabac, (i_suffix >> k)&0x01 );
//        }
//    }
//
//    /* sign */
//    if( mvd > 0 )
//        T264_cabac_encode_bypass( &t->cabac, 0 );
//    else if( mvd < 0 )
//        T264_cabac_encode_bypass( &t->cabac, 1 );
//}
//
//static __inline  void  T264_cabac_mb_mvd( T264_t *t, int i_list, int idx, int width, int height )
//{
//    T264_vector_t mvp;
//    int mdx, mdy;
//	int i, j;
//	int i8    = T264_scan8[idx];
//	int luma_idx = luma_index[idx];
//    /* Calculate mvd */
//	mvp.refno = t->mb.vec_ref[i8].vec[i_list].refno;
//    T264_predict_mv( t, i_list, luma_idx, width, &mvp );
//	mdx = t->mb.vec_ref[i8].vec[i_list].x - mvp.x;
//	mdy = t->mb.vec_ref[i8].vec[i_list].y - mvp.y;
//    
//    /* encode */
//    T264_cabac_mb_mvd_cpn( t, i_list, i8, 0, mdx );
//    T264_cabac_mb_mvd_cpn( t, i_list, i8, 1, mdy );
//	/* save mvd value */
//	for(j=0; j<height; j++)
//	{
//		for(i=0; i<width; i++)
//		{
//			t->mb.mvd_ref[i_list][i8+i][0] = mdx;
//			t->mb.mvd_ref[i_list][i8+i][1] = mdy;
//			t->mb.mvd[i_list][luma_idx+i][0] = mdx;
//			t->mb.mvd[i_list][luma_idx+i][1] = mdy;
//		}
//		i8 += 8;
//		luma_idx += 4;
//	}
//}
//
//static __inline void T264_cabac_mb8x8_mvd( T264_t *t, int i_list )
//{
//	int i;
//	int sub_part;
//	for( i = 0; i < 4; i++ )
//	{
//		sub_part = t->mb.submb_part[luma_index[i<<2]];
//		if( T264_mb_partition_listX_table[sub_part-B_DIRECT_8x8][i_list] == 0 )
//		{
//			continue;
//		}
//
//		switch( sub_part )
//		{
//		case B_DIRECT_8x8:
//			assert(0);
//			break;
//		case B_L0_8x8:
//		case B_L1_8x8:
//		case B_Bi_8x8:
//			T264_cabac_mb_mvd( t, i_list, 4*i, 2, 2 );
//			break;
//		case B_L0_8x4:
//		case B_L1_8x4:
//		case B_Bi_8x4:
//			T264_cabac_mb_mvd( t, i_list, 4*i+0, 2, 1 );
//			T264_cabac_mb_mvd( t, i_list, 4*i+2, 2, 1 );
//			break;
//		case B_L0_4x8:
//		case B_L1_4x8:
//		case B_Bi_4x8:
//			T264_cabac_mb_mvd( t, i_list, 4*i+0, 1, 2 );
//			T264_cabac_mb_mvd( t, i_list, 4*i+1, 1, 2 );
//			break;
//		case B_L0_4x4:
//		case B_L1_4x4:
//		case B_Bi_4x4:
//			T264_cabac_mb_mvd( t, i_list, 4*i+0, 1, 1 );
//			T264_cabac_mb_mvd( t, i_list, 4*i+1, 1, 1 );
//			T264_cabac_mb_mvd( t, i_list, 4*i+2, 1, 1 );
//			T264_cabac_mb_mvd( t, i_list, 4*i+3, 1, 1 );
//			break;
//		}
//	}
//}
//
//static int T264_cabac_mb_cbf_ctxidxinc( T264_t *t, int i_cat, int i_idx )
//{
//    /* TODO: clean up/optimize */
//	T264_mb_context_t *mb_ctxs = &(t->rec->mb[0]);
//	T264_mb_context_t *mb_ctx;
//    int i_mba_xy = -1;
//    int i_mbb_xy = -1;
//    int i_nza = -1;
//    int i_nzb = -1;
//    int ctx = 0;
//	int cbp;
//
//    if( i_cat == 0 )
//    {
//        if( t->mb.mb_x > 0 )
//        {
//            i_mba_xy = t->mb.mb_xy -1;
//			mb_ctx = &(mb_ctxs[i_mba_xy]);
//            if( mb_ctx->mb_mode == I_16x16 )
//            {
//                i_nza = (mb_ctx->cbp & 0x100);
//            }
//        }
//        if( t->mb.mb_y > 0 )
//        {
//            i_mbb_xy = t->mb.mb_xy - t->mb_stride;
//			mb_ctx = &(mb_ctxs[i_mbb_xy]);
//            if( mb_ctx->mb_mode == I_16x16 )
//            {
//                i_nzb = (mb_ctx->cbp & 0x100);
//            }
//        }
//    }
//    else if( i_cat == 1 || i_cat == 2 )
//    {
//        int x = luma_inverse_x[i_idx];
//        int y = luma_inverse_y[i_idx];
//		int i8 = T264_scan8[i_idx];
//        if( x > 0 )
//            i_mba_xy = t->mb.mb_xy;
//        else if( t->mb.mb_x > 0 )
//            i_mba_xy = t->mb.mb_xy -1;
//
//        if( y > 0 )
//            i_mbb_xy = t->mb.mb_xy;
//        else if( t->mb.mb_y > 0 )
//            i_mbb_xy = t->mb.mb_xy - t->mb_stride;
//
//        /* no need to test for skip/pcm */
//        if( i_mba_xy >= 0 )
//        {
//            const int i8x8a = block_idx_xy[(x-1)&0x03][y]/4;
//            if( (mb_ctxs[i_mba_xy].cbp_y&0x0f)>> i8x8a )
//            {
//                i_nza = t->mb.nnz_ref[i8-1];
//            }
//        }
//        if( i_mbb_xy >= 0 )
//        {
//            const int i8x8b = block_idx_xy[x][(y-1)&0x03]/4;
//            if( (mb_ctxs[i_mbb_xy].cbp_y&0x0f)>> i8x8b )
//            {
//                i_nzb = t->mb.nnz_ref[i8 - 8];
//            }
//        }
//    }
//    else if( i_cat == 3 )
//    {
//        /* no need to test skip/pcm */
//        if( t->mb.mb_x > 0 )
//        {
//            i_mba_xy = t->mb.mb_xy -1;
//			cbp = mb_ctxs[i_mba_xy].cbp;
//            if( cbp&0x30 )
//            {
//                i_nza = cbp&( 0x02 << ( 8 + i_idx) );
//            }
//        }
//        if( t->mb.mb_y > 0 )
//        {
//            i_mbb_xy = t->mb.mb_xy - t->mb_stride;
//			cbp = mb_ctxs[i_mbb_xy].cbp;
//            if( cbp&0x30 )
//            {
//                i_nzb = cbp&( 0x02 << ( 8 + i_idx) );
//            }
//        }
//    }
//    else if( i_cat == 4 )
//    {
//        int idxc = i_idx% 4;
//
//        if( idxc == 1 || idxc == 3 )
//            i_mba_xy = t->mb.mb_xy;
//        else if( t->mb.mb_x > 0 )
//            i_mba_xy = t->mb.mb_xy - 1;
//
//        if( idxc == 2 || idxc == 3 )
//            i_mbb_xy = t->mb.mb_xy;
//        else if( t->mb.mb_y > 0 )
//            i_mbb_xy = t->mb.mb_xy - t->mb_stride;
//
//        /* no need to test skip/pcm */
//        if( i_mba_xy >= 0 && (mb_ctxs[i_mba_xy].cbp&0x30) == 0x20 )
//        {
//            i_nza = t->mb.nnz_ref[T264_scan8[16+i_idx] - 1];
//        }
//        if( i_mbb_xy >= 0 && (mb_ctxs[i_mbb_xy].cbp&0x30) == 0x20 )
//        {
//            i_nzb = t->mb.nnz_ref[T264_scan8[16+i_idx] - 8];
//        }
//    }
//
//    if( ( i_mba_xy < 0  && IS_INTRA( t->mb.mb_mode ) ) || i_nza > 0 )
//    {
//        ctx++;
//    }
//    if( ( i_mbb_xy < 0  && IS_INTRA( t->mb.mb_mode ) ) || i_nzb > 0 )
//    {
//        ctx += 2;
//    }
//
//    return 4 * i_cat + ctx;
//}
//
//
//static void block_residual_write_cabac( T264_t *t, int i_ctxBlockCat, int i_idx, int16_t *l, int i_count )
//{
//    static const int significant_coeff_flag_offset[5] = { 0, 15, 29, 44, 47 };
//    static const int last_significant_coeff_flag_offset[5] = { 0, 15, 29, 44, 47 };
//    static const int coeff_abs_level_m1_offset[5] = { 0, 10, 20, 30, 39 };
//
//    int i_coeff_abs_m1[16];
//    int i_coeff_sign[16];
//    int i_coeff = 0;
//    int i_last  = 0;
//
//    int i_abslevel1 = 0;
//    int i_abslevelgt1 = 0;
//
//    int i;
//
//    /* i_ctxBlockCat: 0-> DC 16x16  i_idx = 0
//     *                1-> AC 16x16  i_idx = luma4x4idx
//     *                2-> Luma4x4   i_idx = luma4x4idx
//     *                3-> DC Chroma i_idx = iCbCr
//     *                4-> AC Chroma i_idx = 4 * iCbCr + chroma4x4idx
//     */
//
//    //fprintf( stderr, "l[] = " );
//    for( i = 0; i < i_count; i++ )
//    {
//        //fprintf( stderr, "%d ", l[i] );
//        if( l[i] != 0 )
//        {
//            i_coeff_abs_m1[i_coeff] = abs( l[i] ) - 1;
//            i_coeff_sign[i_coeff]   = ( l[i] < 0 ? 1 : 0);
//            i_coeff++;
//
//            i_last = i;
//        }
//    }
//    //fprintf( stderr, "\n" );
//
//    if( i_coeff == 0 )
//    {
//        /* codec block flag */
//        T264_cabac_encode_decision( &t->cabac,  85 + T264_cabac_mb_cbf_ctxidxinc( t, i_ctxBlockCat, i_idx ), 0 );
//        return;
//    }
//
//    /* block coded */
//    T264_cabac_encode_decision( &t->cabac,  85 + T264_cabac_mb_cbf_ctxidxinc( t, i_ctxBlockCat, i_idx ), 1 );
//    for( i = 0; i < i_count - 1; i++ )
//    {
//        int i_ctxIdxInc;
//
//        i_ctxIdxInc = T264_MIN( i, i_count - 2 );
//
//        if( l[i] != 0 )
//        {
//            T264_cabac_encode_decision( &t->cabac, 105 + significant_coeff_flag_offset[i_ctxBlockCat] + i_ctxIdxInc, 1 );
//            T264_cabac_encode_decision( &t->cabac, 166 + last_significant_coeff_flag_offset[i_ctxBlockCat] + i_ctxIdxInc, i == i_last ? 1 : 0 );
//        }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色播五月激情综合网| 九一九一国产精品| 在线亚洲欧美专区二区| 亚洲欧美日本韩国| 在线看一区二区| 日韩av午夜在线观看| 欧美成人三级在线| 国产一区二区成人久久免费影院| 精品国偷自产国产一区| 国产不卡视频一区| 亚洲久草在线视频| 欧美一区二区不卡视频| 国产精品一区二区在线播放| 国产精品久久久久久久久久久免费看 | 亚洲欧美一区二区久久| 在线精品视频小说1| 精一区二区三区| 亚洲欧洲在线观看av| 欧美群妇大交群的观看方式| 久久精品99国产精品| 国产精品久久看| 欧美一区二区三区免费观看视频| 国产一区二区成人久久免费影院| 国产精品久久久久aaaa樱花| 欧美午夜一区二区三区| 国产在线观看一区二区| 亚洲视频在线一区| 日韩一级免费观看| 97久久超碰国产精品电影| 午夜精品影院在线观看| 久久久久高清精品| 欧美午夜精品一区二区三区| 激情久久久久久久久久久久久久久久| 国产精品久久久久久久岛一牛影视| 欧美主播一区二区三区| 国产91精品露脸国语对白| 亚洲丶国产丶欧美一区二区三区| 国产三级一区二区三区| 欧美精品乱码久久久久久| 日本韩国精品一区二区在线观看| 久久精品99国产精品日本| 亚洲色图一区二区| 久久久www免费人成精品| 日本道免费精品一区二区三区| 精品综合免费视频观看| 亚洲欧美区自拍先锋| 2021国产精品久久精品| 欧美丰满一区二区免费视频| 成人av资源下载| 国产一二三精品| 日韩主播视频在线| 一区二区久久久久| 中文一区在线播放| 2023国产精品自拍| 日韩一区二区三区在线| 91搞黄在线观看| 99国产精品99久久久久久| 精品亚洲porn| 免费观看日韩电影| 天天色综合天天| 亚洲一区免费观看| 自拍偷拍亚洲欧美日韩| 国产午夜精品一区二区三区四区| 欧美一区二区性放荡片| 欧美亚州韩日在线看免费版国语版| 国产91精品入口| 国产凹凸在线观看一区二区| 麻豆国产欧美日韩综合精品二区| 亚洲动漫第一页| 一区二区视频免费在线观看| 中文字幕在线观看一区| 国产精品情趣视频| 中文字幕第一页久久| 久久精品男人天堂av| 久久久久综合网| 国产三级精品三级| 国产欧美精品一区| 日韩国产在线观看| 五月婷婷综合在线| 五月激情综合网| 视频一区在线视频| 男人的天堂久久精品| 麻豆精品在线观看| 国产一区欧美二区| 成人一区二区三区视频在线观看| 国产v综合v亚洲欧| av一本久道久久综合久久鬼色| 成人夜色视频网站在线观看| 成人国产一区二区三区精品| 91免费视频网址| 欧美写真视频网站| 欧美一区二区观看视频| 久久综合久久综合久久综合| 久久久久久97三级| 成人欧美一区二区三区| 一区二区三区日韩欧美| 视频一区视频二区中文| 精品中文字幕一区二区| 国产高清久久久久| 91丨九色丨黑人外教| 欧美四级电影在线观看| 欧美日本精品一区二区三区| 日韩欧美国产综合一区 | 国产日韩精品一区| 国产视频一区在线观看| 自拍偷拍国产精品| 婷婷成人激情在线网| 精彩视频一区二区| 波多野结衣中文字幕一区| 欧美在线视频你懂得| 日韩精品一区二区三区四区| 国产欧美一区二区三区网站| 亚洲精品日韩综合观看成人91| 天堂蜜桃91精品| 成人高清伦理免费影院在线观看| 欧美亚洲综合网| 久久久久久久久久美女| 亚洲另类春色国产| 精品一区二区成人精品| 色婷婷精品久久二区二区蜜臂av| 91精品在线免费| 亚洲欧美综合色| 另类专区欧美蜜桃臀第一页| 91在线视频官网| 久久综合色一综合色88| 亚洲成人动漫在线观看| 99久久亚洲一区二区三区青草 | 精品精品国产高清一毛片一天堂| 亚洲三级久久久| 激情图片小说一区| 欧美三日本三级三级在线播放| 精品久久一区二区三区| 亚洲国产美女搞黄色| 国产999精品久久| 日韩欧美一级精品久久| 亚洲成人免费在线| 91麻豆swag| 国产精品污网站| 国产麻豆精品在线观看| 欧美顶级少妇做爰| 一区二区三区精品在线| 成人一级黄色片| 国产人成亚洲第一网站在线播放| 日韩福利视频导航| 在线观看日韩毛片| 亚洲欧美电影院| caoporn国产精品| 中文字幕不卡一区| 国产精品一级片在线观看| 制服丝袜亚洲色图| 五月激情综合网| 欧美日韩第一区日日骚| 一区二区视频在线看| eeuss鲁片一区二区三区在线看| 精品免费日韩av| 久久av中文字幕片| 欧美一区二区三区在线看| 亚洲地区一二三色| 欧美三级一区二区| 亚洲综合丁香婷婷六月香| 色欧美88888久久久久久影院| 欧美激情综合在线| 高清国产一区二区| 亚洲国产高清aⅴ视频| 国产精品资源在线看| 精品国产91乱码一区二区三区| 日韩经典一区二区| 日韩一二三区视频| 精品亚洲国产成人av制服丝袜| 日韩午夜激情免费电影| 捆绑调教一区二区三区| 精品蜜桃在线看| 国产69精品久久777的优势| 欧美国产禁国产网站cc| 成人av集中营| 一区二区三区四区在线免费观看| 色哟哟亚洲精品| 午夜欧美一区二区三区在线播放| 欧美午夜精品久久久久久孕妇| 亚洲一二三专区| 欧美一级在线免费| 国产一区二区在线影院| 欧美国产精品劲爆| 在线免费观看日本欧美| 日韩精品一二区| www精品美女久久久tv| 粉嫩嫩av羞羞动漫久久久| 亚洲美女在线一区| 91精品免费在线| 国产成人鲁色资源国产91色综| 国产精品久线观看视频| 欧美伊人精品成人久久综合97| 日韩专区在线视频| 欧美国产禁国产网站cc| 在线这里只有精品| 黑人精品欧美一区二区蜜桃| 国产精品超碰97尤物18| 7777女厕盗摄久久久| 国产大片一区二区| 午夜视频在线观看一区二区 |