MA2x5x SIPP User Manual V1.32 / July 2018 MDK

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 175 [warning: Documents this large are best viewed by clicking the View PDF Link!]



Intel® Movidius™ Condenal

 !
"!"#
$"!%

&
'(()
(*++,
-.''%%%'
/0 ! (11)2)3
Revision History
 ! 
4 3 !"5!
2
/0 ! 3 (11)2)3
Table of Contents
"#$%%&'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''(
#6
76
38!!6
&)'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''*
!!*
(*
39*
,:"%$;
+&)'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''"*
3&(11!*
3  
331<
3, (113
,''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''',
,11,
,=+
-'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''.
+!(111!;
+1"*
+3>!?!3,
+,1"<,
("/"//'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''',0
6,
61,
638%+"%$",
.''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''/
;1"!+
;#$6+
;3196+
;,@!66
01&2''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''(*
A;
17<;,
31<
,(A3
+7%96
6B( *6
;A#' *
A:'B 
*BA9
( +
:!9
/0 ! , (11)2)3
9
3A,
,#! 
+B2 33
61(,
;@> ,,
! +
*C++
*3%4'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''".
*>%+;
*>#D+;
*31+*
*,A  +*
"/5&2'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''"(+
=$63
6"//3&)''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''"(0
(11<+<"%$6
&(E"!6
&16
CE #%<+<;
A(11<+<!$;
@1;
97"1;
:8!"CE ;
C9;
C7 ;
C&79;
/0 ! + (11)2)3
" #$%%&
"'" 7
#(11F(11G<+<"%$
"<!(112:%(11
"%$8"#%"!!!"
#"%$E"!"(112:##
%%$#!"
(112:
AD      (11  <+<  "%$        %  #    %  9
        "    "    "    "    "    "%$      
""%$<+<
"' 8
7!##"-.''%%%"
#%H7.
 AIFAIGJ:5(:
 AIFAIGJ1K:
3 AIFAIGJ(112:
, @FAIJ!G
"'+ %
"%!""!
"'+'" 
3 
2 2)#
26 26)#
23 23)#
 ()#
6 (6)#
3 (3)#
13 )#7:&$3#F<<7777777777::::::::::&&&&&&&&&&G
916 @@@);+,6)#L!F"6)#G
/0 ! 6 (11)2)3
3 
913 @@@);+,3)#L!F3)#G
29 2#"!MN
97": 3
"'+' 3
9<)##""!
#"9 #"##
;.
2.2%6#"F#""!G
(66.#+#"6#""!
##!# O8%8#"
"!#
"'+'+ #
E " !%#%-

9 
E& E&
& !9%#<
"<#$E#$%)<%
 #<  #" ,) % 
#:7&:#:<%<#
:%<%#<#
:#
&> A#"<#$"<&A%
)P"&>%#":7&:
:&7:7::&&::7
9 9
Q B%)#%)#
(  ( " J   "   #  1  "
!!1
A: A:
9 (11 !%<)%(119
#!(11" #
/0 ! ; (11)2)3
9 
!
1 #"1?!"
""#%%#(
>&D #D#D#



E!"%#DAA7
1<"%#%
""%#DQ
"##-"
Q#D#$ 
(1 """

(C=@  1#  ! ;=

($9 (11% 
<!A7FAG
(11 (11
(9 (11% 
  "    <  !      A7  F    A  G      
"
97:#
/0 ! (11)2)3
 &)
'" %
#>=""%)"!
AA7!""#"'%-#$AA7"
!1"##AA7#%!<6R
#"12#"#%%)%H
#
#(11" A" 
<)#)#(#D
%)FQG8AA7#F
          AA7   A   '"   G   !    
"%# "AA7%
%$AA7#-""!
' 
(11"%$<?"#
(>>+(C=@#A
"""AA7Q)!#"%"
!<(1$
E#$""#(C=@%
(11"%$7(
(11"%$"+#)%
!"(11! "  ! " %
   "  %  (11 P% "%$ %   <
!"!#S"(C=@
Q#D"% 
# (1    # L<#    P% #  " # P%
 J  $    (C=@ J   "  %
8T"Q"!!
". U#DU#D
'+ 3
1(11"%$"#!!"
$  FA:G@ %
#D# ?
"F?"GE $%
"#D!#%#!
/0 ! * (11)2)3
" B#D".%-
!"#D%!%#$
"#D
'+'" 3
"%.
%! "
#D
%! 
" U#D
 FG
 FG
 $ % FG#%-
#<"%#%
"    "    B          %    B    
          F 9  3.    <  "    
G
977""%$% %F(!
6J<+<(119E(119EG
  !          !  #  $  (11  1      !
""%.
 !
 !H %
3  "#"'!
%#<E!!<!""
!"%$% !"#D?"
 #D   #   H "    "  #D F"
< ;<;!H;;##DG
!"!%#H<#D
#H"?%
"%$!%<"#D
#D
/0 !  (11)2)3
'+' 
#<B
"%$!<VW U#DB
%V'B#W <#D
%"#
/0 !  (11)2)3
3":
&"<"C%#<
HAA7#"A
"#D#7< F7< U#DG
-"'B# U#D#
< "!%UHAA7$% . 
!%"##
$%$AA7
8#"VW".#)
"#D
FQG$%<AA7
'+'+ 
%"!E"
%"(11"%$
#&D
"#"JH#
""(11
/0 !  (11)2)3
3:& 8<

'+', 
9 ?"?""#"
 U#DFU#DG"
"H#"#DC%"
  %"?!"< %%)
      #   " "  %    #    ?   !  !     ?
!%" #D%#"%"U
#D!!%%%? 
"#D"%U#D
(11"%$!$? $
!U#D
#""1!#
$%D 
% <##%"<
/0 ! 3 (11)2)3
3+:;6 #
 <#VA% W % # "" 
V9W #%?
VA%WV9W "P .
"""#"VA%W
"%U#DV2
W %"U#D
D"V2W "
B %V'B#W "%
8    % # #     2    V'B
#W #%#
# """B

'+' 1&5&2
( "%"9< A
"! #
"C%" (P%9(P% 
/0 ! , (11)2)3
3,:3&=
(##<"
#
#<"%P% !"
P% #CE #
'+'(  8
9<!U#!!9<%
(1F(1G"
=!!>!#%
%(11!""
E    "      #  <          #  #  "  
#%%"E#"$
AA7#"%<%"%
%%!
%!"% %"FG
#%- AA7%   ! "%   %$
#"#D#""<
"<AA7X. "%$!!
""!")!
%      AA7 #D %
""!
/0 ! + (11)2)3
"5 ""!U")#
<%#"%)"!%#"A99
!##%)"!#"<(11
"%$#
/0 ! 6 (11)2)3
3:&
', #&)
9 6     #  %  "   (11       "     "! 
CE(
1.1;
1!." !
!#% #1
1=!.P!"%#$"

1."!"##
/0 ! ; (11)2)3
3(:#&)
!#"ADD"#
"%$%#L<#X"!#
%#%#"%#"
    "        $    #  X  !  %  
!
1Y.H$!"(
1)#$H!#
"<!
7(.(11CE(J%
$###!
#              !  9    !  %    #  <
FLG%
"
(117.@
H#"!!"
(.       F%  HG  "     @  !  "   
!%CE(E H!
D!%<!
CE'(!"
#D        #          Q    %      
#% %  ! A  " " 
!#<<1%$
"X
7.$!   <!" 
$CE(C=@!#!!"!
/0 !  (11)2)3
+ &)
+'" >
%(11!:AM,N)
@A@%#<!"A@
!#""(111
Z        (111Z   "
!#V5W!!"!(11
!""%.
1"!?!<!!AI
"
!(11#!"#$
!(11 #!%#$
B$ "#&%#$
>##(11""
#"%'#$"%'()#$
/0 ! * (11)2)3
3.:# ;?
3.2 Conguring lters
9? #  ) 
9(E ?" !## 
 '  !%#$ 9CE ?""
CE ?"? (11"%$
#!%#$%
V'W % U
"      )  9
<"78! *+("',
   -+(+( .  7 8 U      #
 "%.
RandomNoiseParam *param;
noiseFilter = sippCreateFilter(pl, 0, 640, 480, N_PL(1), SZ(half),
SZ(RandNoiseParam),
SVU_SYM(svuGenNoise),
"Random_Noise");
param = (RandomNoiseParam *)noiseFilter->params;
param->strength = 0.08;
$9;: 1 !$D""C
#%19FG'198&FG
+'+ 
+'+'" 
<%%%#(11% E%3<3!
 < AI$3
!
E#!%#<<
GA " #G3<3! GA
AA #(11"%$
#T
 #T
 .
#define IMG_W 640
#define IMG_H 480
void appBuildPipeline()
{
pl = sippCreatePipeline(2, 5, SIPP_MBIN(mbinImgSipp));
/0 !  (11)2)3
dmaIn = sippCreateFilter(pl, 0x00, IMG_W, IMG_H, 1,
sizeof (u8), sizeof (DmaParam),
(FnSvuRun)SIPP_DMA_ID, "DMA_In");
conv3x3 = sippCreateFilter(pl, 0x00, IMG_W, IMG_H, 1, sizeof (u8),
sizeof (Conv3x3Param),
SVU_SYM(svuConv3x3), "Conv_3x3");
dmaOut = sippCreateFilter(pl, 0x00, IMG_W, IMG_H, 1, sizeof (u8),
sizeof (DmaParam),
(FnSvuRun)SIPP_DMA_ID, "DMA_Out");
sippLinkFilter(conv3x3, dmaIn,3, 3);
sippLinkFilter(dmaOut, conv3x3, 1, 1);
}
E%"!%""! !?
U)#"<!"
void appProcFrame(SippPipeline *pl)
{
DmaParam *dmaInCfg= (DmaParam*)dmaIn->params;
DmaParam *dmaOutCfg = (DmaParam*)dmaOut->params;
Conv3x3Param *convCfg = (Conv3x3Param*)conv3x3->params;
dmaInCfg->ddrAddr = (u32)&iBuf;
dmaOutCfg->ddrAddr = (u32)&oBuf;
convCfg->cMat[0] = cMat[0];
convCfg->cMat[1] = cMat[1];
convCfg->cMat[2] = cMat[2];
convCfg->cMat[3] = cMat[3];
convCfg->cMat[4] = cMat[4];
convCfg->cMat[5] = cMat[5];
convCfg->cMat[6] = cMat[6];
convCfg->cMat[7] = cMat[7];
convCfg->cMat[8] = cMat[8];
sippProcessFrame(pl);
}
#"!"! #
(11"!% 
int main()
{
sippPlatformInit(); // SIPP infrastructure initialization
// Read a frame from file
sippRdFileU8(iBuf, IMG_W*IMG_H, ""lena_512x512_luma.raw");
// Build the pipeline and process the frame through it
appBuildPipeline();
appProcFrame(pl);
// Dump the generated output
sippWrFileU8(oBuf, IMG_W*IMG_H, "lena_512x512_RGB_conv3x3.raw");
return 0;
/0 !  (11)2)3
}
+'+' 
2<"33#!##$1
sippProcessFrameNB()
void appProcFrame(SippPipeline *pl)
{
DmaParam *dmaInCfg= (DmaParam*)dmaIn->params;
DmaParam *dmaOutCfg = (DmaParam*)dmaOut->params;
Conv3x3Param *convCfg = (Conv3x3Param*)conv3x3->params;
dmaInCfg->ddrAddr = (u32)&iBuf;
dmaOutCfg->ddrAddr = (u32)&oBuf;
convCfg->cMat[0] = cMat[0];
convCfg->cMat[1] = cMat[1];
convCfg->cMat[2] = cMat[2];
convCfg->cMat[3] = cMat[3];
convCfg->cMat[4] = cMat[4];
convCfg->cMat[5] = cMat[5];
convCfg->cMat[6] = cMat[6];
convCfg->cMat[7] = cMat[7];
convCfg->cMat[8] = cMat[8];
sippProcessFrameNB(pl);
}
void appSippCallback ( SippPipeline * pPipeline,
eSIPP_PIPELINE_EVENT eEvent,
SIPP_PIPELINE_EVENT_DATA * ptEventData
)
{
if (eEvent == eSIPP_PIPELINE_FRAME_DONE)
{
printf ("appSippCallback : Frame done event received : \n");
testComplete = 1;
}
}
volatile u32 testComplete = 0x0;
int main (int argc, char *argv[])
{
appBuildPipeline();
...
// Register callback for async API
sippRegisterEventCallback (pl,
appSippCallback);
...
appProcFrame(pl);
...
/0 !  (11)2)3
while ( testComplete == 0x0 )
{
}
// Dump the generated output
sippWrFileU8(oBuf, IMG_W*IMG_H, "lena_512x512_RGB_conv3x3.raw");
return 0;
}
+', 2
+','" 8?
+','"'" @-
     ? " (11 Q)   " ?  3 I# F   
''<+<'#'@"$G
"?%$ !.
CCOPT += -D'SIPP_CMX_POOL_SZ=32768'
+','"' 
9(?!(11<P!
F1G%(11<<<2%
)<<#%.
pl = sippCreatePipeline(…);
// After pipe creation – Default : SippMtx0 = Mutex0,
// SippMtx1=Mutex1
// Reassignment after pipeline creation: SippMtx0 =
// Mutex20, SippMtx1=Mutex21
pl->svuSyncMtx[0] = 20;
pl->svuSyncMtx[1] = 21;
!)"(C=@%
%%"2@Q@(
+','"'+ A
"AA7(11<AB$
&"(11B$"<A#$C%"#
  $  ! # 5  " (11[A[:@8[8>  (11[A[8[8>

CCOPT += - D'SIPP_CDMA_AGENT_NO=1'
CCOPT += - D' SIPP_CDMA_INT_NO=10'
/0 ! 3 (11)2)3
, 
!#%(11QAA7%D.
 !?!
 A<!
9#XQ"#!?!<!#"
<AA7#
,'" 
"%$",.
Q1
AA71
Q(1
QB1
#"!J"Q"
AA7
9%%Q1AA7
#%!%B&DH
HD!
!"!K#
FQ1AA71G#!
!
/0 ! , (11)2)3
,' !
!%"%$" 
!7"%
!#""H""!
@##9T
/0 ! + (11)2)3
30:@
CMX POOL
lter params/pipeline def
etc.
HAS TO BE IN CMX
(frequently accessed)
DDR POOL
memory used for saving
context when swithching
pipelines while
proceessing the same
frame
CMX SCHEDULER POOL/LINES POOL
CMX SCHEDULER POOL: used to compute
the SIPP pipeline schedule or recompute
it if pipeline changes
CMX LINES POOL: Used for the actual
lines during SIPP
Allocation of the CMX pools for a 4 (slice 0 to 3) CMX
slices pipeline, single pipeline (DDR POOL irrelevant)
CMX
Initialization
Computing
pipeline stage
SCHED POOL
slice 0
SCHED POOL
slice 1
SCHED POOL
slice 2
SCHED POOL
slice 3
CMX POOL
some
other
part
of a CMX slice
CMX
Running the
pipeline
LINES POOL
part of slice 0
LINES POOL
slice 1
LINES POOL
slice 2
LINES POOL
slice 3
CMX POOL
some
other
part
of a CMX slice
lters slice 0
lters slice 1
lters slice 2
lters slice 3
"Q1AA71
"1QAAQ#
! 
1: AA7
11( Q1
19B&" QB1
1QAA Q1
1( Q1
1( Q(1
97+: %
%1sippChooseMemPool()#!"
#C%1"AA7Q
1!++ H(11"%$%#D#"
%!""
                      19B&"  19B&"
19B&"%
/0 ! 6 (11)2)3
 -
<#(11"%$##""
"#C%$"<!
""%!<!<""
(11!D%#
"%#K"
'" 
  " ?! F  "91
<719(198&1G(11"%$"
#"%%#
!"""
"!%#!#%<!<
"% C% "  !%# 
X#<"
!
#)!"(11!%#L#!$$
#"!%"#<?
(11!#B@>8%(11"%$J
(C=@ <!(E$(11 C%(C=@
(11!H <#T!#(11"%$#
!B@>8(11! "B@>8 (11!H (C=@
!#!"B@>8(11!(C=@(11
!D!#!"<!"(E
$
'"'" 9)B;$
E<"$D"F"
<CE '(E \G"%%"
"!#!
@<"!"
(CE %#"!
((E %#"!!
(A %#"!
1"!$"#H!J!"
!"""$FGFG"
(EA FCE $G
C!<CE F!G
@#
2CE #D%"!#D!
"!
/0 ! ; (11)2)3
7"<!]
'"' %
"!!P!$#"
!%H<!<%"""!"
!!" !"!!
#%!"!!

'"'+ #
:!(11!%#""(11
"%$T!:!#
"%$#""!K!!9
!#X""("
""   ? D ! #    #
""
:!### %!
(ECE<
'"', B
E:!"%%##" #$
"# $C% 
#(11"%$%""!
(!$ !"!
%"%!%"
##"#!
!B1!!D# ""
    !       B1  ! %  #  $  %          %  1
1(B1FG5#"!','6#
!"%#%#D
!FQGH#
'"' $
9<"!$  +C%"$
"#)!%#"1!%

"%$%1!""!%(E
%CE #)#
$"CE"+#(11CE "%L%
%"!# !"
#D$"! %
D#"##"#D
%#D#1!
##%  <1 !"%
#%%
/0 !  (11)2)3
$"1!"%
A!
>!"A!" 
#DT #"%
CE "#
"EHA!"#D"
#A!? #"
>!"A!" %#D#
 #"#"#D
#"")#%!
#$!1!
SIPP_SCRT_ENABLE_OPIPE# LPLF[CONSIDER_OPIPE_RT#
#" !"F(#;"LG
#!
E!A(111!"
A!!#QA%
1!#"!
1!%)P#D!" 
#D?#"#D#" 
1(8B1&"FGB#"#D
)!<"H#D
"D"
+%##%!
' 
2!%"'<F$)))<G%#
%%##"!""%#
""#"$%#%1
"%$""!""%$
%"%$#""
##"<FG" 

E#" "!"%$%
"<""!!?!"%$
"" %#"%!?!+3
#""2!X"!
#%!?! "
%"X!""
"!?!X!##
''" 1C
>  CE      %  <   #  .  1   (11     #  " 
/0 ! * (11)2)3
$'<'('(9%'7!
&"CE %""
%#"!""$<F'<G
"
''"'" )
" #?""
"% "$'<#%%
D!D!!"
!B1!,!1!
!.=:CA,I#
9 * %   '<   "    1      #      ?  !
"D#%!
/0 ! 3 (11)2)3
3*:
9%'<"(11!!
%T"#""
"92BBCA!%1!8"<CA!'<
#36^"1!%!
''"' 
%%#""
#$%.
9%$!
B#D!
9%$J""%$%
1!F9G
9<%,I!Q?#6^"B1!
"!"1!%#^"
%!"E
B1?##"!9
<%,!?#<H"
!91!H
/0 ! 3 (11)2)3
3"/:
B7=J#D"!!
#D"19B&""#D#
!##"
   "%  !  % $  " <   1           %    =:
!%!!"!%
1B&"
3":B7=
71!%""
%#
/0 ! 3 (11)2)3
3"":3&)
9 <  1     ,     % #   ".
19B&"19B&"19B&"19B&"3
"#D%!"
#!"!#D%!%%
,!"!%%1!!
93%D"#D1!%"
#D!FG%#D?F#G
71!"##"
$%#!"
'' ;7
%#!!!#$%# !
!
#!! #!  SIPP_RUNTIME_PROFILING # 
F%sippMyriad2Elf.mkG#!#!$
"!!#$1("
!!<"
@#    !!      !  "          #  5      L
PLF_PROVIDE_RT_STATS#" !"F(#;"LG
$$!! 
!
#%J!"!!%
D"!!"vPoolGeneral
%#"AA7F#3GJ"
AA7Q"%!!"
"  ? "     # % # !     " J
SIPP_RT_ITER_STATS_SIZE%%!%#F#
H#"!#GSIPP_RT_PER_ITER_STATS_SIZE
/0 ! 33 (11)2)3
DE D7E
3"+:B7=
%<#"%#!
"D"
!#H#)!"%#
''+ 
>"!%"H
%#!!!%!J
"sippReschedulePipeline()
E1'!-1)
P
'', 
@!"D!"!"
"!H!!E!,!!"%
!
>!"CE 
>!"(E 
>!"A
9%$!"<!
!""!"V)W!
%",#" " 
8J"#
!""C%!#
      %      )  "              #      %    
#$1""#
#$%""!?!
'+ $-
#!L!?!""
'<#+>!?!"
%C%#)!%"%%!#%
"%#"%
"#%H
"!
CE P "'<F" G
<!"(E$#"##
!"$<">#
    #        !  #%     !   %
! !
#)!"!?!!%%
"!"%"!
"
/0 ! 3, (11)2)3
'+'" $F
  "%  #)!      H  %    #          
""E%$H%#"
"!+3D!"!"%H#

'+'"'" 1C@=
E"!" #D"
J%#!!#"$H#"
"<"(11CE (11"%$
D5"CE Q!
("<CEA_B2 _! __
A,Q1FG!%
, #D"AB2!( &" 
<"" %#" $" 
$ % #            %    
%""Q!
&D5" #
3 $>=3
A 
B2 
! 
( 
97,:;27=
8 #D3#CE D5
#E( %##"%!#D
%DA> %##"(#
$ "#"CE 
%#CE (E QA

>D5!%"%$(
"$#D#<(9
""9< < #,
"%#.
dmaIn = sippCreateFilter(...
lut = sippCreateFilter(...
convolution = sippCreateFilter(...
...
/0 ! 3+ (11)2)3
dmaIn->firstOutSlc = 0;
lut->firstOutSlc = 1;
convolution->firstOutSlc = 2;
sippFinalisePipe(...
sippProcessFrame(...
8 !" ##"sippFinalisePipe()
sippProcessFrame()sippProcessFrameNb()
'+'"' CF
(!QA!!!CE #)
$%!) <#%-
!FP
$Q  !  #" ! # $  
"G
!!"%"!"%$
F9,G#"H
C%#!(
"%$!!F9,GH"
!K%"!"!%
"%$!""%$!%#
#"!1(H#
"C%""%$)F
!+3G%!!"
"!%%!!%
"%$!%#$#)"
EP%#$%
"%$#
E % 1#" "%$
!#$#!F!
!G%
(!+33"
'+'"'+ 7
&"!F%<!"1G%%$#"
"##" !
1(B1FG#','6"!
< 1- !D "!
#(11"%$B@>8(11!
(C=@
E(11"%$!"
("!F9,G
@"!F9,G
9%$!F9,G
9`H
/0 ! 36 (11)2)3
9(11!!"
1!%B@>8
"!(E$
#""!(E$
B" %"!
B'>"!" 
 # %   %    !  !
##"!#9<
"%!#"!
#+^"CA# "!E
!%%#^%%%"
+^"%!"!
#   ` H
!#"!J!%
# %
#"C%
 %9%$!)F!+3GP#
"%$!"!
E"#"!#
#%#DH" %
 !     #D H    X     
<!#H%H5%!
"%#"!
$9;: !%1!#"!
D!"
#"!
'+'"', C7)
E"%$%- #!"#
!%!###!"" 
"%"!

2"#.
7$J"<"CE 
$%CE !%!%
(%%J""(E %%#
! #"ACE 
)!#9?1FG"
#
sippRuntimeFunc pfnSippRuntime;
/0 ! 3; (11)2)3
"!!#$!
'+' B?-
(! +, # ,!!%!"
(11!F<1!G#!?!"
  !    !  H  "    "    !!    "      
!?!
$9;: &"%!!!)
%%#"!
#!%"!!!""
!!!
!!)9,
!#P!P
"3"!F(E CE QAG%#(
!H$%%#F"H!G>
H!"%$%""$
##H!
,!!%!
)#% ! !"
!"" !CE
%!#(E A
"(E A!!
1  9, % "%$    " 
!:#$%!D
## $!!X"
#!!
9"%#")<!"%L!H"
/0 ! 3 (11)2)3
3",:9?
",!!.
1C2JCE #CE!#%
CE !## ! !"CE 
#%AA7"% %
C2 J#"(E #%<""(E 
#"(C=@(!"(C=@"
%#%""Q#% %
@  J#"A!H!%"
!%QAA7#%<QA!!
3&)J9%$!!L#D"#D
(E 'QA#"%$"
"$""(EA @!DH
#"(EA %)
$!!
8"!"%$"%$%"
CE "%%#D!
'+''" 2?
E!!!#!"!#"
!%!H",!!#
""J#%",
"!P#-$"<!
:!!#!)!%<
%+,>!!)! "%#)!#
!?!
'+'' 1C2
ECE #-$"!?!H"
Q#J%D5"CE 
Q!#+3
>H!$
CE #DQ\"#\
"%$X""#"(E
H#+3#\""%$#
!!"%$#"!

A!CE  #"(E A\"%
#
"1!!!+33
%%
"H%$"# 
"#$
9%!"P!?!CE)(E
#%"%(CE)##
/0 ! 3* (11)2)3
"%!D"%#
"!!
'+''+ C2
-%(E "%
(C=@#
"1!!!+33
%%
!1#"%%
1#(C=@!
A!(E  #"CE A\"%
#
%!"!(C=@((E$
D(C=@(X"(ED
%"(C=@%
!"%%C%
D!!"%$%!%
(C=@(XD!"%$
">")#!<!(E$
%(C=@(
'+'', @ 
"%$X""#"(E
H#+3#\""%$#
!!"%$#"!
(EH"!A
A!A  #"CE (E \"
%#
"1!!!+33
%%
'+'' &)
!%(11"%$<!!#
-!#+33
(11"%$#!"K"K%
""%!
2CE 
C%
(C=@(
7(E$
!$""%$!"% <(
CA(E )#=:"%$!
7!CE(E!!!
/0 ! , (11)2)3
%"%$ !!"# "%$
!!!"!
9%!"P!?!"%$!)
(E #%"%("%$!
)      #  #      "%      !      D      
"%#"!!
'+'+ ?-
"(11"%$! !
"CE #
!(C=@%# !C%
D(C=@DCE "#

!!"#
]
EK#)K!"(11"%$$%!
sippProcessFrameNB()!"%%.
sippProcessFrameNb (pPipe0);
sippProcessFrameNb (pPipe1);
##<"!#! 
%C%%!<
%  <   #  % 1   #    
sippProcessFrameNb      #    #  $  #"        
sippProcessFrameNb1H"1"
X#X1(#
"<<!"!""11

!"" "##
D$#
"D")#$1D%$
$"<%
!<#!+,
', 
E66"AI%<##"
"(11
/mdk/testApps/components/sipptests/Performance/sippPerfTestBed
' #%%#"
#"! '"#1
<
!##''$ $ %
CCOPT += -DSIPP_RUNTIME_PROFILING
#! %(11"%$#1 ##!
!
/0 ! , (11)2)3
pipe->sippFwHandle->flags |= (PLF_PROVIDE_RT_STATS);
%#J !#
, !%<#"
 !%% !
"" !&A"
','" 8
Eleon/perfTestbedCfg.h !##&A#
!  
2 #
 (%!
& (%<!
 AF!G%
!
A AF!G%<
!
97:#9>2
 !""!
(EXF !&G#!M"(11
!"(11"%$<F !&G
E%#"%#
',' C2G
7   %  ! J  (11[7[(([178[7B    
$'<'('(9%'<+<'1"&''"#"[    % #
!"T"!
#! ""<" %#%.
UART: Pipeline 0 - Async mode
UART: Iter ItTime HW SW CDMA FW
UART: =====================================================
UART: 0 3488, 0, 0, 2560, 1927
UART: 1 2917, 0, 0, 2239, 1818
UART: 2 2788, 0, 0, 2104, 1558
UART: 3 3181, 2079, 0, 2647, 1652
UART: 4 3120, 2018, 0, 2586, 1632
UART: 5 3255, 2160, 0, 2721, 1765
UART: 6 3400, 2287, 3117, 2835, 1985
UART: 7 3496, 2394, 3213, 2949, 2000
UART: 8 3391, 2289, 3108, 2844, 1979
UART: 9 3509, 2407, 3226, 2962, 2105
/0 ! , (11)2)3
UART: 10 3520, 2418, 3237, 2973, 2023
UART: 11 3418, 2316, 3135, 2871, 2014
UART: 12 3479, 2370, 3196, 2925, 1968
UART: 13 3522, 2420, 3239, 2975, 2019
UART: 14 3388, 2286, 3105, 2841, 1984
UART: 15 3491, 2389, 3208, 2944, 1994
UART: 16 3374, 2272, 3091, 2827, 1970
UART: 17 3617, 2515, 3334, 3070, 2213
UART: 18 3512, 2410, 3229, 2965, 2008
UART: 19 3435, 2333, 3152, 2888, 2031
"J $"!!
<F%!"G$"!!
","!FCE '(E 'QA(11"%$G"H
!!
#"#"#" !%(E 
H%!H!
)! !""%.
UART: ** SW most often long-pole **
(    !     ) ! !     (E  
#-$%##?-!!?P%$
""(E"%
          (E  $  F&<  9  +<+G      %          J  
<#+!"#!\C%
%" (C=@(
")<<E%(C=@!
""@(C=@D")
+:%!""%$
(C=@%% !"%
(C=@(C%%X#(E!H
!"!+33
!!%%(E!
X!(E$!
#"!C%(C=@!#
"X
%% !& !$ FCE'
(EQAG"6"!!" !
"%.
UART: Pipeline 0 - Async mode
UART: Iter ItTime HW SW CDMA FW
UART: =====================================================
UART: 0 8176, 0, 0, 7315, 4215
UART: 1 8155, 0, 0, 7389, 3999
UART: 2 21918, 21204, 0, 7049, 4416
UART: 3 21798, 21084, 0, 7194, 5092
UART: 4 21816, 21088, 9041, 8599, 6903
/0 ! ,3 (11)2)3
UART: 5 21825, 21088, 8819, 11213, 7379
UART: 6 21824, 21087, 8575, 11142, 7212
UART: 7 21837, 21100, 9024, 11544, 7384
UART: 8 21818, 21094, 8548, 11128, 7164
UART: 9 21906, 21182, 8731, 11405, 7388
UART: 10 21832, 21097, 8954, 11330, 7169
UART: 11 21816, 21092, 8720, 11280, 7341
UART: 12 21834, 21099, 8885, 11273, 7132
UART: 13 21817, 21093, 8641, 11433, 7298
UART: 14 21823, 21099, 8492, 10914, 7125
UART: 15 21820, 21089, 8856, 11267, 7324
UART: 16 21812, 21088, 8511, 11234, 7115
UART: 17 21917, 21182, 8761, 11328, 7389
UART: 18 21823, 21092, 8779, 11151, 7129
UART: 19 21824, 21093, 8717, 11168, 7346
>")! #6!"!
#B$ "% (E @!! "(E 
#<""3"6!%$#](
!"!""(C=@%#6<!
(E$##"
%CE#
8".
!J%'3"%%% !
CE%JX"CE%
%  !     !                  
XCE!!
','+ 
7% !!
$"$7"%
% !A
9 ! "  "! "      )
$'<'('(9%'<+<'1"&'#''"&B<
"%"!P% !
Test Log : Total test cycles 84592509 LPI 1
< Time >|< Str 0 >|< Str 1 >|
------------|------------|------------|
90595 | F 0 S | |
2635632 | F 0 C | |
2728903 | | F 0 S |
5284035 | | F 0 C |
5377790 | F 1 S | |
7922274 | F 1 C | |
8015575 | | F 1 S |
10570564 | | F 1 C |
10664332 | F 2 S | |
13209008 | F 2 C | |
/0 ! ,, (11)2)3
13302303 | | F 2 S |
15857328 | | F 2 C |
15951078 | F 3 S | |
18495728 | F 3 C | |
18589018 | | F 3 S |
21144146 | | F 3 C |
21237908 | F 4 S | |
23782922 | F 4 C | |
23876214 | | F 4 S |
26431364 | | F 4 C |
26525124 | F 5 S | |
29069648 | F 5 C | |
29162931 | | F 5 S |
31717735 | | F 5 C |
31811512 | F 6 S | |
34356900 | F 6 C | |
34450191 | | F 6 S |
37005096 | | F 6 C |
37098858 | F 7 S | |
39643714 | F 7 C | |
39737001 | | F 7 S |
42291811 | | F 7 C |
42385582 | F 8 S | |
44931092 | F 8 C | |
45024382 | | F 8 S |
47579130 | | F 8 C |
47672880 | F 9 S | |
50218094 | F 9 C | |
50311396 | | F 9 S |
52865983 | | F 9 C |
52959752 | F 10 S | |
55505224 | F 10 C | |
55598519 | | F 10 S |
58153601 | | F 10 C |
58247352 | F 11 S | |
60792158 | F 11 C | |
60885439 | | F 11 S |
63440195 | | F 11 C |
63533958 | F 12 S | |
66079424 | F 12 C | |
66172713 | | F 12 S |
68727644 | | F 12 C |
68821400 | F 13 S | |
71366190 | F 13 C | |
71459471 | | F 13 S |
74014312 | | F 13 C |
74108086 | F 14 S | |
76652932 | F 14 C | |
76746219 | | F 14 S |
79301317 | | F 14 C |
79395066 | F 15 S | |
81939719 | F 15 C | |
82033005 | | F 15 S |
84588179 | | F 15 C |
"%!@ %V9Q(W
"Q!"%%V9QW"Q!
##% !D!>
/0 ! ,+ (11)2)3
"#H%#!""8
%<!<! +33>
"%$!!"#H!CE(EQA
H"<"
X#K"H
!
 !A#!%6!! 
#<$"%
Test Log : Total test cycles 20325024 LPI 16
< Time >|< Str 0 >|< Str 1 >|
------------|------------|------------|
91251 | F 0 S | |
257972 | V | F 0 S |
1148463 | F 0 C | V |
1312810 | F 1 S | V |
1350661 | V | F 0 C |
1526899 | V | F 1 S |
2379197 | F 1 C | V |
2553105 | F 2 S | V |
2604046 | V | F 1 C |
2783351 | V | F 2 S |
3618095 | F 2 C | V |
3793842 | F 3 S | V |
3860614 | V | F 2 C |
4038300 | V | F 3 S |
4860156 | F 3 C | V |
5037649 | F 4 S | V |
5126651 | V | F 3 C |
5304938 | V | F 4 S |
6102450 | F 4 C | V |
6279877 | F 5 S | V |
6392641 | V | F 4 C |
6570558 | V | F 5 S |
7347716 | F 5 C | V |
7525617 | F 6 S | V |
7659311 | V | F 5 C |
7837410 | V | F 6 S |
8593023 | F 6 C | V |
8770638 | F 7 S | V |
8926332 | V | F 6 C |
9103918 | V | F 7 S |
9837406 | F 7 C | V |
10015101 | F 8 S | V |
10193945 | V | F 7 C |
10371274 | V | F 8 S |
11082970 | F 8 C | V |
11260563 | F 9 S | V |
11463087 | V | F 8 C |
11641326 | V | F 9 S |
12329820 | F 9 C | V |
12507416 | F 10 S | V |
12732020 | V | F 9 C |
12910018 | V | F 10 S |
13576939 | F 10 C | V |
13754687 | F 11 S | V |
13998502 | V | F 10 C |
14176174 | V | F 11 S |
/0 ! ,6 (11)2)3
14821433 | F 11 C | V |
14999053 | F 12 S | V |
15265492 | V | F 11 C |
15443400 | V | F 12 S |
16066558 | F 12 C | V |
16244364 | F 13 S | V |
16532303 | V | F 12 C |
16709840 | V | F 13 S |
17310247 | F 13 C | V |
17488081 | F 14 S | V |
17797912 | V | F 13 C |
17975594 | V | F 14 S |
18555441 | F 14 C | V |
18733108 | F 15 S | V |
19065144 | V | F 14 C |
19243240 | V | F 15 S |
19797486 | F 15 C | V |
20322036 | | F 15 C |
#%P
F#V=WG"%%
#<"!
8!"+<("
X(E 6!#")"CE
(C=@%"
1H!###%#$ !#"
$'<'('(9%'<+<'1"&''"#1          
(C=@F6G !H".
#elif PERF_TESTBED_NUM_PIPELINES > 0x1
u32 sliceFirst[PERF_TESTBED_NUM_PIPELINES] = {0,6};
u32 sliceLast[PERF_TESTBED_NUM_PIPELINES] = {5,11};
#else

#elif PERF_TESTBED_NUM_PIPELINES > 0x1
u32 sliceFirst[PERF_TESTBED_NUM_PIPELINES] = {0,6};
u32 sliceLast[PERF_TESTBED_NUM_PIPELINES] = {0,6};
#else
")%%(E$J%%%
"!"
#%"!"
#+$*$%!'6"(C=@]
%P!$
"%%# "
!"!J<T%+(C=@(
"$ D7!!
X"T!"!"(C=@
#"$%#"
/0 ! ,; (11)2)3
( "/"//
('" 9
(  #$          "    !  (11  "%$    "!    
""D#%
+%!"!?(1!(11% 1
1" < 
% #DFBB&G"F%'"Q
G!"BB&#%%!
1% <"(11"%$BB&<
%(11CE %#H"
#)""!#
<"(11"%$CE !!
+"sippProcessIters()1#
#+<CE #
%"
9+!"%" %   D
"%$ !" %!#D"%$
 #D>+A#
#"7:&B8<""
!> %"#?
>+"CE  #
!#" "+"%$")$"
#H 
(' 
E+1L"%!#%<!
1!%<!!##"%$%
 !%!%"%$")
%! %!#ET"
1"!<#"%$%#%"
!63!"%1
1#"!;
('+ &"/&)
('+'" 
!"1J sippProcessFrameNB()(11"%$
%!B@>8%CE'(C=@ !
""
("CE (C=@"!#(11"%$%
<8"!
/0 ! , (11)2)3
#!<"%$%#
!C%!%%""
      $     "  9    !    "    
#$1!%<"!
('+' ?
E"%$#!)
%  " !CE(C=@
"%$!%1
63% sippProcessFrameNBFG!"H
%%!"!#"%$%!"
#%!#
"!?!"H%
/0 ! ,* (11)2)3
. 
.'" 
.'"'" HDE
.'"'"'" 
void sippPlatformInit();
.'"'"' 
"!!?(11"%$8A!?$%

"  ! H!?     # #-   
sippInitialize()"!
.'"'"'+ 
6 8
.'"' -DE
.'"''" 
void sippInitialize();
.'"'' 
  "!  !?    (11      2    "!  "          !?
!
.'"''+ 
6 8
.'"'+ DE
.'"'+'" 
SippPipeline* sippCreatePipeline(u32 shaveFirst,
u32 shaveLast,
u8 *mbinImg);
.'"'+' 
 1"!!!(11
"(11%#(111"!
/0 ! + (11)2)3
.'"'+'+ 
%3<
%B
%"%SHAVE#<
(11"!?)#"SHAVE
shaveFirst#abshaveLast9<"3% "
shaveFirstshaveLast!SHAVE3%#

!SHAVE!Z%SHAVE
##!%"
$
7 "#"(11!#F&G
%"F(11"%$ G%%
SHAVE!Q
%"SHAVE
#
SHAVE9<"%#%
%SIPP_MBIN
.'"'+', ;
pl = sippCreatePipeline(1, 3, SIPP_MBIN(mbinSippImg));
.'"', 3DE
.'"','" 
SippFilter* sippCreateFilter(SippPipeline *pl,
u32 flags,
u32 outW,
u32 outH,
u32 numPl,
u32 bpp,
u32 paramsAlloc,
void (*funcSvuRun)(struct SippFilterS
*fptr, int svuNo, int runNo),
const char *name);
.'"',' 
"!!(11 % "
(11 E!!" " ) !
      "  !# %    " 
F<#"?" !"!
"(C=@G
.'"','+ 
 
 "#!"#$! %
#%
/0 ! + (11)2)3
 
I  L SIPP_RESIZEL#"
!!
C E""## 
1 C""## 
 8#"" U#D
> &<"#D
 8#"# !"" #
!
%8  U"!%SHAVE
E$%"F!)
G  E  ! SHAVE             SHAVE 
#"5"
 9# !" %
%!
.'"' B)3DE
.'"''" 
void sippLinkFilter(SippFilter *fptr,
SippFilter *parent,
u32 nLinesUsed,
u32 hKerSz);
.'"'' 
 "!$ % #!% 
#'!#%" 
.'"''+ 
 
 !
!
B 8#" %" U#D
9<" "+<+!"
U#D#"VW+"%$%$
H"""#D!
%"##D
J- C?$?F<G"?
/0 ! + (11)2)3
.'"'( B)3$>DE
.'"'('" 
u8 sippLinkFilterSetOBuf (SippFilter * pFilter,
SippFilter * pParent,
u32 parentOBufIdx)
.'"'(' 
"!% #D&"sippLinkFilter
$ #D" F"%##"
 G"!#T!%sippLinkFilter%$"
#D#8"%"
#D%$#$T%1
.'"'('+ 
 
3 !
 !
$> #D<%"
.'"'. 3-DE
.'"'.'" 
void sippFinalizePipeline(SippPipeline *pl);
.'"'.' 
"!"FG"<!"
!? !"%'<7
&"(11Q(11F sippCreatePipelineG
%$9##
)!#"! sippInitSchedPoolArb!
!9#D
.'"'.'+ 
 
 1"
/0 ! +3 (11)2)3
.'"'0 3DE
.'"'0'" 
void sippProcessFrame(SippPipeline *pl);
.'"'0' 
$(11")%"""%##
 %#"  !"""##
$ 
.'"'0'+ 
 
 1"
.'"'0', 
#$1#%1F1
"G
.'"'* 3>DE
.'"'*'" 
void sippProcessFrameNB(SippPipeline *pl);
.'"'*' 
$(11")%"""%##
 %#"  !"""##
$ 8! !""!%##$"!
%7@#$
.'"'*'+ 
 
 1"
.'"'*', 
)#$1"19
/0 ! +, (11)2)3
.'"'"/ 8DE
.'"'"/'" 
void sippReschedule(SippPipeline *pl);
.'"'"/' 
"!"!)<!
!!?!!%
#""!"!
$?"$
"!"#DF#
"!K)(11#DG"!
#DsippInitSchedPoolArb()
.'"'"/'+ 
 
 1"
.'"'"" 8DE
.'"'""'" 
Int32 sippAllocCmxMemRegion (SippPipeline * pipe, SippMemRegion *
memRegList);
.'"'""' 
1!(11"%$"!"
CE(11 #D<A "!"1
X    #%X" ! CE 
!##D!Q%
!"CE 
.'"'""'+ 
 
 1(1%#

8B182BB"SippMemRegion
/0 ! ++ (11)2)3
.'"'""', 
sippCreatePipeline()1sliceFirstsliceLastQ
!!#
!
B#D%##J"regionOffset#"
 SippMemRegion  % # )## %     # (11
"%$%!# #"%

7X!     memRegList       1    #    82BB)    "
SippMemRegion9<!"%).
SippMemRegion CmxMemRegions[] =
{
{
.regionOffset = 0x0,
.regionSize = 0x1000,
.regionUsed = 0x0,
},
{
.regionOffset = 0x8000,
.regionSize = 0x1000,
.regionUsed = 0x0,
},
{ 0, 0, 0 } /* Null terminated List */
};
CmxMemRegions#12"1L"
%(11CE 9<"(E'CE 
$"%!###"(C=@(
1%Q$"
(C=@(%#"#D"CE <CE
 "%$%$#"!$
"CE K#?##"%
HFQ?G#%
$
"(C=@$F$?H
%G!

(%"H
"FQ?"I#G sippSetSliceSize(UInt32
size)##%?#"sippCreatePipeline()"
J"%$%8>- #%# -
"## #H!
"""
!
CE #DF"G#!J
"#D#!(!"
!"$#D$#F"
G%$!G
!CE "
/0 ! +6 (11)2)3
%"%$##D"CE %
"Q
1##"sippFinalizePipeline()
##""!%sippFinalizePipeline
1%"sippFinalizePipeline()
.'"'""' 
7Q#
7"!"#D%"
#"$"F$#!"
CE "CE (C=@"(E G!
"#"$!#<
H""I#%
# !" <CE'(E  %
!            1      #        I#      
#D"" Q%
"I#CE#
#?#?3I#<,I#
#"3I#
.'"'" 
.'"'"'" 
void sippChooseMemPool (ptSippMCB pSippMCB,
SippVirtualPool vPool,
u32 physPoolIdx);
.'"'"' 
"!#(11&$F
"(&G#JQAA7

.'"'"'+ 
 
> 1"#$
% =1
 (QAA7
/0 ! +; (11)2)3
.'"'"+ 8;%7)DE
.'"'"+'" 
void sippRegisterEventCallback (SippPipeline * pPipe,
sippEventCallback_t pfCallback );
.'"'"+' 
"!%%#$
     1  % #    #$  #   
!"#$
.'"'"+'+ 
 
 1"
7) 1#$"!#<#"%$%
" 
.'"'",  DE
.'"'",'" 
void sippDeletePipeline (SippPipeline * pPipe);
.'"'",' 
""%$ ##

.'"'",'+ 
 
 1"
.'"'" 3$>DE
.'"'"'" 
/0 ! + (11)2)3
void sippFilterAddOBuf(pSippFilter pFilter,
u32 numPlanes,
u32 bpp);
.'"'"' 
"!%#D #"
!?"#D" 
#D#" !9C%
"!#DD#""
%##
.'"'"'+ 
 
3 1" 
 8#""%#D
7 &<"%#DK
.'"'"( 3>>
.'"'"('" 
void sippFilterSetBufBitsPP (pSippFilter pFilter,
u32 oBufIdx,
u32 bitsPerPixel);
.'"'"(' 
"!%#D# " 1%
?#<"#%"$"
.'"'"('+ 
 
3 1" 
> ! %" K#D"
7 #<"%#DK
/0 ! +* (11)2)3
.'"'". B
.'"'".'" 
void sippPipeSetLinesPerIter (pSippPipeline pPipe,
u32 linesPerIter);
.'"'".' 
>!J#"(11!"1%
"','6"# %
#DH
.'"'".'+ 
 
 1"
 8#"!" 
.'"'"0 7DE
.'"'"0'" 
void sippInitSchedPoolArb(u8 *addr, u32 size);
.'"'"0' 
>!J#"(11Q(11F1G
%$
"!%"!"(11!

 #D%AA7Q(11!
)"#D
$9;: "!#"!
.'"'"0'+ 
 
 &D"FG!%$
-(?"#D
/0 ! 6 (11)2)3
.'"'"* 830DE
.'"'"*'" 
void sippRdFileU8(u8 *buff, int count, const char *fName);
.'"'"*' 
7 #
.'"'"*'+ 
 
7= &D"" 
 8#"#
 9
.'"'/ C30DE
.'"'/'" 
void sippWrFileU8(u8 *buff, int count, const char *fName);
.'"'/' 
E# 
.'"'/'+ 
 
7= &D%% 
 8#"#
 9
.'"'" 8303"(DE
.'"'"'" 
void sippRdFileU8toF16(u8 *buff, int count, const char *fName);
/0 ! 6 (11)2)3
.'"'"' 
7 ")#6)#9FC")LG
.'"'"'+ 
 
7= &D"" 
 8#"#
 9
.'"' C33"(0
.'"''" 
void sippWrFileF16toU8(u8 *buff, int count, const char *fName);
.'"'' 
%)#FG#D
.'"''+ 
 
 9#D
> #D"
 8#"#
.'"'+  7"(
.'"'+'" 
void sippDbgCompareU16(u16 *refA, u16 *refB, int len);
.'"'+' 
%6)##D
.'"'+'+ 
/0 ! 6 (11)2)3
 
 9#D
> #D"
 8#"#
.'"',  7+
.'"','" 
void sippDbgCompareU32(u32 *refA, u32 *refB, int len);
.'"',' 
%3)##D
.'"','+ 
 
 9#D
> #D"
 8#"#
.'"' ;3
.'"''" 
void sippErrorSetFatal (u32 errCode)
.'"'' 
("%%#%
#
.'"''+ 
 
 #$""
/0 ! 63 (11)2)3
.'"'( #B;
.'"'('" 
u32 sippGetLastError ( )
.'"'(' 
7#"%$
.'"'. #;1
.'"'.'" 
u32 sippGetErrorHistory (u32 * ptrErrList)
.'"'.' 
7<"" (11[@77>7[C(>7Z[(c@
#"#"!
.'"'.'+ 
 
;B #?
?"F3Gd(11[@77>7[C(>7Z[(c@% "
.'"'0 #;
.'"'0'" 
u32 sippPipeGetErrorStatus (SippPipeline * pPipe)
.'"'0' 
7<"# 
.'"'0'+ 
 
 1"
.'"'* B>
.'"'*'" 
void sippPipeSetNumLinesPerBuf (pSippFilter pFilter,
/0 ! 6, (11)2)3
u32 oBufIdx,
u32 numLines)
.'"'*' 
%#"#D#"#D%
!F1!G##"%$#
!"#D?#"!%"
!T! #"
.'"'*'+ 
 
3 1" 
> < K"#D
B #"? #D
.' 7)%
#6#%#%##%
sippProcessFrameNB
;% 
(11[11@B8@[98B(@A 1# ?
(11[11@B8@[7@(C@A2B@A 1
(11[11@B8@[97@[A>8@    "K% "  
$
/0""1"0"2&0(21032*/14(2 (+
/0""1"0"2&0(21/5(!14"14(2 0
(11[11@B8@[(7@A 1<!
97(:7)%7
$9;: #$#"<F'7YG#$"!#
%"
.'+ 3
@L# F(1..3LG(11"%$
#%3)## #%(11"%$
/0 ! 6+ (11)2)3
L#%%#;8L
#
3 ! 
 
1B9[7@Y27@([(E[1AA8: FaaG 7 %"(C=@
#H
1B9[28Y2@[(=2[>A@[(@ FaaG 8' #
1B9[([98Bc@A FaaG 7 (%
1B9[1[(=2[>A@[8[AA7 Faa3G E ("#
AA7JQ
1B9[728([@7[:7>21( Faa,G E (QA%
(C=@#AA7
1B9[A(&B@[>11@[>8( Faa+G E 9"%$#1
!%
#J""-
1B9[17>=A@[7[(( Faa6G E 7!!!F!QQ
"G
1B9[@8&B@[(E[Y2[2(@ Faa;G E @#(EH!
"
1B9[>8(A@7[>11@[7 FaaG E 1!!"

97.:I7
.', ;
.','" ;I
#L%#"%$
 
;K$9K$3K; >"FH#
! G?
;K!B K;K 1
;K8K$9K3$ 1"F $""
G@
;K 9K$9K3$ "@
;K8K $K9KJ$C (. 1
/0 ! 66 (11)2)3
 
;K!B K1CK8 CE1
;K!B K3B9K389KB; 9"  "
1!"
;K!B K3B9KB9KB; B" "1
!"
;K#K1!;K#; "(E #82BB1
!"
;KB;;9; K3;9 $"
;KK@K;KBB$K;88 >1#.$Q#D#

;K$9K;@;K
;K$9K31K3B9;8 ( " ! 
"
;K 9KB# 2<+<
;K!B KK8@KB$$>J B#$"7QF7Q
3#$G
;K9$$KLK3B9;8 <-#" %<#e
(11[Q[9B@7([1@7[11@B8@"
;K!B KB9K9; "!).CE ]
;K!B K1CK 2%<+<
;K9$$KLK8;9  K#"<(11[9B@7[Q[17@8(
 "
;K9$$KLK$;8  K#"<
(11[9B@7[Q[>8(2@7( "
;K8K9;8K#8$ 2%<+<(11
;K9$$KLK  8#"A  <
(11[Q[A[9B@7([1@7[11@B8@ "
;K!B KB;KC 91 (%F#!"G"(E 
-!#%?(E$
%!"
;K$;K8;9$K;88$8 "->(@
@
;K KMK$!;83B$C QA$HL%
;KK89;K3B8; 1<!
;K1; B#K$!3 H"%
!H?
(11[@(([(C@A2B@7[Y2[(c@
(
;K>B$JKBBK8;N;9; #$1%T!
/0 ! 6; (11)2)3
 
;K8;$K1; %-
"
;K3B;K3B - "P"
##%
;K1;K8;9$K3B -
970:;
.',' ;7
("# "%$
%""!"1#
# #""#1
SippGetLastError()F!;6G%$%
"%$% sippGetErrorHistory() F! ;;G
#"!9 sippPipeGetErrorStatus()F
!;G#$"% 
"P1$"1
      !  1      #          "%$  "  
"!
9""SippErrorSetFatal()F!;+G
%#$""%$%
"X#
$9;: AI#H66(11<%#)
1#
/0 ! 6 (11)2)3
0 1&2
&%"% %"
  #"# F$G
 <8"
3 3  $
 2 
B
 (11[A[A 8' 8' A1 
9(11[1[Q[A
(11[1[Q[A
2262,23
13
8' <1 8'
8 (11[1[7Q[A
(11[1[7Q[A
(11[1[7Q[A
(11[1[7Q3[A
8' 2262,
2313
7<1 8'


(11[(:[A 226 226 (1 +
B (11[B([A 226FG
2FG
226 B1
8& (11[7E[A 226 226 7%1 '3'+
7 (11[A&Z7[A 226 226 A#1 
# (11[:@8[A 226 2 :1 6
 (11[(C71@8[A 29916 29916 21 3'+;
#OB9 (11[A>:[A 29916 29916 AB1 3'+;'*'
'3'
+
B  (11[B2[A 29916 29916 ZA1 
  (11[C7>[A 2 2 A1 3
 (11[@A[A 2 2 1 3
38 (11[2197A8[A 2916 2916 191 ;
B9 (11[B2[A 226916 226916 B1
; (11[@A:@[>1[A 2 226 @1 3
1 (11[C77([A 2 916913 C1 +';'*
% (11[>8=[A 29916 29916 1 3'+
7 (11[[A 9162FG
2FG
29916FG
2FG
#1 FBG
+FG
97*:"/1&3
/0 ! 6* (11)2)3
3 3 >= 7= $7=
1#D
  '
B  '
8C  '
> 3 &'7:& 3 3
#OB9 , ' , ,
B + ' + +
 6 ' 6 6
 ; 7:&' ; ;
  '
 * ' * *
7  B'7:&  
B)7  '  
;  '  
%) 3 ' 3 3
1 , ' , ,
P/Q + ' + +
P"Q 6 ' 6 6
PQ ; ' ; ;
9P/Q    8
9P"Q *  * 8
8P/Q   8 
8P"Q   8 
8PQ   8 
8P+Q 3  8 3
(#D
B  :#D  8
  B  8
7    8
B)7  B2#D 3 8
B + ,%B2#D , 8
7  3AB2#D + 8
8C  A" 6 8
> 3 B 8 
8C  @!! 8 *
8C  9!! ,
8C  B +
8C  7:& 6
97"/:3 O7= 
/0 ! ; (11)2)3
0'" 
A #""AA7Q"
A # $ "AA7
%AA7"""
"AA7A U#DFA G"A UU
#DAA7FA $G
A"!!%
"      "  "              "  !!        
 !"!!
&!!# "
"#
% %"# %1#% #
"  !    A          "  V$W  $  
"'">&D%!
",#F#G.
%
$%
$
1
@  "    "        #  "  #        !!

0'"'" 
  !        %#    "%$          
 # % (11)#D F >&D
QG9 !!!"$ 
!""!V$%W
#
/0 ! ; (11)2)3
0'"'  8
9AA7 # %FVB(WG"
# $E##
"#"#"(AA7$
(#!$E
/0 ! ; (11)2)3
3": 2 8
0'"'+ @
9  Q! # ($E  #
! !F%#%G%#!
0'"', 2
  DmaParam%"%) # .
 > 
 3. AA7"AA7"""AA7
A U#D""
"  U  #D AA7    !! 

)C 3. $E"!!
)C 3. $E"
) 3. $("!!
) 3. $("
 3. 1("!!
 3. 1("
B 3. B("!!
B 3. B("
/0 ! ;3 (11)2)3
3"(: 2@
0' 8
 9-1()'A(1
++"
$ 9<#""17Q
!%%#))!
<!#$#!F"7EG
"
7=8J"17Q"
$ 26"
-2'26'23'>3
-1$7:&F3#G
-1$Z2=F3#G
7E'Z#'7:&,
,
97"":82%%&
17< 17<" +
+F%#G"1
 >  
=(Z8   =!?!
C(Z8   C??!
A 3  "
=BA   
97":8D%
A$17< $$(11
$#""H17<"
#"(11$%?!
9;%#$"17<   L<#
"5" 
7E'"Z2='Z#'7:&"-"
'"Z2='Z#'7:&!#D
/0 ! ;, (11)2)3
3".:827)
0''" 83
0''"'" C&
"1#%%<"
% %%F%%G"% ""5'F#
DG
<",F)G%%#%"<7:&E
<)"#"#D
%% ""F<G),<)F< <<
<3G,)F3G% )P",%%"
"%F#?<#!G.
(%%.<
(%"%%.<3<,<
("%%.<<3<,
<"%%
@"%%%#%%%
D%,#%%%%"%%!<<
<<3!9%%"%"%%
%#H%""C%"!"
#D%"%%##H%""
@"%%%#%%D%
Df,#%%"%%!
3!9%%""%%
#H""
 $<)#!%
"%%%%%!
E%#9<"#)+
+%?.
7 :
& E
/0 ! ;+ (11)2)3
%7':F"G%
&'EF#-"Gf"7':&'E"!
"#"%#!"#-#" UF)
G%% "#-"%%
"#
9%<<%%%% "%.
E%FGFG<)F<<G
E%FGFG<)F<<3G
E%FGFG)FG
E%FGFG)F3G
" E%FGFGFFGFGG<
))!'#-F G""
"%! !"%%FG
%%.
<a<`
%abF<`J<G
a`
abF`JG
%%'%%%%
A" D %% F!G# "#D
#""#"%%J<",
#""#D#
/0 ! ;6 (11)2)3
3"0:;8&&8C
8#>C
?#"%%9%%
FG"P#-"
0''"' )
"3## #%!
##3#$%8A%)P!
%"<#$D"#9<"
+!#$'!#.
bFee#Ggf
&5!#?$<DDDD"##"#$
!" #"%%" ##%-
 
9"L<#!#'#"'<'"!
#<FG#$f#$T
%'"
0''"'+ >)%7
9 7E   #$    #!   # " 9  # 6  #  #$   
#.#$#$#$#$39&#$'#$'<
#$'#$3 '<9FG#$
#$#$ #$3  "3!&$ #!#
#"%%"#!$"L%f
??
0''"', 3%
 %##%#%
"#)P###"#
##!#%#FP)PG#
)PF#"#G""#"%%#"
##"%%
0''"' >=
#$##$1"%#"+6 "
#%9#$%%
%"!"P"6#
 "%$%#+
0''"'( $
 #),#"# " U(11>&"M8N"
%?"##8"
"#D"<)"#%%
#"#<<#"
/0 ! ;; (11)2)3
0'' 82
 > 
 
+.
3.6
17=@J"<
9%
9
 .
;.,
.
6.
;

*
3.
,
+
6
3.
$(
J$1b$17Q
J$1bF$17QG'
J$1bF$17QG',
7
7
9#F%%G
9)PF#"#G
&' !F"#$#!G
J1FG
J&
> !
JA"%%%-

JA"%%%-
F"G
1$&D
""-6#%<#$
"#D99>
&$#!#F%%G
2$%%
2$
1"#6#
#f=##)
&@P,Q +.
3.6
<[J<)%%%
<[%J%8%%F8b3G
"$%%# %
"%%
&LP,Q +.
3.6
[J)%%%
[J"8%%F8b3G
/" ,.
.
*.+
;.,
B #"E%!
(!#F#"#<
$G
&J<
&J<
&J<
&3J<
B #"E%!
(!#F#"#<
$G
/0 ! ; (11)2)3
 > 
&J<
&J<
&J<
&3J<
+ ,.
.
*.+
;.,
B #"E%!
(!#F#"#<
$G
&J<
&J<
&J<
&3J<
B #"E%3!
(!#F#"#<
$G
&J<
&J<
&J<
&3J<
)P,Q .3 (!$"%%8F8b3G
7)/"
+.
3.6
&$
#$J"E%@<"&

#$J"E%><"&

7)+
+.
3.6
&$3
#$J"E%@<"&

#$3J"E%3><"&

%7 +.
3.6
=!#$( !#$
FHG
1$(#!"#
/0 ! ;* (11)2)3
0'+ 9
 26FH!G"
)2'26'23
)1$7:&F3#G
)1$Z2=F3#G
$ !"136""
()'A(
7="
$ 1()'A(136"

97"+:Tx2%%&
0'+'" 92
 > 
"A
+.
3.6
17=@)"<
9%
9
" 
3
+.,
(
J1
J
99
J2! !5" 

J2! !5"  
A
J!
J
B"C(Z8'=(Z8%!9(AB@
$(
J1<$b(11$F !
G
J1<$b(11$'
J1<$b(11$',
=!%!
/0 !  (11)2)3
 > 
;.6
*

J=(Z8
J&$1
J!
J91
B"=(Z8%!9(&I1>7C
B"=(Z8%!9(97>81>7C
 3. B%
 3. =!%!

J=(Z8
J&$1
J!
J91
(E 3. ( %1BI$"
?FC(E)G
&$1 3. ( #"1BI$""
?"?!
FC&1#$"
#G
!E 3. ( #"1BI$?
!!F=E)G
91 3. ( #"1BI$""!
"?F
C91G
(E 3. ( %"!
F=(E)G
" %

&$1 3. ( #"""!
"!!F
=&1G
" %

/0 !  (11)2)3
 > 
!C 3. ( #"!!!
F=C)G
" %

91 3. ( #"""!
"!F
=91G
" %

((>D 3. 8#"1BI""?
=!91"!

" %

(@>D 3. 8#"1BI""?
=!(!"!

" %

/0 !  (11)2)3
0',  
 26#7EF&-&G
$ E &
3) +<+
B7= Z<%,6,
$ 26#7EF&-&G

( % &
#)&#!
   %    #          (87  ! "           "  
!# "",&#L
%#!"
 <%%"*<#&
%$+<+##<&::#
)# %$3<3#(
"*<@<#%"
1< %"%=K
"%.
V '=
i=
1
9
Wi
Vi
i=
1
9
Wi
%=<##F<GE 
%          <    %      #  !    #
D  #%      <      #  <          
#%!"
"!#)#!
"#DH#<%"
"#DH"<%
""#D#<%"?
% %<<#""
%CC"%.
N
=
max
(
NF ,
(
L
))
TH
1
=
N
T
1
TH
2
=
N
T
2
%89)#89B<#
)#8!""!"
#<
/0 ! 3 (11)2)3
9""!FG#&
1!"<"%<#$<#",!%
#$C%&!F:7&:#G&"
E#$!
#%%%<!&%&>:7&:"
&>D"<!%#D
0','" 
0','"'" >)%7
&$#!#" <# SigmaParam::blcGR
SigmaParam::blcRSigmaParam::blcBgSigmaParam::blcGB#F(5#$
##$#!G
0',' 2
 ( A       SigmaParam   %      "%
) # .
/0 ! , (11)2)3
3"*:>%?>
 > 
3  3.6 9
+. 9%
P/Q 3., &!J!2FG
3.6 &!J!2FG
+. &!J!2FG
;. &!J!2FG
P/Q 3., &!3J!2FG
3.6 &!3J!2FG
+. &!J!2FG
;. &!J!2FG
3. 8LJF%
G
"<#AE
& 
;., A<%J
 @#)
 7E".
J1
J&
7R . &-F.:7&:.7::&.:&7:3.&::7
7#8 +. &.#$":71<
1.#$",

78 +. &.#$"71<
1.#$"+*3

7> +. &.#$"&1<
1.#$"6,

7#> +. &.#$":&1<
1.#$"3;+

/0 ! + (11)2)3
0' 8&3
 2,#7EF&-&G
$ :':##!
C<
A!
1)#'!!!F@'E&G
1)#9
C
3) +<+
B7= Z<%,6,
$ 2,#7EF&-&G`!!

7E &-)&%
D"#D
9&":':###$!'"
<!+<+<$:":':##
"%<.!C%""<
"%A"<!# F::#G<
7&< 
9&:':##F#$!G##""
<"%!
  #    "      7E    #  #%  6    6  #        %  F  #G  
#"7E "##"%#D#?%
"$B(#"#"##
#D#?%"$B(#"
"#
/0 ! 6 (11)2)3
0''" 3
0''"'" 
""!!%##.
(!!#"@'E&F@<')E)&G
(!!#"9F9G
+6)#BC
)#7:&
9!!#D@#D#
    F #  G    #  "   <   
 !#"#D
#6,##
9&@'E&!!F"!
G      "      "  )&      9  !!          
!"%&)&
B  C  !!         B      "    &      
%FG")&7:&!!
"&F7:&G")&
8!!%"!#

0''"' 
(!"<!%$#""Q7E K"
#D#DK##"F#G
""3)#"F%"!%
#%$##%G#
" < !
&(@"#D#6,##@"
FQZG!"%"!<%#,
#%"!<%#%
FG8<""!<#
>2 2
3 7'&!!#
JC?!
J=!!
3.; 1#
6., Z)""!<
3. Q)""!<
97",: 72
/0 ! ; (11)2)3
A"!<":"&%##",
<F"#G"7&"!<
#"%""<!!
#"%7&<##%
?#%!#
8,#"Q)#3#"Z)
<"QZ<"!"%.
"FQZGHF<3999<999G$""%#

"Q)<3999#Z)<999#%"
<f<%Z%#
!%!!##F!!G
#%!"<<"#
"<f"H
"!"!!##F?!G
#
"""#DH# #D
K""  K#D 
"%"")99>% #"""
"##99>
"%"%""%#%"
 %1%"%
#<""8 ""%#
 #!"!#"#D#
##"##
0''"'+ 
A<!%$#?"<%
<+<+#&F#GF$G<#"
<#F"<G
F"<G!" 
#"<":<7'&<!
%#" 
%$##!"<#"
0''"', #O#77<7)
7E "!? <)!""
2FEG%E *7"'889#
:':##!##%:F<?T
G:#F<?T#G&#!#
#<F#<GF#$G%D!VW
%#<%:':##!"<
!      %  :':# #    VW
!"#$!   %#<+<+
D!#:':##!"!<
/0 !  (11)2)3
" +<+$:':###$!
  # <      #   "%.  "    #  $        :':#
# %"T%f%"
<F<"$G"<#
<":':##<
  %%"f
 
0''"' 
 7E!"96#2FG"26
!#*7'88/:;<
%#"!.<,<,
<."%<&9""
!<&#$#$&>"
#(M,N#+
,<,  .    "          H          
*7'88/:<<*7'88/:<<
   *7'88/:<      <       *7'88/:<
<3*7'88/:<<,
0''"'( ;OC>
"#7E  %#" !  #"
!!#DF8$
#D#D#6,#G
A  "      "    #   % 
7%1..1"  7%1..1(  7%1..1($  
7%1..1#"<F""&G%

#"?!% #
<#"6,<6,<?+6<+6>"&
#J7%1..1#9
&"#7%1..1
# #?#!JF<G)")P
J?'!<%'F=
"??G
%#.$#1<
  $            #        #        "
>%#"9%
!&"<<#$"
<<#$# ""
#"<F<#$"&G%%"
)
 ! "      #"    ?" 
!,##%-!!#D23
/0 ! * (11)2)3
7!! >"
"%% ?!!FG
%-!!#D7?
@'E&!!#D"  %"
%#"%#  %"
%##"%#
%"!%"
0''"'. 3
9F9G!!##"@'E&!!
 "@'E& "#%
!.#%#?!?E
!&9:.#<

/0 ! * (11)2)3
3/:2
9%  7>F "G ##< "9 9%
7   <%7> " P  @  "
#X##!#
"% ")!9"%
.
("<# %#
("<# %#
("<%" 
("<%" 
("F G<
0''"'0 B
"B"
RawParam::statsPlanes#9)&%
9&B#%3<3$%
"%X.
/0 ! * (11)2)3
3":32<&8$D8$E
[ [1, 2, 1],
[2, 4, 2],
[1, 2, 1] ] / 16
$%"7b+:b+&b+<-%&
"$8D" #<
#"<?#Fd%`dGJ,%%%
"!
+6##++23&<
 #"<9<"<<36* #)
"7E#signstatsFrmDimificant#<6F
*Gf#*#
7!!#D
!#""<"!!#
#""
%""
0''"'* 8#>
""7:&&
B)&"
7:&   RawParam::statsPlanes
#
@##;23&<;
 #"<9<"<<36* #)
"7E#; #<36F+,Gf
#+,#
/0 ! * (11)2)3
0'' 2
7%  RawParam%"%) # .
 > 
3  3.6 9
+. 9%
7 *.6 1&J<D!#
"
3. 1A$J<D!$
"
7  3.6 AFG"D!#
"#eb"
#F#1M3.6NG
+. AFG"D!$
"#eb"
$F#1M+.NG
7 3.6 8BJ#?"$
!%%#
FG""%
#<!
+. J9":C<
. J9":<
;.,   #    J  9      "  7'&  C
<
3. #J9"7'&
<
; (!"!#E"
"Q K<#DK#
(!"<!"
%""
, 7:&#
3.6 &<!
3 9#
 :(.
J,<,
J<F&9G
. %J
; B#
6 @'E&(#
+ C'<
, C'<#
3 :':##!#
/0 ! *3 (11)2)3
 > 
. &-E&"
& !%)&#
<
 7E".
J1
J&
P,Q
MN:7<#,
MN:7<#,
MN:7<#,
M3N:7<#,
3.6 B%<%#P
926
+. :<92
> 3. @!!#D#J#)#
 !1"@'E&(!9&,
11#9& 
%#!
. #"!)11%
#%11"
%H![[
bH111
1
*.6 BC1
+. 113
. 11
;., 11
3. 11
3 
3.6 9
+. 9%
! !
3., 1JFG
3.6 1%JF%G
3. Z[8J#"!J
+. Q[8J#"?J
 (!" F)PG"@'E&!!
3.6 Z)
+. Q)
/0 ! *, (11)2)3
 > 
) 8#"<")P")P"<"
@'E&!!
3.6 =#Z$)
+. =#Q$)
9 3.6 A$<"<F<<#$
"&G
    "< F <#$"<G
#
+. &<"<F<<#$
  "  &  G              
"<F<#$"
<G#

3"P""Q X")" 
*. 9 X8(FG <)"
3P""Q X")" 
*. 9 X8(FG <)"
9 3.6 ")!" 
+. ")!" 
7 +. =   #  #  ! "  <  #  "  7

! !"9(!!
1JFG
1%JF%G
Z[8J#"!J
Q[8J#"?J
 (!" F)PG"7>"
)"!!
3.6 Z
+. Q
> 3. "#
B> 3. B#
87> 3. 7:&#
97":8&?272
/0 ! *+ (11)2)3
0'( B2
 2,#7EF&-&G`#)
$ B'!!"<
"#)
3) 1!##!"F<$G
<"3<3:
<"
B7= 8
$ 2,#7EF&-&G

B!F!)5G"D#!%#
      "  <      "  %  "      "          
!#"#!%!)
!F)"#9$G#
#!%#"
#"#!
<!#<!
#"!
!FB(G &-F7:&E"
G
  #    "          #  #%  6    6  #        %  F  #G 
#
0'('" 3
#&1"
Q2""
"%%?
<?,<,!#
"!""#""
 #&",#&
-&>"&>"
0'(' 2
  LscParam%"%) # .
 > 
> 3. Q"!
C *. E"J#!",
/0 ! *6 (11)2)3
 > 
1 *. C"
3  b1
b&
C 3. &<"=M66N"
 "<$#
" "<$%
#
/0 ! *; (11)2)3
0'. 7O2
 7E&,#
$  #H%
CH.!#& #
!?!"CA#)!
1%.%?f!?%?#%#

3) CH.+<
1%.,<,
B7= Z<%,6,
$ 17:&6#F#)%G
916'29B

& )H!%!
#7:&'B
/0 ! * (11)2)3
3:9?%%%&> 2
0'.'" 3
0'.'"'" )
&)#$#$$2$6
#<"#"#$
$"$"#7E #!+
0'.'"' 
& @< 
"3.#&+'%$%%F$G
"#<"7:&F#G"<
(11& #!?!"CA
F!CAG%#)!CA
!##"$"
%(87%# "#)!#%?
!" <!"CA
%#)!"CA&
#D
,7:&&-- #<" %<
 %"&."F7G%
F:G<%#F&G%#<f&-
:7&:f" <&-7::&&-
#A#1.."#f,&-
"%.
:7&:b
7::&b
:&7:b
&::7b3
F""7:&Eh:7&:-!"E<
!"&-G
0'.'"'+ %
 6#!$"#"
"% 6 #  6 #  #P)P   % ##
!"(&"%#%
@"#6#"%.
RAW16 = RAW8 << 8 | RAW8
@"#6#"%.
RAW16 = RAW10 << 6 | RAW10 >> 4
%" A#1.."#"%"
 "%6#$"(&"6#7:&
/0 ! ** (11)2)3
0'.'"', %&
!")!)H%"
#%7:&#""!
%#V#W %!"
&7:&1%%!%")!
"(1i#"<
E% "%#$"
PJ #$"# 
0'.'"' B$
B"#&B7:&#
#'#B"7:&#X
VEW"%))!%$"
%)! #$"%".#"
%(87%F"!#%G#"
! !#%#
#"%)(87"%%")(87
"%#"F
G
B%)(87C)(87"7#"%.
        a l p h a
=
(
l u ma
+
 g ·  g r a d ie nt
m
u lt
+
o f f s e t
)
·  s l o p e
 FG
        R o u t
=
Rl o w·
(
1
a l p h a
)+
R hi g h ·a l p h a
 FG
E*7""%)(87!*  
""!'#!"
/+1')# F#
O#[)G%MNP:&
%7
0'.' 2
  DbyrParam%"%) # .
 > 
3., :! <)2F;G""
#!"?'!

6.+ 1!"!"&A"
"&"3F7:&G=

,. >>
J7:&
J&:7
J7&:
/0 !  (11)2)3
 > 
J&7:
J:7&
J:&7
. >%J
;., %J
3 97&?9%7:&E
 BC9%7:&E
. &-.
J:7&:
J7::&
J:&7:
J&::7
F"7:&E):7&:G
 %B7:&
!#
 @#1%.
JCA'&#%!
#$#!
!
J1%#A#$#
!""!
; @#B%
6 @#B!B
+ @#7:&
,.3 "#
. "
&3.6 A)%  D  F  H! #G   <
"
+. A)%FH!#G6)#
C 3.6 E7"B!
+. E:"B!
;. E&"B!
/0 !  (11)2)3
0'0 #OB92
 916'29BF"#
" G
>! B8!#AD":
9$ 2+<+
B#D Z<%,6,
> 26"916'29
 
A:'BFBG B"(1
"%T"!.
7"B%9HAD":FA:GH
!"BFBG
0'0'" 3
0'0'"'" #> 
A: %)"H($?#+<+
#"%)"H;<;B #
%)"H#!!
 "H  %      %    %     #       # #!  %
:)   "      # " !  $
X      %    "  X    "    :  $  E  !  
X"(##""H
P!AD":%##
?##"P
#!##MND"
"H"C%!
 D!%)"HL#
T!%BA #BA
#$##9$)
$$ !!?
!>$?"+<+?"<+<+:$
<"("+<+$#"
<$D"($6X
"<$F !#G
X"+<+$
A: %.
A
A:)
A:) AD":"%!
/0 !  (11)2)3
%A: A:).
B#
>916"F29G
%3
A:B##'#
$9;: E!A   #  : %  #
#!#"<#$#"#
#D1:$#$
!    #  !  (    #    #H  
""H"D" D
":$%"!":$
 # FD"(G
D
E!A:)##H$
0'0'"' B9DB9E
 !)B
#"<
!#F<G$"%<"
.
/0 ! 3 (11)2)3
3+:%"O"'0&<7
/0 ! , (11)2)3
3,:%"'0<7&
3:?%?<7&

""##B%#
"#<"E%
!!%#F
"$G%%$  
)"#
#"
#"%## AD <
D %6$
  %  #    F #$G    #%%
$)!# %<6VW
A"2FG%&
!"#%).Q<#$
Z<<$.
/0 ! + (11)2)3
3(:%7B92
#$<  <# 
#%#
B#$*#
8 #$" 
#$"8"$)
" $)&5 $"
!5"$) 
!#
#&$! 
" %"< 
<#< 
8 #&$ #"
<#$&$ # 
D!  "<< "" ! " &$
 "!#!#"
/0 ! 6 (11)2)3
3.:>:%77)<)?
7
#
0'0' 2
  DogLtmParam%"%) # .
 > 
*.6 =3+;*3+B"A:
: !!> #"
""#D""
 %?%
X! 
%"K!
#X"5
+. 8#"B
., "B&$:! 
3. B#D%.
J1#
JAK#
JC? <)"! <
)"
 ( 916MN
*. 29"#"AD":
?
. >!.
JA:FB#G.
AD":
JB)A:#'#>

JAB#'#>
AD":
JA:`B.
AD":
="" 3. 1X_+"<$
=" 3. 1X_;"+<+$
 ;. :D"929
% 3. 1#"#29"
/0 ! ; (11)2)3
0'* B 3
 916'29B
>! B%
9$ <
B#D Z<%,6,
> 916'29B
 
BA ;<; B%
%"%# "
"% "!"
"!"""
#%"#V:A7"W#$
""%!>%#"<
;<;#%"<"%.
I
out
=
i
=
1
n
W
i
I
i
i
=
1
n
W
i
%         <      ;<;  #    E       %    
!
/0 !  (11)2)3
30:9?%I&B 2
/0 ! * (11)2)3
3*: 7?7)
3+/: &&&
@%#<("(HADF((AG#
+<+%%<+<+%%#<
##<;<;%%%#"
#<##<%+<+%%<%"((A
!#<%+<+%%"<%"!%E@D!
,* +<+((A!"  %"  <F
!!??!HG(;<;%
((A%%+<+"# K#D
@((APB2!PB2
#  "   F #%G 9 
!% #V9W$#"%"
9$%%#!#"",%%#
   "! " !  "  <  9 $# 
")P,<,!"$#%%!
#
69X 3)#%9X
#)X)#%!"%.
>H 
 
 
 ,
/0 !  (11)2)3
3+":3)?G
>H 
3 
P%!<#%)
#"!##%MN
(""%<%
<"%%D##%
    ! E        
F%##PB2##%G#
    !"    V  W                <    VW
!!!
0'*'" 3
0'*'"'" #2
0'*'"'"'" CB97
"%%%((A%#%.
assd = assd >> bitpos;
if (assd > 31)
weight = 0;
else
weight = lut[assd];
"%#%<"%VWV#W#
.
% Generate programmable parameters based on desired denoising strength
function [ lut bitpos] = makelut(strength)
if strength < .001
% Avoid division by 0
strength = .001;
end
if strength > 2047
% Limit to prevent 'bitpos' > 11
strength = 2047;
end
bitpos = floor(log2(strength)); % MSB position
if bitpos < 0
bitpos = 0;
end
npot = 2.^bitpos; % nearest power of two (rounding down)
alpha = (strength - npot) / npot;
divisor = 4*(1-alpha) + 8*(alpha);
sigma = .05;
if strength < 1
% Reduce sigma when 0 < strength < 1
sigma = sigma * strength;
/0 !  (11)2)3
end
lut = (0:31)/31/divisor;
lut = exp(-(lut.^2) / (2*(sigma.^2))); % Gaussian
% Quantize the LUT entries to 16 distinct values
lut = int32(uint8(lut*16-1));
end
#"!VW"!
D!" VW<
B2%<!":VW"
"%:%%%C%
%FVW<%"%G%V#W
!#$%:7"Fee#G3B2#
%>%+#"Fee#G<B2&$
V#W%+#""#%"
 )?% B"  %     < 
 " # <B"V#W  
%""<%#
0'*'"'"' ?7B9
)#B2%""!"
""(#!)5
(87"%""F
"G#-""!
""-!%#D"
 -!)"%%!
"D"!"""<
"%".
I
=
I
cos
(
(
x
2
+
y
2
))
4
%<`)P##
#M++N)B2%"
H))"!(B2#P%
)"""D
"%#%<"!##P
B2"?VW"!"D%
"!">"=%" """%

