Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
473e547e
Commit
473e547e
authored
Jul 17, 2011
by
Diego Biurrun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
motion_est: remove disabled code
parent
9cab9421
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
0 additions
and
193 deletions
+0
-193
motion_est.c
libavcodec/motion_est.c
+0
-52
motion_est_template.c
libavcodec/motion_est_template.c
+0
-141
No files found.
libavcodec/motion_est.c
View file @
473e547e
...
...
@@ -374,30 +374,6 @@ int ff_init_me(MpegEncContext *s){
return
0
;
}
#if 0
static int pix_dev(uint8_t * pix, int line_size, int mean)
{
int s, i, j;
s = 0;
for (i = 0; i < 16; i++) {
for (j = 0; j < 16; j += 8) {
s += FFABS(pix[0]-mean);
s += FFABS(pix[1]-mean);
s += FFABS(pix[2]-mean);
s += FFABS(pix[3]-mean);
s += FFABS(pix[4]-mean);
s += FFABS(pix[5]-mean);
s += FFABS(pix[6]-mean);
s += FFABS(pix[7]-mean);
pix += 8;
}
pix += line_size - 16;
}
return s;
}
#endif
static
inline
void
no_motion_search
(
MpegEncContext
*
s
,
int
*
mx_ptr
,
int
*
my_ptr
)
{
...
...
@@ -1214,30 +1190,6 @@ void ff_estimate_p_frame_motion(MpegEncContext * s,
intra_score
=
s
->
dsp
.
mb_cmp
[
0
](
s
,
c
->
scratchpad
,
pix
,
s
->
linesize
,
16
);
}
#if 0 //FIXME
/* get chroma score */
if(c->avctx->mb_cmp&FF_CMP_CHROMA){
for(i=1; i<3; i++){
uint8_t *dest_c;
int mean;
if(s->out_format == FMT_H263){
mean= (s->dc_val[i][mb_x + mb_y*s->b8_stride] + 4)>>3; //FIXME not exact but simple ;)
}else{
mean= (s->last_dc[i] + 4)>>3;
}
dest_c = s->new_picture.f.data[i] + (mb_y * 8 * (s->uvlinesize)) + mb_x * 8;
mean*= 0x01010101;
for(i=0; i<8; i++){
*(uint32_t*)(&c->scratchpad[i*s->uvlinesize+ 0]) = mean;
*(uint32_t*)(&c->scratchpad[i*s->uvlinesize+ 4]) = mean;
}
intra_score+= s->dsp.mb_cmp[1](s, c->scratchpad, dest_c, s->uvlinesize);
}
}
#endif
intra_score
+=
c
->
mb_penalty_factor
*
16
;
if
(
intra_score
<
dmin
){
...
...
@@ -1850,10 +1802,6 @@ void ff_estimate_b_frame_motion(MpegEncContext * s,
if
(
dmin
>
256
*
256
*
16
)
type
&=
~
CANDIDATE_MB_TYPE_DIRECT
;
//do not try direct mode if it is invalid for this MB
if
(
s
->
codec_id
==
CODEC_ID_MPEG4
&&
type
&
CANDIDATE_MB_TYPE_DIRECT
&&
s
->
flags
&
CODEC_FLAG_MV0
&&
*
(
uint32_t
*
)
s
->
b_direct_mv_table
[
xy
])
type
|=
CANDIDATE_MB_TYPE_DIRECT0
;
#if 0
if(s->out_format == FMT_MPEG1)
type |= CANDIDATE_MB_TYPE_INTRA;
#endif
}
s
->
mb_type
[
mb_y
*
s
->
mb_stride
+
mb_x
]
=
type
;
...
...
libavcodec/motion_est_template.c
View file @
473e547e
...
...
@@ -44,75 +44,6 @@
COPY3_IF_LT(dmin, d, bx, hx, by, hy)\
}
#if 0
static int hpel_motion_search)(MpegEncContext * s,
int *mx_ptr, int *my_ptr, int dmin,
uint8_t *ref_data[3],
int size)
{
const int xx = 16 * s->mb_x + 8*(n&1);
const int yy = 16 * s->mb_y + 8*(n>>1);
const int mx = *mx_ptr;
const int my = *my_ptr;
const int penalty_factor= c->sub_penalty_factor;
LOAD_COMMON
// INIT;
//FIXME factorize
me_cmp_func cmp, chroma_cmp, cmp_sub, chroma_cmp_sub;
if(s->no_rounding /*FIXME b_type*/){
hpel_put= &s->dsp.put_no_rnd_pixels_tab[size];
chroma_hpel_put= &s->dsp.put_no_rnd_pixels_tab[size+1];
}else{
hpel_put=& s->dsp.put_pixels_tab[size];
chroma_hpel_put= &s->dsp.put_pixels_tab[size+1];
}
cmpf= s->dsp.me_cmp[size];
chroma_cmpf= s->dsp.me_cmp[size+1];
cmp_sub= s->dsp.me_sub_cmp[size];
chroma_cmp_sub= s->dsp.me_sub_cmp[size+1];
if(c->skip){ //FIXME somehow move up (benchmark)
*mx_ptr = 0;
*my_ptr = 0;
return dmin;
}
if(c->avctx->me_cmp != c->avctx->me_sub_cmp){
CMP_HPEL(dmin, 0, 0, mx, my, size);
if(mx || my)
dmin += (mv_penalty[2*mx - pred_x] + mv_penalty[2*my - pred_y])*penalty_factor;
}
if (mx > xmin && mx < xmax &&
my > ymin && my < ymax) {
int bx=2*mx, by=2*my;
int d= dmin;
CHECK_HALF_MV(1, 1, mx-1, my-1)
CHECK_HALF_MV(0, 1, mx , my-1)
CHECK_HALF_MV(1, 1, mx , my-1)
CHECK_HALF_MV(1, 0, mx-1, my )
CHECK_HALF_MV(1, 0, mx , my )
CHECK_HALF_MV(1, 1, mx-1, my )
CHECK_HALF_MV(0, 1, mx , my )
CHECK_HALF_MV(1, 1, mx , my )
assert(bx >= xmin*2 || bx <= xmax*2 || by >= ymin*2 || by <= ymax*2);
*mx_ptr = bx;
*my_ptr = by;
}else{
*mx_ptr =2*mx;
*my_ptr =2*my;
}
return dmin;
}
#else
static
int
hpel_motion_search
(
MpegEncContext
*
s
,
int
*
mx_ptr
,
int
*
my_ptr
,
int
dmin
,
int
src_index
,
int
ref_index
,
...
...
@@ -218,7 +149,6 @@ static int hpel_motion_search(MpegEncContext * s,
return
dmin
;
}
#endif
static
int
no_sub_motion_search
(
MpegEncContext
*
s
,
int
*
mx_ptr
,
int
*
my_ptr
,
int
dmin
,
...
...
@@ -321,7 +251,6 @@ static int qpel_motion_search(MpegEncContext * s,
int
best_pos
[
8
][
2
];
memset
(
best
,
64
,
sizeof
(
int
)
*
8
);
#if 1
if
(
s
->
me
.
dia_size
>=
2
){
const
int
tl
=
score_map
[(
index
-
(
1
<<
ME_MAP_SHIFT
)
-
1
)
&
(
ME_MAP_SIZE
-
1
)];
const
int
bl
=
score_map
[(
index
+
(
1
<<
ME_MAP_SHIFT
)
-
1
)
&
(
ME_MAP_SIZE
-
1
)];
...
...
@@ -410,76 +339,6 @@ static int qpel_motion_search(MpegEncContext * s,
CHECK_QUARTER_MV
(
nx
&
3
,
ny
&
3
,
nx
>>
2
,
ny
>>
2
)
}
#if 0
const int tl= score_map[(index-(1<<ME_MAP_SHIFT)-1)&(ME_MAP_SIZE-1)];
const int bl= score_map[(index+(1<<ME_MAP_SHIFT)-1)&(ME_MAP_SIZE-1)];
const int tr= score_map[(index-(1<<ME_MAP_SHIFT)+1)&(ME_MAP_SIZE-1)];
const int br= score_map[(index+(1<<ME_MAP_SHIFT)+1)&(ME_MAP_SIZE-1)];
// if(l < r && l < t && l < b && l < tl && l < bl && l < tr && l < br && bl < tl){
if(tl<br){
// nx= FFMAX(4*mx - bx, bx - 4*mx);
// ny= FFMAX(4*my - by, by - 4*my);
static int stats[7][7], count;
count++;
stats[4*mx - bx + 3][4*my - by + 3]++;
if(256*256*256*64 % count ==0){
for(i=0; i<49; i++){
if((i%7)==0) printf("\n");
printf("%6d ", stats[0][i]);
}
printf("\n");
}
}
#endif
#else
CHECK_QUARTER_MV
(
2
,
2
,
mx
-
1
,
my
-
1
)
CHECK_QUARTER_MV
(
0
,
2
,
mx
,
my
-
1
)
CHECK_QUARTER_MV
(
2
,
2
,
mx
,
my
-
1
)
CHECK_QUARTER_MV
(
2
,
0
,
mx
,
my
)
CHECK_QUARTER_MV
(
2
,
2
,
mx
,
my
)
CHECK_QUARTER_MV
(
0
,
2
,
mx
,
my
)
CHECK_QUARTER_MV
(
2
,
2
,
mx
-
1
,
my
)
CHECK_QUARTER_MV
(
2
,
0
,
mx
-
1
,
my
)
nx
=
bx
;
ny
=
by
;
for
(
i
=
0
;
i
<
8
;
i
++
){
int
ox
[
8
]
=
{
0
,
1
,
1
,
1
,
0
,
-
1
,
-
1
,
-
1
};
int
oy
[
8
]
=
{
1
,
1
,
0
,
-
1
,
-
1
,
-
1
,
0
,
1
};
CHECK_QUARTER_MV
((
nx
+
ox
[
i
])
&
3
,
(
ny
+
oy
[
i
])
&
3
,
(
nx
+
ox
[
i
])
>>
2
,
(
ny
+
oy
[
i
])
>>
2
)
}
#endif
#if 0
//outer ring
CHECK_QUARTER_MV(1, 3, mx-1, my-1)
CHECK_QUARTER_MV(1, 2, mx-1, my-1)
CHECK_QUARTER_MV(1, 1, mx-1, my-1)
CHECK_QUARTER_MV(2, 1, mx-1, my-1)
CHECK_QUARTER_MV(3, 1, mx-1, my-1)
CHECK_QUARTER_MV(0, 1, mx , my-1)
CHECK_QUARTER_MV(1, 1, mx , my-1)
CHECK_QUARTER_MV(2, 1, mx , my-1)
CHECK_QUARTER_MV(3, 1, mx , my-1)
CHECK_QUARTER_MV(3, 2, mx , my-1)
CHECK_QUARTER_MV(3, 3, mx , my-1)
CHECK_QUARTER_MV(3, 0, mx , my )
CHECK_QUARTER_MV(3, 1, mx , my )
CHECK_QUARTER_MV(3, 2, mx , my )
CHECK_QUARTER_MV(3, 3, mx , my )
CHECK_QUARTER_MV(2, 3, mx , my )
CHECK_QUARTER_MV(1, 3, mx , my )
CHECK_QUARTER_MV(0, 3, mx , my )
CHECK_QUARTER_MV(3, 3, mx-1, my )
CHECK_QUARTER_MV(2, 3, mx-1, my )
CHECK_QUARTER_MV(1, 3, mx-1, my )
CHECK_QUARTER_MV(1, 2, mx-1, my )
CHECK_QUARTER_MV(1, 1, mx-1, my )
CHECK_QUARTER_MV(1, 0, mx-1, my )
#endif
assert
(
bx
>=
xmin
*
4
&&
bx
<=
xmax
*
4
&&
by
>=
ymin
*
4
&&
by
<=
ymax
*
4
);
*
mx_ptr
=
bx
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment