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

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

?? yuv12-rgb16.s

?? ac3的解碼程序
?? S
?? 第 1 頁 / 共 2 頁
字號:
;-------------------------------------------------------------------------
; cxm12161 -- This function performs YUV12-to-RGB16 color conversion for H26x.
;             It handles any format in which there are three fields, the low
;             order field being B and fully contained in the low order byte, the
;             second field being G and being somewhere in bits 4 through 11,
;             and the high order field being R and fully contained in the high
;             order byte.
;
;             The YUV12 input is planar, 8 bits per pel.  The Y plane may have
;             a pitch of up to 768.  It may have a width less than or equal
;             to the pitch.  It must be DWORD aligned, and preferably QWORD
;             aligned.  Pitch and Width must be a multiple of four.  For best
;             performance, Pitch should not be 4 more than a multiple of 32.
;             Height may be any amount, but must be a multiple of two.  The U
;             and V planes may have a different pitch than the Y plane, subject
;             to the same limitations.
;

;include iammx.inc
;include locals.inc


RGB_formats:
    dd  RGB565
    dd  RGB555
    dd  RGB664
    dd  RGB655

Minusg:             dd   00800080h, 00800080h
Yadd:               dd   10101010h, 10101010h
VtR:                dd   00660066h, 00660066h ;01990199h,01990199h
VtG:                dd   00340034h, 00340034h ;00d000d0h,00d000d0h
UtG:                dd   00190019h, 00190019h ;00640064h,00640064h
UtB:                dd   00810081h, 00810081h ;02050205h,02050205h
Ymul:               dd   004a004ah, 004a004ah ;012a012ah,012a012ah
UVtG:               dd   00340019h, 00340019h ;00d00064h,00d00064h
VtRUtB:             dd   01990205h, 01990205h
fourbitu:           dd  0f0f0f0f0h, 0f0f0f0f0h
fivebitu:           dd  0e0e0e0e0h, 0e0e0e0e0h
sixbitu:            dd  0c0c0c0c0h, 0c0c0c0c0h

%assign LocalFrameSize  156
%assign RegisterStorageSize  16

; Arguments:
%assign YPlane                    LocalFrameSize + RegisterStorageSize +  4
%assign UPlane                    LocalFrameSize + RegisterStorageSize +  8
%assign VPlane                    LocalFrameSize + RegisterStorageSize + 12
%assign FrameWidth                LocalFrameSize + RegisterStorageSize + 16
%assign FrameHeight               LocalFrameSize + RegisterStorageSize + 20
%assign YPitch                    LocalFrameSize + RegisterStorageSize + 24
%assign ChromaPitch               LocalFrameSize + RegisterStorageSize + 28
%assign AspectAdjustmentCount     LocalFrameSize + RegisterStorageSize + 32
%assign ColorConvertedFrame       LocalFrameSize + RegisterStorageSize + 36
%assign DCIOffset                 LocalFrameSize + RegisterStorageSize + 40
%assign CCOffsetToLine0           LocalFrameSize + RegisterStorageSize + 44
%assign CCOPitch                  LocalFrameSize + RegisterStorageSize + 48
%assign CCType                    LocalFrameSize + RegisterStorageSize + 52
%assign EndOfArgList              LocalFrameSize + RegisterStorageSize + 56

; Locals (on local stack frame)
%assign CCOCursor                   0
%assign CCOSkipDistance             4
%assign ChromaLineLen               8
%assign YCursor                    12
%assign DistanceFromVToU           16
%assign EndOfChromaLine            20
%assign AspectCount                24
%assign AspectBaseCount            28
%assign tmpYCursorEven             32
%assign tmpYCursorOdd              36
%assign tmpCCOPitch                40
%assign temp_mmx                   44  ; note it is 48 bytes
%assign RLeftShift                 92
%assign GLeftShift                100
%assign RRightShift               108
%assign GRightShift               116
%assign BRightShift               124
%assign RUpperLimit               132
%assign GUpperLimit               140
%assign BUpperLimit               148


; extern void C MMX_YUV12ToRGB16 (
;                                     U8* YPlane,
;                                     U8* UPlane,
;                                     U8* VPlane,
;                                     UN  FrameWidth,
;                                     UN  FrameHeight,
;                                     UN  YPitch,
;                                     UN  VPitch,
;                                     UN  AspectAdjustmentCount,
;                                     U8* ColorConvertedFrame,
;                                     U32 DCIOffset,
;                                     U32 CCOffsetToLine0,
;                                     IN  CCOPitch,
;                                     IN  CCType)
;
;  The local variables are on the stack,
;  The tables are in the one and only data segment.
;
;  CCOffsetToLine0 is relative to ColorConvertedFrame.
;  CCType  used by RGB color convertors to determine the exact conversion type.
;    RGB565 = 0 
;    RGB555 = 1
;    RGB664 = 2
;    RGB655 = 3

global yuv_2_rgb

yuv_2_rgb:
  push       esi
  push       edi

  push       ebp
  push       ebx

  sub        esp, LocalFrameSize
  mov        eax, [esp+CCType]
  cmp        eax,4
  jae        near finish

  jmp        [RGB_formats+eax*4]

RGB555:
  xor        eax, eax
  mov        ebx, 2   ; 10-8 for byte shift
  mov        [esp+RLeftShift], ebx
  mov        [esp+RLeftShift+4], eax
  mov        ebx, 5
  mov        [esp+GLeftShift], ebx
  mov        [esp+GLeftShift+4], eax
  mov        ebx, 9
  mov        [esp+RRightShift], ebx
  mov        [esp+RRightShift+4], eax
  mov        [esp+GRightShift], ebx
  mov        [esp+GRightShift+4], eax
  mov        [esp+BRightShift], ebx
  mov        [esp+BRightShift+4], eax
  movq       mm0, [fivebitu]
  movq       [esp+RUpperLimit], mm0
  movq       [esp+GUpperLimit], mm0
  movq       [esp+BUpperLimit], mm0
  jmp        RGBEND

RGB664:
  xor        eax, eax
  mov        ebx, 2   ; 8-6
  mov        [esp+RLeftShift], ebx
  mov        [esp+RLeftShift+4], eax
  mov        ebx, 4
  mov        [esp+GLeftShift], ebx
  mov        [esp+GLeftShift+4], eax
  mov        ebx, 8
  mov        [esp+RRightShift], ebx
  mov        [esp+RRightShift+4], eax
  mov        [esp+GRightShift], ebx
  mov        [esp+GRightShift+4], eax
  mov        ebx, 10
  mov        [esp+BRightShift], ebx
  mov        [esp+BRightShift+4], eax
  movq       mm0, [sixbitu]
  movq       [esp+RUpperLimit], mm0
  movq       [esp+GUpperLimit], mm0
  movq       mm0, [fourbitu]
  movq       [esp+BUpperLimit], mm0
  jmp        RGBEND

RGB655:
  xor        eax, eax
  mov        ebx, 2   ; 8-6
  mov        [esp+RLeftShift], ebx
  mov        [esp+RLeftShift+4], eax
  mov        ebx, 5
  mov        [esp+GLeftShift], ebx
  mov        [esp+GLeftShift+4], eax
  mov        ebx, 8
  mov        [esp+RRightShift], ebx
  mov        [esp+RRightShift+4], eax
  mov        ebx, 9
  mov        [esp+GRightShift], ebx
  mov        [esp+GRightShift+4], eax
  mov        [esp+BRightShift], ebx
  mov        [esp+BRightShift+4], eax
  movq       mm0, [sixbitu]
  movq       [esp+RUpperLimit], mm0
  movq       mm0, [fivebitu]
  movq       [esp+GUpperLimit], mm0
  movq       [esp+BUpperLimit], mm0
  jmp        RGBEND

RGB565:
  xor        eax, eax
  mov        ebx, 3   ; 8-5
  mov        [esp+RLeftShift], ebx
  mov        [esp+RLeftShift+4], eax
  mov        ebx, 5
  mov        [esp+GLeftShift], ebx
  mov        [esp+GLeftShift+4], eax
  mov        ebx, 9
  mov        [esp+RRightShift], ebx
  mov        [esp+RRightShift+4], eax
  mov        [esp+BRightShift], ebx
  mov        [esp+BRightShift+4], eax
  mov        ebx, 8
  mov        [esp+GRightShift], ebx
  mov        [esp+GRightShift+4], eax
  movq       mm0, [fivebitu]
  movq       [esp+RUpperLimit], mm0
  movq       [esp+BUpperLimit], mm0
  movq       mm0, [sixbitu]
  movq       [esp+GUpperLimit], mm0