function [ lut bitshift ] = gen_lut_bitshift(angle, width, height)
w2 = width/2;
h2 = height/2;
% Maximum value that can be put into LUT
maxval = w2^2 + h2^2;
% Find how many bits to shift values right by, so that we can use
% an 8-bit LUT
/0 !  (11)2)3
shift = floor(log2(maxval)) + 1 - 8;
x = 0:255;
x2_plus_y2 = bitshift(x, shift);
cornerval = sqrt(w2^2+h2^2);
lut = round((cos(sqrt(x2_plus_y2) / cornerval * angle) .^ 4) * 255);
end
0'*'"'"'+ %
""!"<)$
#""#%*)
)#B2 B2<M3NB2
<M3++N("$< )B2
"%"M++N
"%#%<"!B2":.
% Generate two 9-entry LUTS: one which spans the range [0,32], and one
% which spans the range [32, 255]
x = 0:255;
lut1 = uint8((x(round(linspace(1,33,9)))/255) .^ gamma * 255);
lut2 = uint8((x(round(linspace(1,256,9)))/255) .^ gamma * 255);
0'*' 2
  YDnsParam%"%) # .
 > 
, KK#",%$)#
"
.6 )P"<`#")
#B2%!"
+. >%
3. &!)P"D<B2
BP,Q 3,)#B2%BM<N
3. B2F<dG`;
;., B2F<dG`6
3. B2F<dG`+
*.6 B2F<dG`,
+. B2F<dG`3
. B2F<dG`
;., B2F<dG`
3. B2F<dG`
/0 ! 3 (11)2)3
 > 
 9,<,)#B2
