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

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

?? swscale.c.svn-base

?? ffmpeg最新源碼
?? SVN-BASE
?? 第 1 頁 / 共 5 頁
字號:
                v += chrSrc[j][i + VOFW] * chrFilter[j];            }            uDest[i]= av_clip_uint8(u>>19);            vDest[i]= av_clip_uint8(v>>19);        }}static inline void yuv2nv12XinC(int16_t *lumFilter, int16_t **lumSrc, int lumFilterSize,                                int16_t *chrFilter, int16_t **chrSrc, int chrFilterSize,                                uint8_t *dest, uint8_t *uDest, int dstW, int chrDstW, int dstFormat){    //FIXME Optimize (just quickly writen not opti..)    int i;    for (i=0; i<dstW; i++)    {        int val=1<<18;        int j;        for (j=0; j<lumFilterSize; j++)            val += lumSrc[j][i] * lumFilter[j];        dest[i]= av_clip_uint8(val>>19);    }    if (!uDest)        return;    if (dstFormat == PIX_FMT_NV12)        for (i=0; i<chrDstW; i++)        {            int u=1<<18;            int v=1<<18;            int j;            for (j=0; j<chrFilterSize; j++)            {                u += chrSrc[j][i] * chrFilter[j];                v += chrSrc[j][i + VOFW] * chrFilter[j];            }            uDest[2*i]= av_clip_uint8(u>>19);            uDest[2*i+1]= av_clip_uint8(v>>19);        }    else        for (i=0; i<chrDstW; i++)        {            int u=1<<18;            int v=1<<18;            int j;            for (j=0; j<chrFilterSize; j++)            {                u += chrSrc[j][i] * chrFilter[j];                v += chrSrc[j][i + VOFW] * chrFilter[j];            }            uDest[2*i]= av_clip_uint8(v>>19);            uDest[2*i+1]= av_clip_uint8(u>>19);        }}#define YSCALE_YUV_2_PACKEDX_C(type) \    for (i=0; i<(dstW>>1); i++){\        int j;\        int Y1 = 1<<18;\        int Y2 = 1<<18;\        int U  = 1<<18;\        int V  = 1<<18;\        type av_unused *r, *b, *g;\        const int i2= 2*i;\        \        for (j=0; j<lumFilterSize; j++)\        {\            Y1 += lumSrc[j][i2] * lumFilter[j];\            Y2 += lumSrc[j][i2+1] * lumFilter[j];\        }\        for (j=0; j<chrFilterSize; j++)\        {\            U += chrSrc[j][i] * chrFilter[j];\            V += chrSrc[j][i+VOFW] * chrFilter[j];\        }\        Y1>>=19;\        Y2>>=19;\        U >>=19;\        V >>=19;\        if ((Y1|Y2|U|V)&256)\        {\            if (Y1>255)   Y1=255; \            else if (Y1<0)Y1=0;   \            if (Y2>255)   Y2=255; \            else if (Y2<0)Y2=0;   \            if (U>255)    U=255;  \            else if (U<0) U=0;    \            if (V>255)    V=255;  \            else if (V<0) V=0;    \        }#define YSCALE_YUV_2_RGBX_C(type) \    YSCALE_YUV_2_PACKEDX_C(type)  \    r = (type *)c->table_rV[V];   \    g = (type *)(c->table_gU[U] + c->table_gV[V]); \    b = (type *)c->table_bU[U];   \#define YSCALE_YUV_2_PACKED2_C   \    for (i=0; i<(dstW>>1); i++){ \        const int i2= 2*i;       \        int Y1= (buf0[i2  ]*yalpha1+buf1[i2  ]*yalpha)>>19;           \        int Y2= (buf0[i2+1]*yalpha1+buf1[i2+1]*yalpha)>>19;           \        int U= (uvbuf0[i     ]*uvalpha1+uvbuf1[i     ]*uvalpha)>>19;  \        int V= (uvbuf0[i+VOFW]*uvalpha1+uvbuf1[i+VOFW]*uvalpha)>>19;  \#define YSCALE_YUV_2_RGB2_C(type) \    YSCALE_YUV_2_PACKED2_C\    type *r, *b, *g;\    r = (type *)c->table_rV[V];\    g = (type *)(c->table_gU[U] + c->table_gV[V]);\    b = (type *)c->table_bU[U];\#define YSCALE_YUV_2_PACKED1_C \    for (i=0; i<(dstW>>1); i++){\        const int i2= 2*i;\        int Y1= buf0[i2  ]>>7;\        int Y2= buf0[i2+1]>>7;\        int U= (uvbuf1[i     ])>>7;\        int V= (uvbuf1[i+VOFW])>>7;\#define YSCALE_YUV_2_RGB1_C(type) \    YSCALE_YUV_2_PACKED1_C\    type *r, *b, *g;\    r = (type *)c->table_rV[V];\    g = (type *)(c->table_gU[U] + c->table_gV[V]);\    b = (type *)c->table_bU[U];\#define YSCALE_YUV_2_PACKED1B_C \    for (i=0; i<(dstW>>1); i++){\        const int i2= 2*i;\        int Y1= buf0[i2  ]>>7;\        int Y2= buf0[i2+1]>>7;\        int U= (uvbuf0[i     ] + uvbuf1[i     ])>>8;\        int V= (uvbuf0[i+VOFW] + uvbuf1[i+VOFW])>>8;\#define YSCALE_YUV_2_RGB1B_C(type) \    YSCALE_YUV_2_PACKED1B_C\    type *r, *b, *g;\    r = (type *)c->table_rV[V];\    g = (type *)(c->table_gU[U] + c->table_gV[V]);\    b = (type *)c->table_bU[U];\#define YSCALE_YUV_2_ANYRGB_C(func, func2)\    switch(c->dstFormat)\    {\    case PIX_FMT_RGB32:\    case PIX_FMT_BGR32:\        func(uint32_t)\            ((uint32_t*)dest)[i2+0]= r[Y1] + g[Y1] + b[Y1];\            ((uint32_t*)dest)[i2+1]= r[Y2] + g[Y2] + b[Y2];\        }                \        break;\    case PIX_FMT_RGB24:\        func(uint8_t)\            ((uint8_t*)dest)[0]= r[Y1];\            ((uint8_t*)dest)[1]= g[Y1];\            ((uint8_t*)dest)[2]= b[Y1];\            ((uint8_t*)dest)[3]= r[Y2];\            ((uint8_t*)dest)[4]= g[Y2];\            ((uint8_t*)dest)[5]= b[Y2];\            dest+=6;\        }\        break;\    case PIX_FMT_BGR24:\        func(uint8_t)\            ((uint8_t*)dest)[0]= b[Y1];\            ((uint8_t*)dest)[1]= g[Y1];\            ((uint8_t*)dest)[2]= r[Y1];\            ((uint8_t*)dest)[3]= b[Y2];\            ((uint8_t*)dest)[4]= g[Y2];\            ((uint8_t*)dest)[5]= r[Y2];\            dest+=6;\        }\        break;\    case PIX_FMT_RGB565:\    case PIX_FMT_BGR565:\        {\            const int dr1= dither_2x2_8[y&1    ][0];\            const int dg1= dither_2x2_4[y&1    ][0];\            const int db1= dither_2x2_8[(y&1)^1][0];\            const int dr2= dither_2x2_8[y&1    ][1];\            const int dg2= dither_2x2_4[y&1    ][1];\            const int db2= dither_2x2_8[(y&1)^1][1];\            func(uint16_t)\                ((uint16_t*)dest)[i2+0]= r[Y1+dr1] + g[Y1+dg1] + b[Y1+db1];\                ((uint16_t*)dest)[i2+1]= r[Y2+dr2] + g[Y2+dg2] + b[Y2+db2];\            }\        }\        break;\    case PIX_FMT_RGB555:\    case PIX_FMT_BGR555:\        {\            const int dr1= dither_2x2_8[y&1    ][0];\            const int dg1= dither_2x2_8[y&1    ][1];\            const int db1= dither_2x2_8[(y&1)^1][0];\            const int dr2= dither_2x2_8[y&1    ][1];\            const int dg2= dither_2x2_8[y&1    ][0];\            const int db2= dither_2x2_8[(y&1)^1][1];\            func(uint16_t)\                ((uint16_t*)dest)[i2+0]= r[Y1+dr1] + g[Y1+dg1] + b[Y1+db1];\                ((uint16_t*)dest)[i2+1]= r[Y2+dr2] + g[Y2+dg2] + b[Y2+db2];\            }\        }\        break;\    case PIX_FMT_RGB8:\    case PIX_FMT_BGR8:\        {\            const uint8_t * const d64= dither_8x8_73[y&7];\            const uint8_t * const d32= dither_8x8_32[y&7];\            func(uint8_t)\                ((uint8_t*)dest)[i2+0]= r[Y1+d32[(i2+0)&7]] + g[Y1+d32[(i2+0)&7]] + b[Y1+d64[(i2+0)&7]];\                ((uint8_t*)dest)[i2+1]= r[Y2+d32[(i2+1)&7]] + g[Y2+d32[(i2+1)&7]] + b[Y2+d64[(i2+1)&7]];\            }\        }\        break;\    case PIX_FMT_RGB4:\    case PIX_FMT_BGR4:\        {\            const uint8_t * const d64= dither_8x8_73 [y&7];\            const uint8_t * const d128=dither_8x8_220[y&7];\            func(uint8_t)\                ((uint8_t*)dest)[i]= r[Y1+d128[(i2+0)&7]] + g[Y1+d64[(i2+0)&7]] + b[Y1+d128[(i2+0)&7]]\                                 + ((r[Y2+d128[(i2+1)&7]] + g[Y2+d64[(i2+1)&7]] + b[Y2+d128[(i2+1)&7]])<<4);\            }\        }\        break;\    case PIX_FMT_RGB4_BYTE:\    case PIX_FMT_BGR4_BYTE:\        {\            const uint8_t * const d64= dither_8x8_73 [y&7];\            const uint8_t * const d128=dither_8x8_220[y&7];\            func(uint8_t)\                ((uint8_t*)dest)[i2+0]= r[Y1+d128[(i2+0)&7]] + g[Y1+d64[(i2+0)&7]] + b[Y1+d128[(i2+0)&7]];\                ((uint8_t*)dest)[i2+1]= r[Y2+d128[(i2+1)&7]] + g[Y2+d64[(i2+1)&7]] + b[Y2+d128[(i2+1)&7]];\            }\        }\        break;\    case PIX_FMT_MONOBLACK:\        {\            const uint8_t * const d128=dither_8x8_220[y&7];\            uint8_t *g= c->table_gU[128] + c->table_gV[128];\            for (i=0; i<dstW-7; i+=8){\                int acc;\                acc =       g[((buf0[i  ]*yalpha1+buf1[i  ]*yalpha)>>19) + d128[0]];\                acc+= acc + g[((buf0[i+1]*yalpha1+buf1[i+1]*yalpha)>>19) + d128[1]];\                acc+= acc + g[((buf0[i+2]*yalpha1+buf1[i+2]*yalpha)>>19) + d128[2]];\                acc+= acc + g[((buf0[i+3]*yalpha1+buf1[i+3]*yalpha)>>19) + d128[3]];\                acc+= acc + g[((buf0[i+4]*yalpha1+buf1[i+4]*yalpha)>>19) + d128[4]];\                acc+= acc + g[((buf0[i+5]*yalpha1+buf1[i+5]*yalpha)>>19) + d128[5]];\                acc+= acc + g[((buf0[i+6]*yalpha1+buf1[i+6]*yalpha)>>19) + d128[6]];\                acc+= acc + g[((buf0[i+7]*yalpha1+buf1[i+7]*yalpha)>>19) + d128[7]];\                ((uint8_t*)dest)[0]= acc;\                dest++;\            }\\/*\((uint8_t*)dest)-= dstW>>4;\{\            int acc=0;\            int left=0;\            static int top[1024];\            static int last_new[1024][1024];\            static int last_in3[1024][1024];\            static int drift[1024][1024];\            int topLeft=0;\            int shift=0;\            int count=0;\            const uint8_t * const d128=dither_8x8_220[y&7];\            int error_new=0;\            int error_in3=0;\            int f=0;\            \            for (i=dstW>>1; i<dstW; i++){\                int in= ((buf0[i  ]*yalpha1+buf1[i  ]*yalpha)>>19);\                int in2 = (76309 * (in - 16) + 32768) >> 16;\                int in3 = (in2 < 0) ? 0 : ((in2 > 255) ? 255 : in2);\                int old= (left*7 + topLeft + top[i]*5 + top[i+1]*3)/20 + in3\                         + (last_new[y][i] - in3)*f/256;\                int new= old> 128 ? 255 : 0;\\                error_new+= FFABS(last_new[y][i] - new);\                error_in3+= FFABS(last_in3[y][i] - in3);\                f= error_new - error_in3*4;\                if (f<0) f=0;\                if (f>256) f=256;\\                topLeft= top[i];\                left= top[i]= old - new;\                last_new[y][i]= new;\                last_in3[y][i]= in3;\\                acc+= acc + (new&1);\                if ((i&7)==6){\                    ((uint8_t*)dest)[0]= acc;\                    ((uint8_t*)dest)++;\                }\            }\}\*/\        }\        break;\    case PIX_FMT_YUYV422:\        func2\            ((uint8_t*)dest)[2*i2+0]= Y1;\            ((uint8_t*)dest)[2*i2+1]= U;\            ((uint8_t*)dest)[2*i2+2]= Y2;\            ((uint8_t*)dest)[2*i2+3]= V;\        }                \        break;\    case PIX_FMT_UYVY422:\        func2\            ((uint8_t*)dest)[2*i2+0]= U;\            ((uint8_t*)dest)[2*i2+1]= Y1;\            ((uint8_t*)dest)[2*i2+2]= V;\            ((uint8_t*)dest)[2*i2+3]= Y2;\        }                \        break;\    }\static inline void yuv2packedXinC(SwsContext *c, int16_t *lumFilter, int16_t **lumSrc, int lumFilterSize,                                  int16_t *chrFilter, int16_t **chrSrc, int chrFilterSize,                                  uint8_t *dest, int dstW, int y){    int i;    switch(c->dstFormat)    {    case PIX_FMT_BGR32:    case PIX_FMT_RGB32:        YSCALE_YUV_2_RGBX_C(uint32_t)            ((uint32_t*)dest)[i2+0]= r[Y1] + g[Y1] + b[Y1];            ((uint32_t*)dest)[i2+1]= r[Y2] + g[Y2] + b[Y2];        }        break;    case PIX_FMT_RGB24:        YSCALE_YUV_2_RGBX_C(uint8_t)            ((uint8_t*)dest)[0]= r[Y1];            ((uint8_t*)dest)[1]= g[Y1];            ((uint8_t*)dest)[2]= b[Y1];            ((uint8_t*)dest)[3]= r[Y2];            ((uint8_t*)dest)[4]= g[Y2];            ((uint8_t*)dest)[5]= b[Y2];            dest+=6;        }        break;    case PIX_FMT_BGR24:        YSCALE_YUV_2_RGBX_C(uint8_t)            ((uint8_t*)dest)[0]= b[Y1];            ((uint8_t*)dest)[1]= g[Y1];            ((uint8_t*)dest)[2]= r[Y1];            ((uint8_t*)dest)[3]= b[Y2];            ((uint8_t*)dest)[4]= g[Y2];            ((uint8_t*)dest)[5]= r[Y2];            dest+=6;        }        break;    case PIX_FMT_RGB565:    case PIX_FMT_BGR565:        {            const int dr1= dither_2x2_8[y&1    ][0];            const int dg1= dither_2x2_4[y&1    ][0];            const int db1= dither_2x2_8[(y&1)^1][0];            const int dr2= dither_2x2_8[y&1    ][1];            const int dg2= dither_2x2_4[y&1    ][1];            const int db2= dither_2x2_8[(y&1)^1][1];            YSCALE_YUV_2_RGBX_C(uint16_t)                ((uint16_t*)dest)[i2+0]= r[Y1+dr1] + g[Y1+dg1] + b[Y1+db1];                ((uint16_t*)dest)[i2+1]= r[Y2+dr2] + g[Y2+dg2] + b[Y2+db2];            }        }        break;    case PIX_FMT_RGB555:    case PIX_FMT_BGR555:        {            const int dr1= dither_2x2_8[y&1    ][0];            const int dg1= dither_2x2_8[y&1    ][1];            const int db1= dither_2x2_8[(y&1)^1][0];            const int dr2= dither_2x2_8[y&1    ][1];            const int dg2= dither_2x2_8[y&1    ][0];

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品免费人成网站| 欧美卡1卡2卡| 韩国一区二区在线观看| 在线观看日韩一区| 美女免费视频一区二区| 久久久久久久久伊人| 亚洲一级二级三级在线免费观看| 欧美精品日韩综合在线| www.欧美日韩国产在线| 精品1区2区在线观看| 成人动漫一区二区三区| 欧美丝袜丝nylons| 99精品欧美一区二区三区小说| 国产综合成人久久大片91| 亚洲一区二区三区视频在线| 欧美高清视频一二三区| 91精选在线观看| 日韩精品一区二区三区在线| 亚洲国产精华液网站w| 亚洲色图色小说| 91在线高清观看| 欧美激情一区二区三区全黄| 一区二区三区四区激情| 粗大黑人巨茎大战欧美成人| 粉嫩一区二区三区在线看| 色激情天天射综合网| 日韩一级完整毛片| 亚洲免费看黄网站| 亚洲一区二区三区不卡国产欧美| 午夜不卡av在线| 亚洲高清在线精品| www.亚洲人| 91精品免费观看| 精品处破学生在线二十三| 欧美高清激情brazzers| 欧美一区2区视频在线观看| 久久久91精品国产一区二区三区| 蜜臀av国产精品久久久久| 欧美在线观看18| 欧美中文字幕久久| wwwwww.欧美系列| 粉嫩高潮美女一区二区三区| 日韩三级中文字幕| 亚洲欧美电影院| 国产91精品一区二区麻豆网站| 99久久综合99久久综合网站| 日韩一区二区三| 国产成人一区在线| 日韩毛片一二三区| 91啦中文在线观看| 男人的天堂久久精品| 欧美国产禁国产网站cc| 日韩欧美资源站| 欧美在线不卡视频| 99综合影院在线| 国产九色sp调教91| 蜜臀99久久精品久久久久久软件| 又紧又大又爽精品一区二区| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 国产精品理伦片| 精品日韩99亚洲| 欧美日韩第一区日日骚| 色综合天天做天天爱| 成人高清伦理免费影院在线观看| 狠狠色狠狠色综合| 麻豆久久久久久久| 热久久免费视频| 免费亚洲电影在线| 美女精品自拍一二三四| 麻豆精品在线看| 男人的j进女人的j一区| 免费观看日韩电影| 一级特黄大欧美久久久| 亚洲色图色小说| 中文字幕视频一区| 国产精品伦一区| 国产精品入口麻豆原神| 国产日韩v精品一区二区| 久久综合成人精品亚洲另类欧美| 91精品在线免费| 欧美福利电影网| 欧美一区在线视频| 精品人伦一区二区色婷婷| 日韩亚洲欧美成人一区| 日韩免费观看2025年上映的电影| 日韩精品资源二区在线| 精品国产凹凸成av人导航| 久久久国产精品不卡| 国产精品不卡在线观看| 国产精品丝袜久久久久久app| 国产欧美日韩在线看| 欧美国产日本视频| 亚洲欧美激情插| 亚洲成人av一区二区| 裸体歌舞表演一区二区| 国产激情一区二区三区| 色综合咪咪久久| 欧美在线免费播放| 欧美一区二区视频在线观看 | www.在线成人| 在线观看日韩毛片| 欧美精品一卡二卡| 国产亚洲精品7777| 亚洲综合一区二区三区| 日韩二区三区在线观看| 国产精品一区2区| 在线免费观看成人短视频| 4438x成人网最大色成网站| 久久一二三国产| 一区二区在线看| 免费精品99久久国产综合精品| 国产成a人无v码亚洲福利| 91高清视频在线| 精品国产成人系列| 一区二区三区国产精华| 蜜桃av一区二区在线观看| 不卡区在线中文字幕| 欧美一级日韩免费不卡| 国产精品日日摸夜夜摸av| 免费观看久久久4p| 91亚洲精品久久久蜜桃| 日韩视频不卡中文| 亚洲色图.com| 精品亚洲国产成人av制服丝袜| 91麻豆精品视频| 日韩一二三四区| 一区二区三区欧美| 国产一区二区三区国产| 欧美三级韩国三级日本三斤| 欧美激情一区二区三区| 视频在线观看国产精品| 99久久免费国产| 久久综合九色综合欧美98| 亚洲一区二区在线免费看| 国产精品18久久久久久vr| 欧美一区二区视频网站| 亚洲免费观看在线视频| 国产福利91精品一区二区三区| 欧美日本一区二区| 一区二区三区免费| 成人黄色777网| 久久九九全国免费| 裸体健美xxxx欧美裸体表演| 欧美亚洲另类激情小说| 国产精品素人视频| 国产二区国产一区在线观看| 欧美大片拔萝卜| 日本伊人午夜精品| 欧美日韩性生活| 一区二区三区电影在线播| 成人免费不卡视频| 国产日韩欧美麻豆| 国产九色sp调教91| 精品国产电影一区二区| 久久av老司机精品网站导航| 欧美狂野另类xxxxoooo| 一区二区三区在线视频观看| 国产99一区视频免费| 久久这里只精品最新地址| 精品伊人久久久久7777人| 5566中文字幕一区二区电影 | 日韩久久精品一区| 蜜臀av在线播放一区二区三区| 欧美日韩一区二区三区四区| 亚洲综合丁香婷婷六月香| 精品免费一区二区三区| 亚洲综合丝袜美腿| 欧美性xxxxx极品少妇| 一区二区三区精品| 欧美色网站导航| 亚洲va在线va天堂| 欧美丰满嫩嫩电影| 免费观看一级欧美片| 日韩免费看的电影| 国产91丝袜在线观看| 国产精品欧美久久久久无广告| 成人综合在线视频| 中文字幕一区在线观看视频| 不卡影院免费观看| 一区二区三区毛片| 制服丝袜亚洲色图| 精品一区二区三区在线观看国产| 久久久午夜电影| 91在线观看高清| 天天综合色天天| 久久久亚洲综合| 暴力调教一区二区三区| 一区二区三区四区在线播放| 91麻豆精品国产91久久久资源速度| 青草国产精品久久久久久| 精品国产一区久久| 不卡影院免费观看| 亚洲18女电影在线观看| 日韩精品影音先锋| 99国产麻豆精品| 免费久久99精品国产| 国产精品私人影院| 欧美精品在线一区二区| 国产成人午夜99999| 亚洲国产人成综合网站|