;  jmp        RGBEND

RGBEND:
  mov        ebx, [esp+VPlane]
  mov        ecx, [esp+UPlane]
  sub        ecx, ebx
  mov        [esp+DistanceFromVToU], ecx

  mov        eax, [esp+ColorConvertedFrame]
  add        eax, [esp+DCIOffset]
  add        eax, [esp+CCOffsetToLine0]
  mov        [esp+CCOCursor], eax


  mov		ecx,[esp+YPitch]
  mov		ebx,[esp+FrameWidth]
  mov		eax,[esp+CCOPitch]
  sub        eax, ebx         ; CCOPitch-FrameWidth
  sub        eax, ebx         ; CCOPitch-2*FrameWidth
  sar        ebx, 1           ; FrameWidth/2
  mov		esi,[esp+YPlane]           ; Fetch cursor over luma plane.
  mov		[esp+ChromaLineLen],ebx    ; FrameWidth/2
  mov		[esp+ CCOSkipDistance],eax  ; CCOPitch-3*FrameWidth
  mov		[esp+YCursor],esi
  mov		edx,[esp+AspectAdjustmentCount]
  mov		esi,[esp+VPlane]

  cmp   edx,1
  je    near finish
  mov		[esp+AspectCount],edx
  mov		[esp+AspectBaseCount],edx
  xor        eax, eax

  mov		edi,[esp+ChromaLineLen]
  mov		[esp+EndOfChromaLine],edi
  mov		edi,[esp+CCOCursor]

  mov		edx,[esp+DistanceFromVToU]
  mov		ebp,[esp+YCursor]                       ; Fetch Y Pitch.
  mov		ebx,[esp+FrameWidth]

  add        ebp, ebx
  mov		[esp+tmpYCursorEven],ebp
  mov		eax,[esp+YPitch]
  add        ebp, eax
  mov		[esp+tmpYCursorOdd],ebp

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
狠狠色狠狠色综合系列| 日日夜夜一区二区| 亚洲综合一区在线| 寂寞少妇一区二区三区| 色视频一区二区| 国产日韩欧美不卡在线| 日本亚洲欧美天堂免费| 欧美亚洲丝袜传媒另类| 国产女同性恋一区二区| 美女视频黄久久| 欧美天堂亚洲电影院在线播放| 欧美精彩视频一区二区三区| 久久国产精品99久久久久久老狼| 色综合天天性综合| 日本一区二区三区四区| 国产揄拍国内精品对白| 日韩一区二区在线播放| 一区二区免费视频| 97久久精品人人做人人爽50路| 久久综合九色欧美综合狠狠 | 中文幕一区二区三区久久蜜桃| 日本vs亚洲vs韩国一区三区二区| 色拍拍在线精品视频8848| 国产精品国产三级国产有无不卡 | 亚洲精品一线二线三线无人区| 午夜伊人狠狠久久| 欧美视频自拍偷拍| 亚洲国产欧美另类丝袜| 在线亚洲+欧美+日本专区| 亚洲欧美综合色| 91一区二区三区在线观看| 国产精品乱码久久久久久| 成人精品电影在线观看| 国产三级精品视频| 成人h动漫精品| 国产精品第一页第二页第三页| 国产成人精品午夜视频免费| 欧美经典一区二区三区| 99视频国产精品| 亚洲色图.com| 欧美影视一区在线| 婷婷亚洲久悠悠色悠在线播放 | 日韩专区一卡二卡| 欧美一个色资源| 国产一区二区精品久久99| 久久久美女毛片| 不卡电影一区二区三区| 亚洲欧美激情一区二区| 欧美日韩久久一区二区| 男女激情视频一区| 国产欧美精品一区| 在线精品国精品国产尤物884a| 亚洲影院在线观看| 日韩欧美的一区| 狠狠色综合日日| 国产精品久久久久婷婷二区次| 日本韩国欧美国产| 奇米一区二区三区| 国产欧美日产一区| 欧美日韩国产另类不卡| 国产一区中文字幕| 一区二区三区视频在线看| 91精品婷婷国产综合久久| 国产精选一区二区三区| 亚洲人成电影网站色mp4| 4438成人网| 成人黄色一级视频| 日本在线观看不卡视频| 中文字幕精品—区二区四季| 欧美日韩亚洲综合| 国产ts人妖一区二区| 亚洲香肠在线观看| 国产午夜精品在线观看| 欧美亚洲另类激情小说| 国产精品影视在线观看| 亚洲国产一区二区三区| 国产无遮挡一区二区三区毛片日本| 色婷婷国产精品| 粉嫩av一区二区三区粉嫩| 香蕉成人啪国产精品视频综合网| 国产亚洲精品福利| 欧美一区二区三区四区视频 | 91精品国产欧美日韩| 国产99久久久精品| 日本不卡免费在线视频| 亚洲视频一二三| 久久久久国色av免费看影院| 欧美喷水一区二区| 色婷婷综合中文久久一本| 精久久久久久久久久久| 五月婷婷久久丁香| 亚洲你懂的在线视频| 久久久蜜桃精品| 欧美大片一区二区| 欧美高清性hdvideosex| 在线影视一区二区三区| 成人高清免费在线播放| 国产成人小视频| 激情五月婷婷综合| 蜜臀精品久久久久久蜜臀| 一二三四社区欧美黄| 中文字幕制服丝袜一区二区三区| 精品国产乱码久久| 欧美mv和日韩mv国产网站| 欧美精品亚洲一区二区在线播放| 色综合天天做天天爱| 97久久人人超碰| 91免费国产在线| 99精品欧美一区二区三区小说| 成人一区二区视频| 国产成人免费xxxxxxxx| 国产成人在线免费| 成人网在线播放| 成人美女视频在线观看18| 国产99久久久久久免费看农村| 国产精品白丝jk黑袜喷水| 国产成人免费视频网站高清观看视频 | 蜜桃av一区二区| 免费观看成人av| 国产原创一区二区三区| 国产精品一区二区黑丝| 成人在线一区二区三区| 成人午夜在线播放| av不卡免费电影| 欧美亚洲综合一区| 91 com成人网| www久久精品| 中文字幕电影一区| 亚洲激情图片一区| 日韩精品欧美精品| 久久国产尿小便嘘嘘| 国产黄色91视频| 91蜜桃视频在线| 制服丝袜av成人在线看| 精品国产乱码久久久久久牛牛| 久久久久久麻豆| 亚洲欧美色一区| 日日夜夜精品免费视频| 久久99久久精品欧美| 成人小视频在线观看| 91福利资源站| 精品国产成人在线影院| 国产精品热久久久久夜色精品三区| 亚洲色大成网站www久久九九| 午夜成人在线视频| 国产成人三级在线观看| 色欧美片视频在线观看在线视频| 日韩一区二区三区精品视频| 国产性色一区二区| 五月天一区二区| 成人午夜私人影院| 欧美一区二区视频在线观看| 久久九九久久九九| 丝袜诱惑亚洲看片| 国产成a人亚洲精| 欧美日韩成人综合| 中文字幕精品一区二区精品绿巨人 | 人人精品人人爱| 国产91精品一区二区麻豆亚洲| 在线视频国内一区二区| 精品粉嫩超白一线天av| 一区二区三区美女视频| 国产综合一区二区| 制服丝袜亚洲播放| 亚洲日本青草视频在线怡红院| 捆绑紧缚一区二区三区视频| 91美女精品福利| 国产亚洲人成网站| 日韩成人伦理电影在线观看| 97久久精品人人爽人人爽蜜臀| 日韩你懂的在线观看| 亚洲一区二区三区不卡国产欧美| 国产精品自拍一区| 日韩午夜av电影| 亚洲综合一区二区精品导航| 粉嫩绯色av一区二区在线观看| 日韩欧美黄色影院| 日日夜夜精品免费视频| 在线观看一区二区精品视频| 国产欧美一区二区精品久导航 | 91亚洲男人天堂| 久久精品欧美日韩精品 | 午夜日韩在线观看| 91美女福利视频| 亚洲欧洲国产日本综合| 国产69精品久久99不卡| 精品国产成人系列| 国模一区二区三区白浆| 欧美成人精品1314www| 日本成人中文字幕| 欧美福利一区二区| 午夜精品视频在线观看| 欧美亚洲国产一卡| 亚洲电影中文字幕在线观看| 91黄色免费版| 亚洲不卡av一区二区三区| 欧美日韩情趣电影| 性感美女久久精品| 日韩手机在线导航| 看国产成人h片视频|