3.3 7%33B2
*. 7%3B2
 
3. 7%B2
. 7%B2
BP/Q B2":"
3., @3":B2"M3N
3.6 @":B2"M3N
+. @":B2"M3N
;. @":B2"M3N
BP"Q B2":"
3., @;":B2"M3N
3.6 @6":B2"M3N
+. @+":B2"M3N
;. @,":B2"M3N
BPQ B2":"
3., @":B2"M3++N
3.6 @":B2"M3++N
+. @":B2"M3++NF]G
;. @":B2"M3N
BP+Q B2":"
3., @6":B2"M3++N
3.6 @+":B2"M3++N
+. @,":B2"M3++N
;. @3":B2"M3++N
BP,Q B2":"
+. @":B2"M3++N
;. @;":B2"M3++N
3. "F,%G$)#
$=)#F,%G$)#QZ!D
3.6 Z)DFG
+. Q)DFG
3  3.6 9%
+. 9
/0 ! , (11)2)3
0'"/ 2
 916'29
>! @$1#F#G# $
("!## $%
9$ 3<3+<+;<;
B#D Z<%,6,
> 916'29 F$G
 
 $)"!
$.
2.!$
<
C
 !"
  "  # # $   ;< ! 97    <;
? 97  # "  ! "  #  "! F
: G?" $#"3<3;<;"$?
< X#?
  " #  FG X  #   !
