Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
F
ffmpeg
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
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
ffmpeg
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