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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? quantize4_mmx.asm

?? xvid MPEG-4 編解碼源代碼
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
;/*****************************************************************************; *; *  XVID MPEG-4 VIDEO CODEC; *  mmx optimized MPEG quantization/dequantization             ; *; *  Copyright(C) 2002 Peter Ross <pross@xvid.org>; *  Copyright(C) 2002 Michael Militzer <michael@xvid.org>; *  Copyright(C) 2002 Pascal Massimino <skal@planet-d.net>; *; *  This file is part of XviD, a free MPEG-4 video encoder/decoder; *; *  XviD is free software; you can redistribute it and/or modify it; *  under the terms of the GNU General Public License as published by; *  the Free Software Foundation; either version 2 of the License, or; *  (at your option) any later version.; *; *  This program is distributed in the hope that it will be useful,; *  but WITHOUT ANY WARRANTY; without even the implied warranty of; *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the; *  GNU General Public License for more details.; *; *  You should have received a copy of the GNU General Public License; *  along with this program; if not, write to the Free Software; *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA; *; *  Under section 8 of the GNU General Public License, the copyright; *  holders of XVID explicitly forbid distribution in the following; *  countries:; *; *    - Japan; *    - United States of America; *; *  Linking XviD statically or dynamically with other modules is making a; *  combined work based on XviD.  Thus, the terms and conditions of the; *  GNU General Public License cover the whole combination.; *; *  As a special exception, the copyright holders of XviD give you; *  permission to link XviD with independent modules that communicate with; *  XviD solely through the VFW1.1 and DShow interfaces, regardless of the; *  license terms of these independent modules, and to copy and distribute; *  the resulting combined work under terms of your choice, provided that; *  every copy of the combined work is accompanied by a complete copy of; *  the source code of XviD (the version of XviD used to produce the; *  combined work), being distributed under the terms of the GNU General; *  Public License plus this exception.  An independent module is a module; *  which is not derived from or based on XviD.; *; *  Note that people who make modified versions of XviD are not obligated; *  to grant this special exception for their modified versions; it is; *  their choice whether to do so.  The GNU General Public License gives; *  permission to release a modified version without this exception; this; *  exception also makes it possible to release a modified version which; *  carries forward this exception.; *; * $Id: quantize4_mmx.asm,v 1.7 2002/11/17 00:41:20 edgomez Exp $; *; *************************************************************************/; data/text alignment%define ALIGN 8%define SATURATEbits 32section .data%macro cglobal 1 	%ifdef PREFIX		global _%1 		%define %1 _%1	%else		global %1	%endif%endmacro%macro cextern 1 	%ifdef PREFIX		extern _%1 		%define %1 _%1	%else		extern %1	%endif%endmacrommx_one times 4	dw	 1;===========================================================================;; divide by 2Q table ;;===========================================================================%macro MMX_DIV  1times 4 dw  (1 << 17) / (%1 * 2) + 1%endmacroalign ALIGNmmx_div		MMX_DIV 1		MMX_DIV 2		MMX_DIV 3		MMX_DIV 4		MMX_DIV 5		MMX_DIV 6		MMX_DIV 7		MMX_DIV 8		MMX_DIV 9		MMX_DIV 10		MMX_DIV 11		MMX_DIV 12		MMX_DIV 13		MMX_DIV 14		MMX_DIV 15		MMX_DIV 16		MMX_DIV 17		MMX_DIV 18		MMX_DIV 19		MMX_DIV 20		MMX_DIV 21		MMX_DIV 22		MMX_DIV 23		MMX_DIV 24		MMX_DIV 25		MMX_DIV 26		MMX_DIV 27		MMX_DIV 28		MMX_DIV 29		MMX_DIV 30		MMX_DIV 31;===========================================================================;; intra matrix ;;===========================================================================cextern intra_matrixcextern intra_matrix_fix;===========================================================================;; inter matrix;;===========================================================================cextern inter_matrixcextern inter_matrix_fix%define VM18P 3%define VM18Q 4;===========================================================================;; quantd table ;;===========================================================================%macro MMX_QUANTD  1times 4 dw ((VM18P*%1) + (VM18Q/2)) / VM18Q%endmacroquantd		MMX_QUANTD 1 		MMX_QUANTD 2 		MMX_QUANTD 3 		MMX_QUANTD 4 		MMX_QUANTD 5 		MMX_QUANTD 6 		MMX_QUANTD 7 		MMX_QUANTD 8 		MMX_QUANTD 9 		MMX_QUANTD 10 		MMX_QUANTD 11		MMX_QUANTD 12		MMX_QUANTD 13		MMX_QUANTD 14		MMX_QUANTD 15		MMX_QUANTD 16		MMX_QUANTD 17		MMX_QUANTD 18		MMX_QUANTD 19		MMX_QUANTD 20		MMX_QUANTD 21		MMX_QUANTD 22		MMX_QUANTD 23		MMX_QUANTD 24		MMX_QUANTD 25		MMX_QUANTD 26		MMX_QUANTD 27		MMX_QUANTD 28		MMX_QUANTD 29		MMX_QUANTD 30		MMX_QUANTD 31;===========================================================================;; multiple by 2Q table;;===========================================================================%macro MMX_MUL_QUANT  1times 4   dw  %1%endmacrommx_mul_quant	MMX_MUL_QUANT 1	MMX_MUL_QUANT 2	MMX_MUL_QUANT 3	MMX_MUL_QUANT 4	MMX_MUL_QUANT 5	MMX_MUL_QUANT 6	MMX_MUL_QUANT 7	MMX_MUL_QUANT 8	MMX_MUL_QUANT 9	MMX_MUL_QUANT 10	MMX_MUL_QUANT 11	MMX_MUL_QUANT 12	MMX_MUL_QUANT 13	MMX_MUL_QUANT 14	MMX_MUL_QUANT 15	MMX_MUL_QUANT 16	MMX_MUL_QUANT 17	MMX_MUL_QUANT 18	MMX_MUL_QUANT 19	MMX_MUL_QUANT 20	MMX_MUL_QUANT 21	MMX_MUL_QUANT 22	MMX_MUL_QUANT 23	MMX_MUL_QUANT 24	MMX_MUL_QUANT 25	MMX_MUL_QUANT 26	MMX_MUL_QUANT 27	MMX_MUL_QUANT 28	MMX_MUL_QUANT 29	MMX_MUL_QUANT 30	MMX_MUL_QUANT 31;===========================================================================;; saturation limits ;;===========================================================================align 16mmx_32767_minus_2047				times 4 dw (32767-2047)mmx_32768_minus_2048				times 4 dw (32768-2048)mmx_2047 times 4 dw 2047mmx_minus_2048 times 4 dw (-2048)zero times 4 dw 0section .text;===========================================================================;; void quant_intra4_mmx(int16_t * coeff, ;					const int16_t const * data,;					const uint32_t quant,;					const uint32_t dcscalar);;;===========================================================================align ALIGNcglobal quant4_intra_mmxquant4_intra_mmx		push	ecx		push	esi		push	edi		mov	edi, [esp + 12 + 4]		; coeff		mov	esi, [esp + 12 + 8]		; data		mov	eax, [esp + 12 + 12]	; quant		movq    mm5, [quantd + eax * 8 - 8] ; quantd -> mm5		xor ecx, ecx		cmp	al, 1		jz	near .q1loop		cmp	al, 2		jz	near .q2loop		movq	mm7, [mmx_div + eax * 8 - 8] ; multipliers[quant] -> mm7		 align ALIGN.loop		movq	mm0, [esi + 8*ecx]		; mm0 = [1st]		movq	mm3, [esi + 8*ecx + 8]	; 				pxor	mm1, mm1		; mm1 = 0		pxor	mm4, mm4				pcmpgtw	mm1, mm0		; mm1 = (0 > mm0)		pcmpgtw	mm4, mm3				pxor	mm0, mm1		; mm0 = |mm0|		pxor	mm3, mm4		;		psubw	mm0, mm1		; displace		psubw	mm3, mm4		;		psllw   mm0, 4			; level << 4		psllw   mm3, 4			;				movq    mm2, [intra_matrix + 8*ecx]		psrlw   mm2, 1			; intra_matrix[i]>>1		paddw   mm0, mm2						movq    mm2, [intra_matrix_fix + ecx*8]		pmulhw  mm0, mm2		; (level<<4 + intra_matrix[i]>>1) / intra_matrix[i]		movq    mm2, [intra_matrix + 8*ecx + 8]		psrlw   mm2, 1		paddw   mm3, mm2		movq    mm2, [intra_matrix_fix + ecx*8 + 8]		pmulhw  mm3, mm2	    paddw   mm0, mm5		; + quantd		paddw   mm3, mm5		pmulhw	mm0, mm7		; mm0 = (mm0 / 2Q) >> 16		pmulhw	mm3, mm7		;		psrlw   mm0, 1			; additional shift by 1 => 16 + 1 = 17		psrlw   mm3, 1				pxor	mm0, mm1		; mm0 *= sign(mm0)		pxor	mm3, mm4		;		psubw	mm0, mm1		; undisplace		psubw	mm3, mm4		;		movq	[edi + 8*ecx], mm0		movq	[edi + 8*ecx + 8], mm3				add ecx,2		cmp ecx,16		jnz 	near .loop .done			; caclulate  data[0] // (int32_t)dcscalar)		mov 	ecx, [esp + 12 + 16]	; dcscalar		mov 	edx, ecx		movsx 	eax, word [esi]	; data[0]		shr 	edx, 1			; edx = dcscalar /2		cmp		eax, 0		jg		.gtzero		sub		eax, edx		jmp		short .mul.gtzero		add		eax, edx.mul		cdq 				; expand eax -> edx:eax		idiv	ecx			; eax = edx:eax / dcscalar				mov	[edi], ax		; coeff[0] = ax		pop	edi		pop	esi		pop	ecx		ret				align ALIGN.q1loop		movq	mm0, [esi + 8*ecx]		; mm0 = [1st]		movq	mm3, [esi + 8*ecx + 8]	; 		pxor	mm1, mm1		; mm1 = 0		pxor	mm4, mm4		;		pcmpgtw	mm1, mm0		; mm1 = (0 > mm0)		pcmpgtw	mm4, mm3		;		 		pxor	mm0, mm1		; mm0 = |mm0|		pxor	mm3, mm4		; 		psubw	mm0, mm1		; displace		psubw	mm3, mm4		; 		psllw   mm0, 4		psllw   mm3, 4				movq    mm2, [intra_matrix + 8*ecx]		psrlw   mm2, 1		paddw   mm0, mm2				movq    mm2, [intra_matrix_fix + ecx*8]		pmulhw  mm0, mm2		; (level<<4 + intra_matrix[i]>>1) / intra_matrix[i]		movq    mm2, [intra_matrix + 8*ecx + 8]		psrlw   mm2, 1		paddw   mm3, mm2		movq    mm2, [intra_matrix_fix + ecx*8 + 8]		pmulhw  mm3, mm2        paddw   mm0, mm5		paddw   mm3, mm5		psrlw	mm0, 1			; mm0 >>= 1   (/2)		psrlw	mm3, 1			;				pxor	mm0, mm1		; mm0 *= sign(mm0)		pxor	mm3, mm4        ;		psubw	mm0, mm1		; undisplace		psubw	mm3, mm4		;				movq	[edi + 8*ecx], mm0		movq	[edi + 8*ecx + 8], mm3		add ecx,2		cmp ecx,16		jnz	near .q1loop		jmp	near .donealign ALIGN.q2loop		movq	mm0, [esi + 8*ecx]		; mm0 = [1st]		movq	mm3, [esi + 8*ecx + 8]	; 		pxor	mm1, mm1		; mm1 = 0		pxor	mm4, mm4		;		pcmpgtw	mm1, mm0		; mm1 = (0 > mm0)		pcmpgtw	mm4, mm3		;		 		pxor	mm0, mm1		; mm0 = |mm0|		pxor	mm3, mm4		; 		psubw	mm0, mm1		; displace		psubw	mm3, mm4		; 		psllw   mm0, 4		psllw   mm3, 4				movq    mm2, [intra_matrix + 8*ecx]		psrlw   mm2, 1		paddw   mm0, mm2				movq    mm2, [intra_matrix_fix + ecx*8]		pmulhw  mm0, mm2		; (level<<4 + intra_matrix[i]>>1) / intra_matrix[i]		movq    mm2, [intra_matrix + 8*ecx + 8]		psrlw   mm2, 1		paddw   mm3, mm2		movq    mm2, [intra_matrix_fix + ecx*8 + 8]		pmulhw  mm3, mm2        paddw   mm0, mm5

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品亚洲成a人| 中文字幕亚洲区| 免费久久精品视频| 欧美久久久一区| 五月天国产精品| 5858s免费视频成人| 久久精品国产精品亚洲综合| 精品国产一区二区亚洲人成毛片| 免费高清不卡av| 26uuu精品一区二区在线观看| 国产精品99久久久久久有的能看 | 国产尤物一区二区在线| 久久伊人中文字幕| caoporen国产精品视频| 亚洲精品国产成人久久av盗摄 | 日本最新不卡在线| 日韩精品一区二区三区中文精品| 国产精品乡下勾搭老头1| 17c精品麻豆一区二区免费| 91丨porny丨在线| 爽好久久久欧美精品| 精品久久久久久久久久久久久久久久久 | 一本一道久久a久久精品 | 韩国成人在线视频| 国产精品久久一卡二卡| 欧美区在线观看| 国产成人小视频| 一区二区三区日韩欧美| 精品久久一区二区| 91视视频在线直接观看在线看网页在线看| 亚洲制服丝袜av| 国产网红主播福利一区二区| 日本精品一区二区三区高清| 麻豆成人久久精品二区三区小说| 国产精品国产三级国产aⅴ原创| 911精品产国品一二三产区| 成人av在线一区二区| 蜜臀av一区二区在线免费观看 | 国产精品不卡在线| 欧美一卡在线观看| 一本一道久久a久久精品| 国内精品伊人久久久久av影院 | 欧美一区二区二区| 色婷婷精品大在线视频| 国产一区二区三区四区在线观看| 亚洲精品第1页| 欧美极品美女视频| 精品国产免费人成在线观看| 欧美专区在线观看一区| 高清在线不卡av| 久久不见久久见免费视频1| 亚洲午夜视频在线观看| 综合久久久久综合| 久久精品在线免费观看| 欧美不卡一区二区三区四区| 欧美日韩在线三级| 一本久久a久久精品亚洲| 懂色中文一区二区在线播放| 免费成人在线网站| 有码一区二区三区| 亚洲视频一区在线| 中文av一区特黄| 国产亚洲成年网址在线观看| 日韩欧美的一区二区| 欧美日韩精品一区视频| 色噜噜狠狠色综合中国| av一区二区三区在线| 国产成人a级片| 极品少妇xxxx精品少妇| 美女一区二区三区| 日日噜噜夜夜狠狠视频欧美人| 一区二区三区四区精品在线视频| 国产精品高潮呻吟| 国产精品萝li| 中文字幕中文乱码欧美一区二区| 国产午夜精品美女毛片视频| 国产欧美一区二区三区在线老狼| 久久美女艺术照精彩视频福利播放| 精品国产乱码久久久久久图片| 欧美乱妇23p| 欧美一区二区精品在线| 日韩欧美在线不卡| 精品国产亚洲在线| 久久久久国产精品厨房| 国产精品水嫩水嫩| 亚洲男同1069视频| 亚洲无人区一区| 免费成人结看片| 国内精品视频666| 国产成人小视频| 91日韩精品一区| 欧美日韩免费观看一区三区| 欧美日韩高清一区二区三区| 日韩精品一区二区三区视频在线观看 | 久久精品亚洲国产奇米99| 欧美精品一区二区在线播放| 精品国产不卡一区二区三区| 国产亚洲va综合人人澡精品| 国产日韩精品一区二区浪潮av| 国产精品传媒入口麻豆| 一区二区欧美精品| 青草av.久久免费一区| 精品一区二区三区免费观看| 国产成人在线免费观看| 在线精品亚洲一区二区不卡| 欧美一区二区福利视频| 欧美激情一二三区| 五月婷婷久久丁香| 久久国产精品72免费观看| 成人av网在线| 4438x亚洲最大成人网| 久久精品亚洲国产奇米99| 艳妇臀荡乳欲伦亚洲一区| 久久99精品久久久久久动态图 | 日韩综合一区二区| 国产成人综合视频| 欧美日韩国产小视频| 久久久久免费观看| 亚洲不卡一区二区三区| 国产乱人伦偷精品视频免下载 | jizz一区二区| 欧美一区二区在线播放| 国产精品欧美久久久久无广告 | 成人高清视频在线| 欧美高清dvd| 国产精品传媒在线| 激情综合网最新| 欧美体内she精视频| 久久久精品免费观看| 亚洲一区在线观看免费| 成人动漫一区二区在线| 日韩一卡二卡三卡四卡| 日韩美女视频19| 韩国毛片一区二区三区| 欧美日韩一区二区三区四区| 欧美国产禁国产网站cc| 免费看日韩a级影片| 欧美亚洲丝袜传媒另类| 国产精品天干天干在线综合| 精品影院一区二区久久久| 欧美色男人天堂| 亚洲免费电影在线| 成人一区二区视频| 欧美va天堂va视频va在线| 亚洲成人av一区| 在线免费观看日韩欧美| 国产精品网曝门| 国产乱一区二区| 亚洲精品一区二区三区四区高清| 五月天亚洲婷婷| 欧美无乱码久久久免费午夜一区| 中文字幕一区二区在线播放 | 日本麻豆一区二区三区视频| 欧美性大战久久| 亚洲激情图片一区| 成人国产电影网| 国产精品久久久一本精品 | 欧美在线视频你懂得| 中文字幕一区二区三区不卡 | 激情图片小说一区| 日韩一区二区三区在线| 日韩二区三区四区| 这里只有精品99re| 日韩一区精品字幕| 欧美日韩国产精选| 亚洲第一在线综合网站| 欧美午夜电影一区| 亚洲一区二区欧美日韩| 欧美系列日韩一区| 天涯成人国产亚洲精品一区av| 欧美日韩成人在线| 日本不卡高清视频| 精品国产一区a| 成人美女视频在线观看| 中文字幕在线不卡国产视频| 99久精品国产| 亚洲国产另类av| 制服丝袜av成人在线看| 久久国内精品视频| 欧美韩国日本一区| 色综合久久88色综合天天6| 亚洲综合色噜噜狠狠| 欧美日韩美少妇| 免费日本视频一区| 久久综合给合久久狠狠狠97色69| 国产精品亚洲一区二区三区在线| 久久青草欧美一区二区三区| 国产精品亚洲午夜一区二区三区| 欧美国产精品一区二区三区| 色综合天天综合色综合av| 午夜精品视频在线观看| 精品国产一区二区三区久久影院| 国产麻豆精品久久一二三| 国产精品福利一区| 欧美日韩国产系列| 国产麻豆精品久久一二三| 亚洲另类春色校园小说| 欧美老肥妇做.爰bbww| 国产在线不卡一区| 一区二区三区av电影|