F!'?G X#3%3%<
"    $            F%G    <  F    21.."  
21.."3#G 916!9#!
"F;"G X#F#G
9%#$" #$!"%.
# #"<$$#$

/0 ! + (11)2)3
0'"/'" 3
0'"/'"'" 8
7!9<%U
%$"%"#
)!!#%
   ) #        "  F 
21..(    21..(3  #G  9  <  U    %  %  
#M+N"M+;+N
%!E%""j++;+k
"<%3<3
#$%"%X.
[ [0, 1, 0],
[1, 4, 1],
[0, 1, 0] ] / 8.
/0 ! 6 (11)2)3
3+:27)
0'"/'"' 9<
P    !  "          $        ?  "    #          
#  C7@(C>BA F    21.."  #G P      $    
!#"%#A@B%#$
<(7@8[1>("!%(7@8[8@:"
!F21..#G
0'"/'"'+ $%
"##%#916.>=@7(C>>
28A@7(C>> F21..#G"%%" " 
D"<>=@7(C>>28A@7(C>>
"%.
>=@7(C>>b`'
28A@7(C>>b'>=@7(C>>
# 28A@7(C>>      " >=@7(C>>  %    %      # 
!.916#MN
#MN!<
<3<3#""F##G
!M' '6N <#  M28A@7(C>>
>=@7(C>>N<#%."<"
" '6d>=@7(C>>'6d>=@7(C>>f"
'd28A@7(C>>'d28A@7(C>>
0'"/'"', 
"!##%
     %  #%   "     916    %   #       M N
21..#
blend = (clamped sharpened data * alpha) +
(sharpened data* (1-clipping_alpha))
0'"/'"' >
"!## #)#$#
5#,"21.."#"##
$%-#D!$
F"%!"!G#"
#5#+"21.."#
0'"/' 2
  UsmParam%"%) # .
 > 
3.6 2$?"K#
F916G
+ >(
/0 ! ; (11)2)3
 > 
%`
, ( (#
#;<; $F"#G
3 >( 916M
N
. I? %"<$F3abI@78@B[(c@
ab;G
 3.6 8!F916G
+. 1!F916G
 +. (B1CF916G
 ( 
3.6 >J916MN
+. 2J916MN
/" ( 
3.6 7F916G
+. 7F916G
+ ( 
3.6 73F916G
+. 7F916G
/" ( #$X
: XF916G
: XF916G
+ ( #$X
: X3F916G
: XF916G
0'"" #3
 3FG"2'267:&
>! -(!#)"!
-7!"19!"
-A!"$
-:!"F!G
9$ 3<3
B#D Z<FG%,6,
/0 !  (11)2)3
> 3"#)2
 
: "#""!.
7?#"
719
A$
:2"
 7:&#"7:& #:1.."#
 )"#
$9;: E "1%7:&
"&#"###"&
 # 
A%?"#",<<#$
0'""'" 3
0'""'"'" 3
  L !     #   "  
!"!#
0'""'"' )
A$    !      "  $        %        "
!#<"
%#D"!#
 "%.
α=(max(R , G , B)offset )slope
 MN"%% "!"<F7:&G.
!""###%F7:&G
<KBB"%.
 FG
%##X#""%.
R
=
R
α+
L
(
1
−α)
G
=
G
α+
L
(
1
−α)
B
=
B
α+
L
(
1
−α)
/0 ! * (11)2)3
0'""'"'+ 
97:&#"7:&#B
"%.
Cr=R
(L+epsilon)Kr
Cg=G
(L+epsilon)Kg
Cb=B
(L+epsilon)Kb
EBH!FG#III##X
##8"#
#"#!"%.
Epsilon12 = (Epsilon8 << 4) | (Epsilon8 >> 4)
 #"#"#! 
0'""' 2
  GenChrParam%"%) # .
 > 
3.* B#D%.
J1#
JAK#
JC? <)"! <
)"
 &F#)G
;., %J
3.6 ! "$!
+. >D "$!
;. ("19!92F+3G
 X"B!
3.6 E&"B!
+. E:"B!
;. E7"B!
 X"!
3., KI#K!
3.6 KIK!
+. KIK!
/0 !  (11)2)3
 > 
;. KK!
/0 !  (11)2)3
0'" 3
 229!B#D"
>! A % #$?
(% FG
#%#B1D
H!
9$ 3<3+<+;<;
B#D Z"<#)
%6F,6,B%G
> "<#"
'!##!'<"
!
 
 !! $?
 #3<3+<+;<;1.."#8""?"
$?# J$?#<#" 
 "<"<#
%$
<"#"#
!# "1.."# #
 ' ##%
#%! "<f<
 1<H
 )< #"#
!#++
0'"'" 3
0'"'"'" 7
1 #)3)
##%#B%
!%"!#%#
%!! D%$B#""%.
alpha=(sub-sampled(luma)+offset)slope
output=origalpha+median(1alpha)
ED#1..#>D#
(FG#2FG
7 "  # %     #   # "     
1.."##91629""916F#
/0 !  (11)2)3
9>7# "1.."#G29 )
"#)##)#"%5.
(#)#"1.."##?
#)#$<#)!# %
#D P
#DB(#<"!
#DK#"81#F3#
""#H!G
#DK1(#D""
FH!%81eG
0'"'"' 
 # %"!.
 "<#"
<<K#";<;$!?
92%7%
47<''-2)"<
,0..)'
0'"' 2
  MedParam%"%) # .
 > 
3 (#%#D
#"$?
<$?
* (##?!#)"
"#
 (###"
"1
,.6 *)#><C7@C(>BA
A")< 
3. A""? ""$
.  %"<$F3abI@78@B[(c@ab;G
727'9%/
%'
  #
+. ("#9
2FG
;. >D"#9(FG
/0 ! 3 (11)2)3
0'"+  
 23"#)2
>! %#< A) 
%#3<3! !
" !?3
9$ 3<3F!) G<3
B#D Z<%3
> 23"#)2
 
A  %#%)
"H%!<  
" D !!"#<
9" !? %$# "
<%<K#(<%#
9!)(!%
#"!)!%#"
%#" 1B8@[>A@# "
A1.."#F#"JG(""
"%""%%
"  FZ#G>"# #
%#"# #!# <!
!#%%""!%"
#-"H%$%%)
""%
)HE"
!)%
"%#!%<
"%"
) !"A 
 3<3 !    #  # ?  !   
X#.XX)
X
/0 ! , (11)2)3
PA!:A! %<
VW#"
9<%!!(1#%
%FGK$! ##"
VWFG:!
%$#!D#%<A%
#:A! "%.
α=
abs( Cr - greypoint[1]) + abs( Cg - greypoint[2]) + abs(Cb - greypoint[3] )
α=(α+
offset
)
slope
α=
clamp
01
(α)
C
r
=
greypoint
[
1
](
1
−α)+
C
r
α
C
g
=
greypoint
[
2
](
1
−α)+
C
g
α
C
b
=
greypoint
[
3
](
1
−α)+
C
b
α
  !  " l #    #  "      #  5    :  A  1  #    
A1..1#
0'"+'" 3
0'"+'"'" =
D##"!"&
B:B7B#B#"
#?!M++N
0'"+'"' 
!!<$#D#%<
  <              %  #    F  
A1..MN#G"#D =@7[<
%""#D=@7[<
/0 ! + (11)2)3
3++:9
7G
++%
%"%<$!#%
#"%!%#""<"
P% ##9>7@[E@:C([=FA1.."#G#
D
?!# "!%
" ""> 3<$
;3<$!"C>7[
C>7[?"=@7[=@7[!%
#""<"P% ##9>7@[E@:C([C
?%<""
@"?#### 
P!?  ".#D#%
< <"#D#
FBG <"#D
D#%<<`')B
0'"+'"'+ ?
!)%"
#
!!<$#D#%<
  <  "          "       3  D        3
#F=@7[<=@7[<=@7[3G"3<
%"%%"?F"%!=@7[3G
<   $!# % #" 
%!%#""<"P% ##
9>7@[E@:C([=#D
?!# "!%
" ""> 3<$
;3<$!(
"?!"FC>7[C>7[C>7[3G%#
""<"P% ##9>7@[E@:C([C
#""?#### 
P!?  ".#D#%
< <"#D#
FBG <"#D
D#%<<`')B
0'"+' 2
  ChrDnsParam%"%) # .
 > 
3., (":A!J2FG
3.6 >D":A!J(FG
+., 8#"=#"
J.
/0 ! 6 (11)2)3
 > 
J(1FG
J%F!)G
JF!)G
3J
3 9%!
 9%?
., B
3 7
. C? @#
& ?#

P/Q E
3., (=!
3.6 9=!
+. (C?
;. 9C?
P/Q E
3.6 =!
;. C?
 3 :!9l!
!D!#!
3.6 7"%
+. :"%
;. &"%
 3.6  X29"
+. )F))G X29"
;.  X29"
/0 ! ; (11)2)3
0'", 72
 3"#)D
"916'29B
>! 2)#%B7:&)!
<D3AB2
9$ +<+"
B#D Z"<#)%6
F,6,B%G
> 17:&916'29
 
#! #B"!#$7:&
<## #< 
7:&7:&<F%#"!!G3<3
<"%#!"3D%"7&
&96<6<63AB2
0'",'" 3
0'",'"'" 7
VW #%%!
: 8%": "@
:1.."#M<DN%"#! "
@#1..$#MN#M<D"N"
#! ##""6
$[$[$[##"%.
k_r=256/Kr
k_g=256/Kg
k_b=256/Kb
%III#%#H"
: K("<"I%+$[%#3
([I[7 2F,G"3d+6b;;b<33%#

0'",'"' + B9
3AB27:&7:&)##!
#6<6<63A%7:&"29
7:&)%3A%#3AB2
#"7:&%#
"$"'9<
/0 !  (11)2)3
#$$#$"#
3A#H"A@A7%)T%7
!FQ<G:!%FZ<GE"A
"#&Fc<G93
"<
#H<#%93
"F7:&G6,#%%93
/0 ! * (11)2)3
3+,:97+ B9'
/0 ! 3 (11)2)3
3+:97+ B9
0'",' 2
  ColCombParam%"%) # .
 > 
+., 1!"!"A""
3F7:&G=
+ @#29F916G
, %KK)"3AB2
#"<"
3 &F#G3AB2
. #
J,..#)?!
>""
 9
)7P/Q #!IX
;.6 X"FG
. X"FG
)7P"Q #!IX
;.6 @"
. X"#FG
P/Q T<MN
3.6 MN(F6G"
+. MN(F6G"
P"Q T<MN
3.6 MN(F6G"
+. MN(F6G"
PQ T<MN
3.6 MN(F6G"
+. MN(F6G"
P+Q T<MN
3.6 MN(F6G"
+. MN(F6G"
P,Q T<MNgT7@AD
.6 (FGD7PA
29"%!"
+. MN(F6G"
$= T:&D
/0 ! 3 (11)2)3
 > 
.6 (FGD:PA
29"%!"
. (FGD&PA29
"%!"
 B 3. "3A)B2
/0 ! 3 (11)2)3
0'" B92
 2,"916'2'26
$ 916'2'26<$)"!'
B!""916$)>!
"
3) 1!
B7= 8%
$ 2,"916'2'26

$)# #")"!)
! #"#916$)
#" )#D#"#DF%#6,#G
   #   !  F(11[&29M*N[&(@G   #D  
F!G6I#"7 F""G
##)")#)"#% !7#%
""#""""<
!!"
B$)#
@$)#6#E##"
##
BU B$)9FB29G"B$)#FB2GB29B2"
"#B2"B29#!!%
 6#" B2B2MNMN26B2#B29
<?"B2I#6#F6I#<?B2G
@  B2    ?    6      #  "  B2            
 #%!#%"%%"%?"
%    ?  "                (11[B2[(c@([;[ 
(11[B2[(c@([+[<#"$
#"""
"%"%?"MNMNMNMNMNMN
!.
7MN"B2MN#"B29#` MN`)
#7MN"B2MN#`MN`#
`MN``MN`J#%93
/0 ! 33 (11)2)3
B2<D""#9916,
 #"+)#916<B2#" 
<%8,B(#"<X"
/0 ! 3, (11)2)3
3+(:B)?7-
?MN"#"$
H #" <K#"
 FB(#<G""!8F8G
#%<<916"F$%@@@
;+,")#L!)".#6G%933
9, #B2"%
#M*.6N%#<K""#
916$)%#6
 & 8 P*:/Q
96 8' AM3.N AM*.N
  AM;.,N jAM3.N6U#k
 * AM.+N jAM,.N+U#k
  AM*.6N jAM+.N,U#k
  AM.;N jAM6.N3U#k
  AM.N jAM;.NU#k
 3 AM.*N jAM.NU#k
 , AM3.N AM*.N
 + AM,.N AM.N
 6 AM+.N AM.N
97"(:B97
<#?#F<M*.NG"
#"# "916 <#? 
#"#P"!#%%#;#
"<?FI#G#"<##916 
!#%"
&8- 8- 7 
  <M*.N
 <M*N <M.Naa
/0 ! 3+ (11)2)3
3+.:3"(D;;;.,?7I?:7"(E
&8- 8- 7 
, <M*.N <M;.Naa
3  <M*.;N <M6.Naa3
, 6 <M*.6N <M+.Naa,
+ 3 <M*.+N <M,.Naa+
6 6, <M*.,N <M3.Naa6
;  <M*.3N <M.Naa;
+6 <M*.N <M.Naa
* + <M*.N <MNaa*
 , <M*.N
97".:8
0'"'" 3
0'"'"'" 7=
B2 %"""
#DH!F# G
B2#  " F < "6G%D$)
"!#%!B29 %6I#79
<#""+B2<"B2
%93,#"%B2 !B2
   !#9< * #D# 
H!#"3B2%B2MN%36B2MN%
,;B2MN%+#"B2 #
82[B2(# "B1.."#
/0 ! 36 (11)2)3
9B2# ""
"$%##5B2[C88@B[>A@#"
B1.."##"FG# 
82[C88@B(# "DB2%
""!F"G
B2#%B2982[B2(# "B1.."#
#
0'"'"' B922B9
 !  "  B2    #  B1.." # % % 
"%# .
916$)F%!#%"916G
/0 ! 3; (11)2)3
3+0:B9F
%F"$) G
@#"#"B2"H!!)
&,B2EB2#!#
#"B2#""B2FG
#  %7#%""#
B2 K7%%.
2B2FQA7G
2B2#F"G
@#B2 
EKK#,"B1.."#
EKK#,"B1.."#
 %7""
0'"'"'+ %
E 3)"B2>
"!##3<3<D
  "    ! 9
<"7:&Z#,..%"%.
Z   3 7 >9
# b   3 < : ` >9
 3 3 33 &>93
3<3<X (FGD(FG"E
B2#29"%!
MN%!916
0'"'"', B92
% B9;3 8 $3 $
 916 MN 29
 916 MN 916
 29 M<D"N 29
 29 M<D"N 29
D 916 ]88 29
D 916 ]88 916
D 29 M<D"N 29
/0 ! 3 (11)2)3
% B9;3 8 $3 $
D 26 M<DDN 26
D 29 M<DN 29
97"0:B93 9
0'"' 2
  LutParam%"%) # .
 > 
6 @#Z2=,,,>"#
"3
+ 1&@#9#
, KKB2#AP"
"F" #G9#
#"B2$
3. 8#"FG#
1##F<",
G
. A%B2%!
H!B2"11^82[B2(
$9;: "B2# #
$9;: # #
;.3 %"(6#
 @#J"#,FG"#
#"#
 #82[C88@B(
 ("916!H"$)
- 3. B2;?<
;., B26?<
3. B2+?<
*.6 B2,?<
+. B23?<
. B2?<
;., B2?<
3. B2?<
/0 ! 3* (11)2)3
 > 
-> 3. B2+?<
;., B2,?<
3. B23?<
*.6 B2?<
+. B2?<
. B2?<
;., B2*?<
3. B2?<
 3. "3AB2
3 . 9"3AB2..#".6#"3.3#
"
P/Q . <XFG
P"Q . <XFG
PQ . <XF3G
P+Q . <XFG
P,Q . <XFG
PQ . <XF3G
P(Q . <XF3G
P.Q . <XF3G
P0Q . <XF33G
=P/Q . D(FG"
=P"Q . D(FG"
=PQ . D3(FG"
/0 ! , (11)2)3
0'"( 
 916'29
>! 2'%#6)97 
9$ 3<3+<+;<;
B#D 8
> 916'29
 3
)#")H!"B?#)# 
#"%! ##!
F?!G 697 % ##"3<3
+<+;<;#
0'"('" 3
0'"('"'" 2G
9X#%M)+,**NX
#M++N% <)X
"%.
val = (coeff * 128) + 64
1"<,<"X"!
)916X916"!
?91629#D
0'"('"' 3
3")@%#D !
#%""  !"# 
%#!%!!#"
X)"Z2=,.,.,Z2=,..
Z2=,..%Z%2=
0'"('"'+ $%%&
(""
.
 2)#""8?)!
 )#%) 
3 A%)#""A
)#"!97 X#$
/0 ! , (11)2)3
""P) ?"# 
(11)D!97 $")?6
";)
    #  % ;) 97  9  "  ! 
?#")"F8G<
)"6FD!%) G
<$"!<;<.<# "<
";!C%%%#!
%) F! $#
! %)"J <!G<" 
"!?) %)
<$"?;<<.<# ;!<
%!<%%#"%) #"
#%-#DF $#?
%)"G
0'"('"', #
(!# "?!! 
'    F8'AG  %        + #          6  #  
<)!6F#" !G
%"8M6N%"AM63NF(191..?A
91..A#""G
9<"%%%)#""m%8
3A,E8'A6''6!"8'A
?! X"#
$'6<!%D!"%%"6#
% )F?GE;%"
!<;b,97  "!FB?G#,!
XX"3#"%.
Coefficient 0 is phase 0, coefficient 0,
Coefficient 1 is phase 1, coefficient 0,
Coefficient 2 is phase 2, coefficient 0,
Coefficient 11 is phase 11, coefficient 0,
Coefficient 12 is phase 0, coefficient 1,
Coefficient 13 is phase 1, coefficient 1,
Coefficient 82 is phase 10, coefficient 6,
Coefficient 83 is phase 11, coefficient 6.
X"+%#
#<!
?""%.
Output width = ((Input width * HorzN) - 1)/HorzD + 1
Output height = ((Input height * VertN) - 1)/VertD + 1
EC?8C?A"?"=8
/0 ! , (11)2)3
=A"!"!
#" #!F$?G #3<3+<+;<;""%
; X"#?@"+
X6#?f"3X+6#?
8""?"$?# J$?#<
#" 
0'"(' 2
  PolyFirParam%"%) # .
 > 
 >( 916
MN
- +. C?"<63
- ,. C?"<6
% +. =!"<63
% ,. =!"<6
- 3. "?X
%3. "!X
/0 ! ,3 (11)2)3
0'". ;$2
 2'26'916
>! 9<#)!#"!"(# 
9$ 3<3
B#D 8
> 2'26'916.`#"C">
:
 
@> <"!"3<3(# 
QZF
G
x

G
y
G"#(# $
"<!<#
"%!
0'".'" 3
0'".'"'" #
 (#  $    ?  !   #  
@1..<D@1..D#?!!
"%#%"<2=>2=>!%3<3
<$.
Gx=
(
XCoeff a0XCoeff b
XCoeff c0XCoeff d
XCoeff e0XCoeff f
)
A
2=>
Gy=
(
YCoeff aXCoeff bYCoeff c
0 0 0
XCoeff dXCoeff eXCoeff f
)
A
2=>
!(# !##"9162
  #      "      #D  #  !            
@1.."#
0'".'"' 
H""H"
G
x

G
y

H"!"%!.
M=
X2+Y2=X
1+ (Y/X)2
2=>
M=
X2+Y2=Y
1+ ( X/Y)2
2=>;
8%  " 2=>       %
X>Y
 2=>  ;     %
XY
  
/0 ! ,, (11)2)3
<!  "    "!
{
f
(
a
)=
1
+
a2where 0
<
a
1
}
  #        
<""%<!.
" 
a
FG3H#
f(a)
"
#-""%#*#%

a
a2
1
+
a2
1
+
a
2
   
,+ 6 6 3
,* , , 
3 ;36 +, +, ;
, *, *; *; ,
+ 33 + + ;6
6 ,3   *
; ;3+ 3 3 ,*
** 3*6 3*6 *6
* ,6 +, +, ,*
 ++ 6; 6; 3*
 ;6; ;66 ;66 3;6
 333 * * ,+
3 33, * * +3
, 3+;   6
+ 3+; , , ;
6 ,, ;6 ;6 ,
; ,,33 *6+ *6+ *3
 ,;3 3; 3; 6
* +3, +3, +3, *+
 +3,+ +; +; 33*
 +66+ 3* 3* ,*3
 +**, 3+*3 3+*3 6+*
3 633 , , 36
, 66 ,,6+ ,,6+ ;
+ ;,3 ,*6 ,*6 3
6 ;,; ++ ++ ,+
; ;, 6* 6* 6+
 ; 6;3+ 6;3+ *36
/0 ! ,+ (11)2)3

a
a2
1
+
a2
1
+
a
2
* 66 ;,, ;,, 36
3 *63 + + 3,*6
3 *+ *6+ *6+ 3;
97"*:;FB9
"
1
+
a
2
$)#916"!#%#
"""
a
%% ##
#"F@1.."G
0'".'"'+ D9E

absolute θ
%!#%36"
G
x

G
y
  9   !!  "    
primary θ
#
X
 
Y

%93*2=>?2=>@
θ=a ,X>Y
2=>?
/0 ! ,6 (11)2)3
3+*:;
θ=
b ,
X
Y
2=>@
%%#% ,+ ,+ 
3",6+#"$) #
"#FnG2=>A2=>$)#%
#
tan (θ)=N/D=Y/XwhenX>Y
2=>A
tan (θ)=N/D=X∣/YwhenY>X
2=>
θ
ST
θ
U
tan (θ)
ST
tan (θ)
U 
 ,  ,+
,  ,+ ,*
 , ,* ;3
, +63 ;3 *+ 3
+63 ;3 *+ 33 ,
;3 ,, 33 ,3 +
,, *, ,3 ;3+ 6
*, + ;3+ ** ;
+ 66 ** ,6
66 ,6 ,6 ++ *
,6 +,; ++ ;6; 
+,; 6 ;6; 333 
6  333 33, 
 *6* 33, 3+; 3
*6* * 3+; 3+; ,
* + 3+; ,, +
+ 3* ,, ,,33 6
3* +3 ,,33 ,;3 ;
+3 6; ,;3 +3, 
6; 3 +3, +3,+ *
3 *+3 +3,+ +66+ 
*+3 3*, +66+ +**, 
3*, 33, +**, 633 
33, 33;+ 633 66 3
33;+ 3+6 66 ;,3 ,
3+6 36+6 ;,3 ;,; +
/0 ! ,; (11)2)3
θ
ST
θ
U
tan (θ)
ST
tan (θ)
U 
36+6 3;*; ;,; ;, 6
3;*; 3*3 ;, ; ;
3*3 ,; ; 66 
,; ,* 66 *63 *
,* ,3+* *63 *+ 3
,3+* ,+ *+  3
97/:;B9
#! 
absolute θ
#% 36+6"
,6+#%36!%9,
&9:
Y>X
%
X>Y
A@9"Q!%!
@9:C"Z!%!
#!
absolute θ
"
primary θ
"%.
absolute θ = primary θ,XY, X 0,Y0
absolute
θ =
63
primary
θ
,
|
Y
|>|
X
|
, X
0, Y
0
absolute θ =64+primary θ,|Y|>|X|, X <0, Y0
absolute
θ =
127
primary
θ
,
|
X
||
Y
|
, X
<
0, Y
0
/0 ! , (11)2)3
3,/:0
absolute θ=128+primary θ,|X||Y|, X <0, Y<0
absolute
θ =
191
primary
θ
,
|
Y
|>|
X
|
, X
<
0, Y
<
0
absolute θ =192+primary θ,|Y|>|X|, X 0,Y<0
absolute
θ =
255
primary
θ
,
|
X
||
Y
|
, X
0,Y
<
0
0'".'"', 9
#""F
θ
G#
!"#%36",6+F)++G
##
Q)<L!#%Q)<LQ)<#Q)
<!#%,6+F);G
QZ<L!#%Q)<LQ)<P
"Z)<LZ)< !#% *  ,6+
F)63G
9,%%PL!QZ<
 @1.."#
8"!#%>=Q#;"@1.."#
  >=Q  !  E  5    #      "      (11    
>=Q"
/0 ! ,* (11)2)3
3,":;9
0'".' 2
@  EdgeParam%"%) #
.
 > 
3.6 (9916

; >=Q
JA#
J@#
6.+ 
J8
JQ)<L!
JQZ<L!
,. >%##
(9
J6)#
J)#
J)#)#FG
J)#FG
JQZ#FKG
JQZ916
. 
J82<
J1916FQZG
J12FQZG
=
K"
*.+ @QX9
,. @QX@
*.+ @QXA
,. @QX
*.+ @QX&
,. @QX
= K"
*.+ @ZX9
,. @ZX@
/0 ! + (11)2)3
 > 
*.+ @ZXA
,. @ZX
*.+ @ZX&
,. @ZX
/0 ! + (11)2)3
0'"0 %2
 916'29
>! 916! % #$?"
#916X#H"#
"7!
9$ 3<3+<+
B#D 8
> 916'29`913!23!>#
#"!'"
 
    !  $          %    +<+  $  %  "  #  916
X#91629%!"916F29
?916MN
9X"+<+$F<G)%FG
)P"$<%XFG% #

FG FG FG F3G F,G
FG FG FG F3G F,G
FG FG FG F3G F,G
F3G F3G F3G F33G F3,G
F,G F,G F,G F,3G F,,G
97":7%)G
 # 3<3$F1.."#Gf !
X"!$#?
0'"0'" 3
0'"0'"'" 7
#"!##5 !!#&(oU
0'"0'"' F
"!!#H#5 !!#(YoU
/0 ! + (11)2)3
0'"0'"'+ 
!##5 !#2oU"&(#
oU#""(Y#oUH"
 !      !  "  L!  F913G
#"(11[>8=[2!"
F  "      "  )  H!      "G  #    F)
G(11[>8=[2    )#) #    " "  
!""#!"" "<
"
0'"0'"', 
C7##%!916
#1.."#E!
!>28 3#%#
F)G(11[>8=[2[8)#)#%
!"
0'"0'"' $7
!"
H###5 !!#>A
oU"# U#D# 
0'"0'"'( ;%G
 # D"X<#5
@=@8>AA#"1.."#KKE# K"X
<%X<
"@=@8>AA[(@B#"1.."#"X
<%X<#%X
    <  " X    <   !  # "
7E&
0'"0' 2
!  ConvParam%"%) #
.
 > 
+ (%@=@8>AA%'"X
'<""'%X
'<"
, (DX'<
A"'%X'<
3. !F916G
; >#
/0 ! +3 (11)2)3
 > 
6 
+ >H"
, >#"
3 ( 916MN
.  %"<$="
I@78@B[(c@3+
$9;: # #"
"
)P/Q 3.6 XFG
+. XFG
)P"Q 3.6 XF3G
+. XFG
)PQ +. XF,G
)P+Q 3.6 XFG
+. XFG
)P,Q 3.6 XF3G
+. XFG
)PQ +. XF,G
)P(Q 3.6 XFG
+. XFG
)P.Q 3.6 XF3G
+. XFG
)P0Q +. XF,G
)P*Q 3.6 XF33G
+. XF3G
)P"/Q 3.6 XF33G
+. XF3G
)P""Q +. XF3,G
)P"Q 3.6 XF,G
+. XF,G
)P"+Q 3.6 XF,3G
+. XF,G
)P",Q +. XF,,G X916
$9;:&)P"Q)7&G
/0 ! +, (11)2)3
0'"* 1
 2
>! C!% #$?#
9$ +<+;<;*<*
B#D 8
> 913FG916
 
C "!2  #
$"3<3+<+;<;< 3<3(#<!$
;<;$""*<*<f?%#
C1.."# <<F<G$
<  # : "!F#  1KG  "%
.
score(x,y) = detM(x,y) – k.(traceM(x,y))2
$")L!%C1..$=
#
3<3(#<"%F"<G.
[-1 0 1]
[-2 0 2]
[-1 0 1]
9       "     $              " 3  #  L! 

0'"*'" 3
0'"*'"'" $
@#"&3#L!
"#5A@[(@B#"C1.."#KK
   #    #  #!    #    @Q1[(2&7C@8A  "    L!  
<    !      $%      <)T      "    "
@Q1[(2&7C@8AFC1.."#G"#!@Q1[(2&7C@8A
"<%!<"T
  #  916  "  " <)
TL!916"%.
 (#F;J+G"#T<#916<
 #916<M3N
3 A916 "(&"L! #
/0 ! ++ (11)2)3
 "    < T  L!        916   #  "      #D
9>7F"""L!)9>7
#,G
0'"*' 2
  HarrisParam%"%) # .
 > 
+. @<##"<
"3#L!#"
916
, ("9>7
#,%5F3#L!G

3.  %"<$=+;
*
$9;: # #"
"
)! 3. IF913G
/0 ! +6 (11)2)3
* 3%4
9#%-%(C=@#(11"%$
#%##"  
1%(11 #%-
#T!%1:#$
=$#!
*'" $%%&
@! UT#"!$"
#D"""#D
!(11"%$ %H#DE$
 %"%#D
!%#D%%#
2SHAVE<!(11?
%$SHAVE!"#"!
*' $7=
@ <#DF%<!"$ %
#DG#D"FQG#(11"%$?"
#D#"F6#<G"%
#"H# %%"#D(11"%$
?!%"#%X"%
%        #           Q   
!
7"%#D?%"#D
(#D#$!%
"!#%
%?!"#D7:&"SHAVE"%
*''" B5O
 9  ,           P     "              !  $
!%"<E<"
<#""#"
%#(11"%$!
 "#
P" "%<#
!>#!"# 
              J        #    (11  "%$    #
C%##"# "
#D
/0 ! +; (11)2)3
*'' 7=
(11#D#DP#D(11
"%$E"#D#D
"#DB#D%#(11"%$"
#D %$%""#D
%!""
Z$"#DV%%W"F#%G@!
$%%V%W#<#"<!
/0 ! + (11)2)3
3,:>=
3,+:9&)7
!!#! 
#!#-""(11
"%$"!#-""#
 "<" ;""#D#"
 !%#"H#D"%
!
*'+ 
9#%-'``#<"#1
! #!%
1!%P!#
!?" #
#"%.
2#<?!
2#
   "  U "! # !%-! #
#!#"``""%!
#P"!
!     SIPP_PC   !    #        )    "  1
!#)!?#9<.
void
sampleFilter(SippFilter *fptr, int svuNo, int runNo)
{
#ifdef SIPP_PC
// C/C++ code goes here
#else
// SHAVE inline assembly code goes here
#endif
}
*', 22
9") %'# 
"( SHAVEVW
"AI!
*','" 32
@  %! 
 "!" U%##(11"%$
!  U !""%<"
 .
#include <sipp.h>
typedef struct
/0 ! +* (11)2)3
{
float strength;
}
RandNoiseParam;
void SVU_SYM(svuGenNoise)(SippFilter *fptr, int svuNo, int runNo);
 <          # 
VW%""(11 
%<!""!E 
<U%""!
"!  %  #         "   SHAVE "   @ SHAVE   
#"!"<
 $"%.
:1$%(11 
%:SHAVE(>#!%
A"SHAVE
: "" %#< <#"
!% U"?@! <
#""
*',' 93
@"(11 (9$ %
(11"%$" %#"# "
"%# %  #"
 U"%9(9%##
 # 
7 &< U#D 5
D" <
"%H !9<" 
226" %
"%<
 8#" U#D
C E""## #"<
%## %#SHAVE
1 C""## #"!
 %""
 E" U#D 
 #D" < <
"%
  U"#
 " 
C E SHAVE#"5VW"
  %<SHAVE#
/0 ! 6 (11)2)3
"
7B   %9
 "U#D
# " ) 
< Mnum_inputsN%num_inputs
#" <%
%#"!%$% F
#)#DG %VrunNogW
<< #M
num_linesN%num_lines#" 
 #!!!nLinesUsed
sippLinkFilter()))#-
<+<+!$%M,N+"
!
7B$  ! #D% 
B$dbLinesIn#)#D
% ""% %
VrunNogW<
 :#"1VCommInfoW%##%
97:93
"% "CommInfo #"# .
%3 9SHAVE FGSHAVE AU?)#
SHAVE#!
%B BSHAVE FG
3 "!"
97+:9
*','+ V 
"%A "(11%"!
W (?"
KB 8#"
> &<
?9$ (11"
K> A"1f
/0 ! 6 (11)2)3
8K 9 AA7!-#"#f81f
B#; -#f81
 (!-#f82BB1
!KL $(#
97,: 
/0 ! 6 (11)2)3
"/ 5&2
"/'" %!)
(11%"$=$#(11$"
<
%%AIXXX2
1=!AI""!$
#+"(E$#%%$
"H#
J 
#D #D"%
(H H"
E %"
#""H
! %
!$ %$"%
!(# (#%
!(#9696 (#%"6
!(#$ (#%$"%
 "%
#% )#)%T!F8AG"%
#%$ 1#)%8A"%"$bb
#%8 1)#)%8>
#%> 1)#)%T!F>7G"%
#%>$ 1#)%>7"%"$bb
#%Q 1#)%@<>7"%
#%Q$ 1#)%@<>7"%"$bb
#<9 #$?$?#"

#<98<8 ="#< !?" $?
@A!
9$
F*<*$?G
#%"
$ !"
/0 ! 63 (11)2)3
J 
@< @<"7:&"7:&
&$ !3<3!<
#AA J
 <
8<8 !!?" $?
6## 26<2FG
19626 91626
12696 26916
: :!$
(#8<8 >!?"<fX<
>!?"$?3+;*<
Z,,, Z2=,,,
 "
@= ""
!"
@= "<
 "<!E
99
"
-8=7:&
-7:&B
-7:&8=
-7:&2=
-7:&2=,
-7:&Z2=,
-Z2=,7:&
-Z2=7:&
8<8
A %
"<#%<$
< %3+
;<$?"A$
:
A$%$?
<<#$
<!%<
H?C @H?"#
?
8<8 3+;$?"@
/0 ! 6, (11)2)3
J 
:
"$$
%<
#<%

"* 9'$!
"* 9'$!"
 :#'
C<["6 %<?%: %$+<+
=<["6 %<!%: %$+<+

:"7:&B
="22696f
2(
A7" :""%f2
(
B :B"7:&f2(

7 C
 #"

 C"!
(H(93 ("H<#"<FP
%#G>93
(H(23 ("H<#"<FP
%#G>23#
(93 ("<#"<FP%
#G>93
(2623 ("<#"<FP%
#G6#2>93
(23 ("<#"<FP%
#G>23#
8<8 BD!
>!?"3<3+<+;<;$?
 B
%B B%<!
(!
%B!1 B%<!
>!?F7:&G
/0 ! 6+ (11)2)3
J 
& &
8 B$))#
="66
98<8  f="3<3+<+;<;*<*<3<3+<+
!
<1 <<
!
<= <<

! <
!I !"<
A% 1+<+%
8 72
896 7J916
8<8
("#AD
$#D#%<#$
<#$#"
="+<+<#$?
+#C=
&% %+"JC?=!
!
="2'f96'96'2
+B6C= ?%%"+6fC?
!!
+B;C= ?%%"+;fC?
!!
<&C= &J<?g!
<BC B?J<?
<BC= B?J<?g!
<B= B?J<!
&# &#QZ"
# (#!
8<8
("(HADF//GDH
%H%%>!?"+<+<
%%!

<#
.
-[c.#%?
/0 ! 66 (11)2)3
J 
-[c[."[[c
-[&.#%?
<<
-&[."[[&
-.#FA"
G
&7$<99"< 
%b
&2 $"
<99"
&%
&%K!"$%!
XF"G!!
F"G
%&&:&7: %#"&:&7:
%&7:& %#"7:&
97:5&J
/0 ! 6; (11)2)3
6"//3&)
' &)
T#"(11<+<"%$"%$$
" A" <)#)
#(#D%)FQG
8AA7#F
AA7A'"G! "%# "
AA7%%$AA7#-"
"!
(11  <+<  "%$      #  " ! #       " )
"#!#(11%!
!"#$1""<"&
"%)#$1"""
C%!" D#
(19#$1F%!
"%$G""9!"(1
%AIJ>1>1<
"(1%
'> C
'>' 
7)
""<+<(11"%$!")#$1""
##$%H#(11
"%$""
(11"%$<!"""
%#$"!"#"
<"
#"%$#$
"!" %
 #$"!"%$%<#$%
(%$#<
!"#$"!L!
$"<"
<"!#"%
void appSippCallback ( SippPipeline * pPipeline,
eSIPP_PIPELINE_EVENT eEvent,
SIPP_PIPELINE_EVENT_DATA * ptEventData
)
{
if (eEvent == eSIPP_PIPELINE_FRAME_DONE)
/0 ! 6 (11)2)3
{
printf ("appSippCallback : Frame done event received : \n");
testComplete = 1;
}
}
int main (int argc, char *argv[])
{
pPipe = sippCreatePipeline(0, 7, SIPP_MBIN(mbinImgSipp));
...
// Register callback for async API
sippRegisterEventCallback (pPipe,
appSippCallback);
...
sippProcessFrameNB (pPipe);
...
while ( testComplete == 0x0 )
{
}
...
return 0;
}
!"!J(#$FG%
"%$P198&!"%$
"    (11  "%$      #$  "!        " 
#"!(11[11@B8@[97@[A>8@
#$"!L%$<
!

    #$  1  %   (11  <+< "%$        "  #  
!!"198&FG"
%%%%#"%$
!%198&",%"
# #"%$K>
   %  #  "   # "    
      "      #              %  #
"#"
E$#"!$"L
H%CE (C=@

# (11<+< "%$#$1%#
!!#$1!F
(11"%$G
/0 ! 6* (11)2)3
' 1C27&"//
38%:
&) 
&3:
(A.
) >&
:F7:&3)G.
) 197!A$A! 
AD":!'BF,<"!G.
) A:.D":FB #G
) B.)FA:#G
) A .      D " : FB  
#G
) A:`B.)D":
;:
8%3<")
!%.
) % !#
) " !
F#"Z2=,.,.,,..,..%Z
2=! XG
(X%##"F%916G
3;:
C9.
) "!"
!I.
) "'XF"&G##%%
X
@>.
)     "       ,          %    #  
##%++#"<#"
) >=Q!#
7E9.
) @@'E&F"$<G
) "!"!F""%'G
) 9
) +6#F"6,G
) #7:&
&A9.
) !F%7:&G
) "%F%)G
A.
) :3<3) 
) ("FG3)!
) !:A!) 
BA.
/0 ! ; (11)2)3
) "!#$F,%B2:TG
) 7"#D
) #= !
9.
) "#" %#
) %#D
B29.
) ""F3)G
) HB2 ##"B2H
) B2H%EP"""
#
#! .
) 7$!
) 3AB2
17< .
) 
) B##%%
) A$%%"
&#O%3:
("$7E'#D(AB(7E 
("$7E'#D&A9
("$7E'#D17< 
2"#D
7"#D.
) "% #D.
 F#D#D#G
B$#F#DB2#D"#G
@>
!I
C9
1FG
' "//)
%#%<!(11 !(11
<+<"%$<+<
 (11<+< "%$1%" (11
"%$(111!#"(11<+<
  "      <    "  !  <!  !     (11  <+<
"%$
 # (11 !#  (11
<+<<!"#"#$
%#"1!"%
R
'; %
>"D<+<(11CEX"(1
      "        #  !?    !    !
/0 ! ; (11)2)3
#%CE !"#DFBB&G%
 E#DX#%""
 # K<!!
E"#D"%?
%H"H"<<
 9<%#% (11<+<
"%$H""1FG1
H% F#1(G%
H!"%
'3 8%
1FG1%#)""##
!   #         $ %  %   !        " 
""""
>"!!#F"!G##)
#$"1"!#$%(11"%$$P
""9%"%$!"%
#%L""(C=@CE
%##%"%$
'# 1C2
#<%"CE "<+< @CE
#%""!%!
 (11%$<!
%#"%##<#"!CE
@%%CE F% "
G%""AA7#"
CE 
8!"(E 
8<+<!!"1( "
#%!!
#)
'1 3%
'1' 8%2
>&) ##%<+<
"!%&) 
# !%!<+<
'1'> 83
/0 ! ; (11)2)3
 %#%<+<
 CE      !  D  #%
$"!$
 #%!"(""
V%W%<#%"%<"
!
"%#)!!!""CE 
1
C %#"%""%
%H<+<"!#

; 
!H" (11 !#"!#
%(11<+<
%
!H" (11 !#"!#
%(11<+<
B
!H" (11 !#"!#
%(11<+<
8C
E!@@%"%"%)
.
typedef struct
{
uint32_t count [4]; // number of pixels in alternative
accumulation.
uint32_t accum [4]; // accumulation of pixels within limits
uint32_t alt_accum[4]; // accumulation of pixels outside limits
} ae_patch_stats;
>%T3"7E "@<+<
%-%#%#$!"
L
7
# #"%<+<7:&B@
#<#"(119E!#7:&
#<#%#5#+"#"#
/0 ! ;3 (11)2)3

debayer = sippCreateFilter ( pipeLine,
0x0,
PIPELINE_WIDTH,
PIPELINE_HEIGHT,
N_PL(NUM_DEBAYER_PLANES),
SZ(UInt8),
SIPP_AUTO,
(FnSvuRun)SIPP_DBYR_ID,
0);
debayerCfg = (DbyrParam *)debayer->params;
debayerCfg->thresh = ((0x1)<<25);
><+<CE# "
!" %@<!!#
"#!%#

!H" (11 !#"!#
%(11<+<
B 
 %%"!#$"#D
##$##T
$?"# <
 
 %"3")3<3: 
"%#B!
C3<3: "$%"
B$91#$%"3$"3
3<3: ###")D#"
X
!##"##<
"%
chromadnsCfg = sippCreateFilter ( pipeLine,
0x0,
PIPELINE_WIDTH,
PIPELINE_HEIGHT,
N_PL(NUM_CHROMADNS_PLANES),
SZ(UInt8),
SIPP_AUTO,
(FnSvuRun)SIPP_CHROMA_ID,
0);
chromadnsCfg = (ChrDnsParam *)chromadns->params;
chromadnsCfg->grayPt = (1 << 31);
/0 ! ;, (11)2)3

!H" (11 !#"!#
%(11<+<
7
#!3AB2<+<"!B2
  #  <  #        #  5 #  3  "   "  #  "      #
"%.
colorComb = sippCreateFilter ( pipeLine,
0x0,
PIPELINE_WIDTH,
PIPELINE_HEIGHT,
N_PL(NUM_COL_COMB_PLANES),
SZ(half),
SIPP_AUTO,
(FnSvuRun)SIPP_CC_ID,
0);
colorCombCfg = (ColCombParam *)colorComb->params;
colorCombCfg->cfg = (1 << 3);

>Q<+< X#M++N%
 <)X"%.
val = (coeff * 128) + 64
X"M)+,**N1"<,<"
X"! )916X
916"! ?91629
#D
  !         #    <+<          X  
%#%
/0 ! ;+ (11)2)3

Navigation menu