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
d8085ea7
Commit
d8085ea7
authored
May 14, 2003
by
Michael Niedermayer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cleanup
Originally committed as revision 1882 to
svn://svn.ffmpeg.org/ffmpeg/trunk
parent
3bb10888
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
88 additions
and
84 deletions
+88
-84
ffmpeg.c
ffmpeg.c
+1
-1
avcodec.h
libavcodec/avcodec.h
+8
-2
dsputil.c
libavcodec/dsputil.c
+6
-6
dsputil.h
libavcodec/dsputil.h
+12
-0
h264.c
libavcodec/h264.c
+2
-2
mpegvideo.c
libavcodec/mpegvideo.c
+0
-12
mpegvideo.h
libavcodec/mpegvideo.h
+0
-1
ratecontrol.c
libavcodec/ratecontrol.c
+1
-1
dsputil_align.c
libavcodec/sh4/dsputil_align.c
+5
-18
qpel.c
libavcodec/sh4/qpel.c
+40
-40
svq3.c
libavcodec/svq3.c
+1
-1
utils.c
libavcodec/utils.c
+12
-0
No files found.
ffmpeg.c
View file @
d8085ea7
...
@@ -680,7 +680,7 @@ static void do_video_stats(AVFormatContext *os, AVOutputStream *ost,
...
@@ -680,7 +680,7 @@ static void do_video_stats(AVFormatContext *os, AVOutputStream *ost,
avg_bitrate
=
(
double
)(
total_size
*
8
)
/
ti1
/
1000
.
0
;
avg_bitrate
=
(
double
)(
total_size
*
8
)
/
ti1
/
1000
.
0
;
fprintf
(
fvstats
,
"s_size= %8.0fkB time= %0.3f br= %7.1fkbits/s avg_br= %7.1fkbits/s "
,
fprintf
(
fvstats
,
"s_size= %8.0fkB time= %0.3f br= %7.1fkbits/s avg_br= %7.1fkbits/s "
,
(
double
)
total_size
/
1024
,
ti1
,
bitrate
,
avg_bitrate
);
(
double
)
total_size
/
1024
,
ti1
,
bitrate
,
avg_bitrate
);
fprintf
(
fvstats
,
"type= %s
\n
"
,
enc
->
coded_frame
->
key_frame
==
1
?
"I"
:
"P"
);
fprintf
(
fvstats
,
"type= %s
\n
"
,
av_get_pict_type_char
(
enc
->
coded_frame
->
pict_type
)
);
}
}
}
}
...
...
libavcodec/avcodec.h
View file @
d8085ea7
...
@@ -15,8 +15,8 @@ extern "C" {
...
@@ -15,8 +15,8 @@ extern "C" {
#define LIBAVCODEC_VERSION_INT 0x000406
#define LIBAVCODEC_VERSION_INT 0x000406
#define LIBAVCODEC_VERSION "0.4.6"
#define LIBAVCODEC_VERSION "0.4.6"
#define LIBAVCODEC_BUILD 466
6
#define LIBAVCODEC_BUILD 466
7
#define LIBAVCODEC_BUILD_STR "466
6
"
#define LIBAVCODEC_BUILD_STR "466
7
"
#define LIBAVCODEC_IDENT "FFmpeg" LIBAVCODEC_VERSION "b" LIBAVCODEC_BUILD_STR
#define LIBAVCODEC_IDENT "FFmpeg" LIBAVCODEC_VERSION "b" LIBAVCODEC_BUILD_STR
...
@@ -1372,6 +1372,12 @@ void avcodec_register_all(void);
...
@@ -1372,6 +1372,12 @@ void avcodec_register_all(void);
void
avcodec_flush_buffers
(
AVCodecContext
*
avctx
);
void
avcodec_flush_buffers
(
AVCodecContext
*
avctx
);
/* misc usefull functions */
/* misc usefull functions */
/**
* returns a single letter to describe the picture type
*/
char
av_get_pict_type_char
(
int
pict_type
);
/**
/**
* reduce a fraction.
* reduce a fraction.
* this is usefull for framerate calculations
* this is usefull for framerate calculations
...
...
libavcodec/dsputil.c
View file @
d8085ea7
...
@@ -494,10 +494,10 @@ static inline void OPNAME ## _no_rnd_pixels8_l2(uint8_t *dst, const uint8_t *src
...
@@ -494,10 +494,10 @@ static inline void OPNAME ## _no_rnd_pixels8_l2(uint8_t *dst, const uint8_t *src
uint32_t a,b;\
uint32_t a,b;\
a= LD32(&src1[i*src_stride1 ]);\
a= LD32(&src1[i*src_stride1 ]);\
b= LD32(&src2[i*src_stride2 ]);\
b= LD32(&src2[i*src_stride2 ]);\
OP(*((uint32_t*)&dst[i*dst_stride ]),
(a&b) + (((a^b)&0xFEFEFEFEUL)>>1
));\
OP(*((uint32_t*)&dst[i*dst_stride ]),
no_rnd_avg32(a, b
));\
a= LD32(&src1[i*src_stride1+4]);\
a= LD32(&src1[i*src_stride1+4]);\
b= LD32(&src2[i*src_stride2+4]);\
b= LD32(&src2[i*src_stride2+4]);\
OP(*((uint32_t*)&dst[i*dst_stride+4]),
(a&b) + (((a^b)&0xFEFEFEFEUL)>>1
));\
OP(*((uint32_t*)&dst[i*dst_stride+4]),
no_rnd_avg32(a, b
));\
}\
}\
}\
}\
\
\
...
@@ -508,10 +508,10 @@ static inline void OPNAME ## _pixels8_l2(uint8_t *dst, const uint8_t *src1, cons
...
@@ -508,10 +508,10 @@ static inline void OPNAME ## _pixels8_l2(uint8_t *dst, const uint8_t *src1, cons
uint32_t a,b;\
uint32_t a,b;\
a= LD32(&src1[i*src_stride1 ]);\
a= LD32(&src1[i*src_stride1 ]);\
b= LD32(&src2[i*src_stride2 ]);\
b= LD32(&src2[i*src_stride2 ]);\
OP(*((uint32_t*)&dst[i*dst_stride ]),
(a|b) - (((a^b)&0xFEFEFEFEUL)>>1
));\
OP(*((uint32_t*)&dst[i*dst_stride ]),
rnd_avg32(a, b
));\
a= LD32(&src1[i*src_stride1+4]);\
a= LD32(&src1[i*src_stride1+4]);\
b= LD32(&src2[i*src_stride2+4]);\
b= LD32(&src2[i*src_stride2+4]);\
OP(*((uint32_t*)&dst[i*dst_stride+4]),
(a|b) - (((a^b)&0xFEFEFEFEUL)>>1
));\
OP(*((uint32_t*)&dst[i*dst_stride+4]),
rnd_avg32(a, b
));\
}\
}\
}\
}\
\
\
...
@@ -522,7 +522,7 @@ static inline void OPNAME ## _pixels4_l2(uint8_t *dst, const uint8_t *src1, cons
...
@@ -522,7 +522,7 @@ static inline void OPNAME ## _pixels4_l2(uint8_t *dst, const uint8_t *src1, cons
uint32_t a,b;\
uint32_t a,b;\
a= LD32(&src1[i*src_stride1 ]);\
a= LD32(&src1[i*src_stride1 ]);\
b= LD32(&src2[i*src_stride2 ]);\
b= LD32(&src2[i*src_stride2 ]);\
OP(*((uint32_t*)&dst[i*dst_stride ]),
(a|b) - (((a^b)&0xFEFEFEFEUL)>>1
));\
OP(*((uint32_t*)&dst[i*dst_stride ]),
rnd_avg32(a, b
));\
}\
}\
}\
}\
\
\
...
@@ -726,7 +726,7 @@ CALL_2X_PIXELS(OPNAME ## _no_rnd_pixels16_x2_c , OPNAME ## _no_rnd_pixels8_x2_c
...
@@ -726,7 +726,7 @@ CALL_2X_PIXELS(OPNAME ## _no_rnd_pixels16_x2_c , OPNAME ## _no_rnd_pixels8_x2_c
CALL_2X_PIXELS(OPNAME ## _no_rnd_pixels16_y2_c , OPNAME ## _no_rnd_pixels8_y2_c , 8)\
CALL_2X_PIXELS(OPNAME ## _no_rnd_pixels16_y2_c , OPNAME ## _no_rnd_pixels8_y2_c , 8)\
CALL_2X_PIXELS(OPNAME ## _no_rnd_pixels16_xy2_c, OPNAME ## _no_rnd_pixels8_xy2_c, 8)\
CALL_2X_PIXELS(OPNAME ## _no_rnd_pixels16_xy2_c, OPNAME ## _no_rnd_pixels8_xy2_c, 8)\
#define op_avg(a, b) a =
( ((a)|(b)) - ((((a)^(b))&0xFEFEFEFEUL)>>1)
)
#define op_avg(a, b) a =
rnd_avg32(a, b
)
#endif
#endif
#define op_put(a, b) a = b
#define op_put(a, b) a = b
...
...
libavcodec/dsputil.h
View file @
d8085ea7
...
@@ -268,6 +268,18 @@ void dsputil_init(DSPContext* p, AVCodecContext *avctx);
...
@@ -268,6 +268,18 @@ void dsputil_init(DSPContext* p, AVCodecContext *avctx);
*/
*/
void
ff_block_permute
(
DCTELEM
*
block
,
uint8_t
*
permutation
,
const
uint8_t
*
scantable
,
int
last
);
void
ff_block_permute
(
DCTELEM
*
block
,
uint8_t
*
permutation
,
const
uint8_t
*
scantable
,
int
last
);
#define BYTE_VEC32(c) ((c)*0x01010101UL)
static
inline
uint32_t
rnd_avg32
(
uint32_t
a
,
uint32_t
b
)
{
return
(
a
|
b
)
-
(((
a
^
b
)
&
~
BYTE_VEC32
(
0x01
))
>>
1
);
}
static
inline
uint32_t
no_rnd_avg32
(
uint32_t
a
,
uint32_t
b
)
{
return
(
a
&
b
)
+
(((
a
^
b
)
&
~
BYTE_VEC32
(
0x01
))
>>
1
);
}
/**
/**
* Empty mmx state.
* Empty mmx state.
* this must be called between any dsp function and float/double code.
* this must be called between any dsp function and float/double code.
...
...
libavcodec/h264.c
View file @
d8085ea7
...
@@ -3015,7 +3015,7 @@ static int decode_slice_header(H264Context *h){
...
@@ -3015,7 +3015,7 @@ static int decode_slice_header(H264Context *h){
if
(
s
->
avctx
->
debug
&
FF_DEBUG_PICT_INFO
){
if
(
s
->
avctx
->
debug
&
FF_DEBUG_PICT_INFO
){
printf
(
"mb:%d %c pps:%d frame:%d poc:%d/%d ref:%d/%d qp:%d loop:%d
\n
"
,
printf
(
"mb:%d %c pps:%d frame:%d poc:%d/%d ref:%d/%d qp:%d loop:%d
\n
"
,
first_mb_in_slice
,
first_mb_in_slice
,
ff
_get_pict_type_char
(
h
->
slice_type
),
av
_get_pict_type_char
(
h
->
slice_type
),
pps_id
,
h
->
frame_num
,
pps_id
,
h
->
frame_num
,
s
->
current_picture_ptr
->
field_poc
[
0
],
s
->
current_picture_ptr
->
field_poc
[
1
],
s
->
current_picture_ptr
->
field_poc
[
0
],
s
->
current_picture_ptr
->
field_poc
[
1
],
h
->
ref_count
[
0
],
h
->
ref_count
[
1
],
h
->
ref_count
[
0
],
h
->
ref_count
[
1
],
...
@@ -3265,7 +3265,7 @@ static int decode_mb(H264Context *h){
...
@@ -3265,7 +3265,7 @@ static int decode_mb(H264Context *h){
assert
(
h
->
slice_type
==
I_TYPE
);
assert
(
h
->
slice_type
==
I_TYPE
);
decode_intra_mb
:
decode_intra_mb
:
if
(
mb_type
>
25
){
if
(
mb_type
>
25
){
fprintf
(
stderr
,
"mb_type %d in %c slice to large at %d %d
\n
"
,
mb_type
,
ff
_get_pict_type_char
(
h
->
slice_type
),
s
->
mb_x
,
s
->
mb_y
);
fprintf
(
stderr
,
"mb_type %d in %c slice to large at %d %d
\n
"
,
mb_type
,
av
_get_pict_type_char
(
h
->
slice_type
),
s
->
mb_x
,
s
->
mb_y
);
return
-
1
;
return
-
1
;
}
}
partition_count
=
0
;
partition_count
=
0
;
...
...
libavcodec/mpegvideo.c
View file @
d8085ea7
...
@@ -4105,18 +4105,6 @@ static void dct_unquantize_h263_c(MpegEncContext *s,
...
@@ -4105,18 +4105,6 @@ static void dct_unquantize_h263_c(MpegEncContext *s,
}
}
char
ff_get_pict_type_char
(
int
pict_type
){
switch
(
pict_type
){
case
I_TYPE
:
return
'I'
;
case
P_TYPE
:
return
'P'
;
case
B_TYPE
:
return
'B'
;
case
S_TYPE
:
return
'S'
;
case
SI_TYPE
:
return
'i'
;
case
SP_TYPE
:
return
'p'
;
default
:
return
'?'
;
}
}
static
const
AVOption
mpeg4_options
[]
=
static
const
AVOption
mpeg4_options
[]
=
{
{
AVOPTION_CODEC_INT
(
"bitrate"
,
"desired video bitrate"
,
bit_rate
,
4
,
240000000
,
800000
),
AVOPTION_CODEC_INT
(
"bitrate"
,
"desired video bitrate"
,
bit_rate
,
4
,
240000000
,
800000
),
...
...
libavcodec/mpegvideo.h
View file @
d8085ea7
...
@@ -710,7 +710,6 @@ void ff_init_scantable(MpegEncContext *s, ScanTable *st, const uint8_t *src_scan
...
@@ -710,7 +710,6 @@ void ff_init_scantable(MpegEncContext *s, ScanTable *st, const uint8_t *src_scan
void
ff_draw_horiz_band
(
MpegEncContext
*
s
,
int
y
,
int
h
);
void
ff_draw_horiz_band
(
MpegEncContext
*
s
,
int
y
,
int
h
);
void
ff_emulated_edge_mc
(
MpegEncContext
*
s
,
uint8_t
*
src
,
int
linesize
,
int
block_w
,
int
block_h
,
void
ff_emulated_edge_mc
(
MpegEncContext
*
s
,
uint8_t
*
src
,
int
linesize
,
int
block_w
,
int
block_h
,
int
src_x
,
int
src_y
,
int
w
,
int
h
);
int
src_x
,
int
src_y
,
int
w
,
int
h
);
char
ff_get_pict_type_char
(
int
pict_type
);
#define END_NOT_FOUND -100
#define END_NOT_FOUND -100
int
ff_combine_frame
(
MpegEncContext
*
s
,
int
next
,
uint8_t
**
buf
,
int
*
buf_size
);
int
ff_combine_frame
(
MpegEncContext
*
s
,
int
next
,
uint8_t
**
buf
,
int
*
buf_size
);
void
ff_print_debug_info
(
MpegEncContext
*
s
,
Picture
*
pict
);
void
ff_print_debug_info
(
MpegEncContext
*
s
,
Picture
*
pict
);
...
...
libavcodec/ratecontrol.c
View file @
d8085ea7
...
@@ -668,7 +668,7 @@ float ff_rate_estimate_qscale(MpegEncContext *s)
...
@@ -668,7 +668,7 @@ float ff_rate_estimate_qscale(MpegEncContext *s)
if
(
s
->
avctx
->
debug
&
FF_DEBUG_RC
){
if
(
s
->
avctx
->
debug
&
FF_DEBUG_RC
){
printf
(
"%c qp:%d<%2.1f<%d %d want:%d total:%d comp:%f st_q:%2.2f size:%d var:%d/%d br:%d fps:%d
\n
"
,
printf
(
"%c qp:%d<%2.1f<%d %d want:%d total:%d comp:%f st_q:%2.2f size:%d var:%d/%d br:%d fps:%d
\n
"
,
ff
_get_pict_type_char
(
pict_type
),
qmin
,
q
,
qmax
,
picture_number
,
(
int
)
wanted_bits
/
1000
,
(
int
)
s
->
total_bits
/
1000
,
av
_get_pict_type_char
(
pict_type
),
qmin
,
q
,
qmax
,
picture_number
,
(
int
)
wanted_bits
/
1000
,
(
int
)
s
->
total_bits
/
1000
,
br_compensation
,
short_term_q
,
s
->
frame_bits
,
pic
->
mb_var_sum
,
pic
->
mc_mb_var_sum
,
s
->
bit_rate
/
1000
,
(
int
)
fps
br_compensation
,
short_term_q
,
s
->
frame_bits
,
pic
->
mb_var_sum
,
pic
->
mc_mb_var_sum
,
s
->
bit_rate
/
1000
,
(
int
)
fps
);
);
}
}
...
...
libavcodec/sh4/dsputil_align.c
View file @
d8085ea7
...
@@ -26,15 +26,13 @@
...
@@ -26,15 +26,13 @@
#define LP(p) *(uint32_t*)(p)
#define LP(p) *(uint32_t*)(p)
#define BYTE_VEC(c) ((c)*0x01010101UL)
#define UNPACK(ph,pl,tt0,tt1) do { \
#define UNPACK(ph,pl,tt0,tt1) do { \
uint32_t t0,t1; t0=tt0;t1=tt1; \
uint32_t t0,t1; t0=tt0;t1=tt1; \
ph = ( (t0 & ~BYTE_VEC
(0x03))>>2) + ( (t1 & ~BYTE_VEC
(0x03))>>2); \
ph = ( (t0 & ~BYTE_VEC
32(0x03))>>2) + ( (t1 & ~BYTE_VEC32
(0x03))>>2); \
pl = (t0 & BYTE_VEC
(0x03)) + (t1 & BYTE_VEC
(0x03)); } while(0)
pl = (t0 & BYTE_VEC
32(0x03)) + (t1 & BYTE_VEC32
(0x03)); } while(0)
#define rnd_PACK(ph,pl,nph,npl) ph + nph + (((pl + npl + BYTE_VEC
(0x02))>>2) & BYTE_VEC
(0x03))
#define rnd_PACK(ph,pl,nph,npl) ph + nph + (((pl + npl + BYTE_VEC
32(0x02))>>2) & BYTE_VEC32
(0x03))
#define no_rnd_PACK(ph,pl,nph,npl) ph + nph + (((pl + npl + BYTE_VEC
(0x01))>>2) & BYTE_VEC
(0x03))
#define no_rnd_PACK(ph,pl,nph,npl) ph + nph + (((pl + npl + BYTE_VEC
32(0x01))>>2) & BYTE_VEC32
(0x03))
/* little endian */
/* little endian */
#define MERGE1(a,b,ofs) (ofs==0)?a:( ((a)>>(8*ofs))|((b)<<(32-8*ofs)) )
#define MERGE1(a,b,ofs) (ofs==0)?a:( ((a)>>(8*ofs))|((b)<<(32-8*ofs)) )
...
@@ -46,18 +44,7 @@
...
@@ -46,18 +44,7 @@
#define put(d,s) d = s
#define put(d,s) d = s
#define avg(d,s) d = rnd_avg2(s,d)
#define avg(d,s) d = rnd_avg32(s,d)
static
inline
uint32_t
rnd_avg2
(
uint32_t
a
,
uint32_t
b
)
{
return
(
a
|
b
)
-
(((
a
^
b
)
&
~
BYTE_VEC
(
0x01
))
>>
1
);
}
static
inline
uint32_t
no_rnd_avg2
(
uint32_t
a
,
uint32_t
b
)
{
return
(
a
&
b
)
+
(((
a
^
b
)
&
~
BYTE_VEC
(
0x01
))
>>
1
);
}
#define OP_C4(ofs) \
#define OP_C4(ofs) \
ref-=ofs; \
ref-=ofs; \
...
...
libavcodec/sh4/qpel.c
View file @
d8085ea7
...
@@ -9,8 +9,8 @@
...
@@ -9,8 +9,8 @@
/*static inline void OPNAME ## _no_rnd_pixels8_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
/*static inline void OPNAME ## _no_rnd_pixels8_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),no_rnd_avg2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst ),no_rnd_avg
3
2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst+4),no_rnd_avg2(LD32(src1+4),LD32(src2+4)) ); \
OP(LP(dst+4),no_rnd_avg
3
2(LD32(src1+4),LD32(src2+4)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -20,8 +20,8 @@
...
@@ -20,8 +20,8 @@
static inline void OPNAME ## _pixels8_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels8_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst+4),rnd_avg2(LD32(src1+4),LD32(src2+4)) ); \
OP(LP(dst+4),rnd_avg
3
2(LD32(src1+4),LD32(src2+4)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -31,7 +31,7 @@ static inline void OPNAME ## _pixels8_l2(uint8_t *dst, const uint8_t *src1, cons
...
@@ -31,7 +31,7 @@ static inline void OPNAME ## _pixels8_l2(uint8_t *dst, const uint8_t *src1, cons
static inline void OPNAME ## _pixels4_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels4_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LD32(src1 ),LD32(src2 )) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -41,10 +41,10 @@ static inline void OPNAME ## _pixels4_l2(uint8_t *dst, const uint8_t *src1, cons
...
@@ -41,10 +41,10 @@ static inline void OPNAME ## _pixels4_l2(uint8_t *dst, const uint8_t *src1, cons
static inline void OPNAME ## _no_rnd_pixels16_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _no_rnd_pixels16_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),no_rnd_avg2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst ),no_rnd_avg
3
2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst+4),no_rnd_avg2(LD32(src1+4),LD32(src2+4)) ); \
OP(LP(dst+4),no_rnd_avg
3
2(LD32(src1+4),LD32(src2+4)) ); \
OP(LP(dst+8),no_rnd_avg2(LD32(src1+8),LD32(src2+8)) ); \
OP(LP(dst+8),no_rnd_avg
3
2(LD32(src1+8),LD32(src2+8)) ); \
OP(LP(dst+12),no_rnd_avg2(LD32(src1+12),LD32(src2+12)) ); \
OP(LP(dst+12),no_rnd_avg
3
2(LD32(src1+12),LD32(src2+12)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -54,10 +54,10 @@ static inline void OPNAME ## _no_rnd_pixels16_l2(uint8_t *dst, const uint8_t *sr
...
@@ -54,10 +54,10 @@ static inline void OPNAME ## _no_rnd_pixels16_l2(uint8_t *dst, const uint8_t *sr
static inline void OPNAME ## _pixels16_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels16_l2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LD32(src1 ),LD32(src2 )) ); \
OP(LP(dst+4),rnd_avg2(LD32(src1+4),LD32(src2+4)) ); \
OP(LP(dst+4),rnd_avg
3
2(LD32(src1+4),LD32(src2+4)) ); \
OP(LP(dst+8),rnd_avg2(LD32(src1+8),LD32(src2+8)) ); \
OP(LP(dst+8),rnd_avg
3
2(LD32(src1+8),LD32(src2+8)) ); \
OP(LP(dst+12),rnd_avg2(LD32(src1+12),LD32(src2+12)) ); \
OP(LP(dst+12),rnd_avg
3
2(LD32(src1+12),LD32(src2+12)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -67,7 +67,7 @@ static inline void OPNAME ## _pixels16_l2(uint8_t *dst, const uint8_t *src1, con
...
@@ -67,7 +67,7 @@ static inline void OPNAME ## _pixels16_l2(uint8_t *dst, const uint8_t *src1, con
static inline void OPNAME ## _pixels4_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels4_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LP(src1 ),LP(src2 )) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -77,7 +77,7 @@ static inline void OPNAME ## _pixels4_l2_aligned(uint8_t *dst, const uint8_t *sr
...
@@ -77,7 +77,7 @@ static inline void OPNAME ## _pixels4_l2_aligned(uint8_t *dst, const uint8_t *sr
static inline void OPNAME ## _pixels4_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels4_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LD32(src1 ),LP(src2 )) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -87,10 +87,10 @@ static inline void OPNAME ## _pixels4_l2_aligned2(uint8_t *dst, const uint8_t *s
...
@@ -87,10 +87,10 @@ static inline void OPNAME ## _pixels4_l2_aligned2(uint8_t *dst, const uint8_t *s
static inline void OPNAME ## _no_rnd_pixels16_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _no_rnd_pixels16_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),no_rnd_avg2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst ),no_rnd_avg
3
2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst+4),no_rnd_avg2(LD32(src1+4),LP(src2+4)) ); \
OP(LP(dst+4),no_rnd_avg
3
2(LD32(src1+4),LP(src2+4)) ); \
OP(LP(dst+8),no_rnd_avg2(LD32(src1+8),LP(src2+8)) ); \
OP(LP(dst+8),no_rnd_avg
3
2(LD32(src1+8),LP(src2+8)) ); \
OP(LP(dst+12),no_rnd_avg2(LD32(src1+12),LP(src2+12)) ); \
OP(LP(dst+12),no_rnd_avg
3
2(LD32(src1+12),LP(src2+12)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -100,10 +100,10 @@ static inline void OPNAME ## _no_rnd_pixels16_l2_aligned2(uint8_t *dst, const ui
...
@@ -100,10 +100,10 @@ static inline void OPNAME ## _no_rnd_pixels16_l2_aligned2(uint8_t *dst, const ui
static inline void OPNAME ## _pixels16_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels16_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst+4),rnd_avg2(LD32(src1+4),LP(src2+4)) ); \
OP(LP(dst+4),rnd_avg
3
2(LD32(src1+4),LP(src2+4)) ); \
OP(LP(dst+8),rnd_avg2(LD32(src1+8),LP(src2+8)) ); \
OP(LP(dst+8),rnd_avg
3
2(LD32(src1+8),LP(src2+8)) ); \
OP(LP(dst+12),rnd_avg2(LD32(src1+12),LP(src2+12)) ); \
OP(LP(dst+12),rnd_avg
3
2(LD32(src1+12),LP(src2+12)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -113,8 +113,8 @@ static inline void OPNAME ## _pixels16_l2_aligned2(uint8_t *dst, const uint8_t *
...
@@ -113,8 +113,8 @@ static inline void OPNAME ## _pixels16_l2_aligned2(uint8_t *dst, const uint8_t *
static inline void OPNAME ## _no_rnd_pixels8_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _no_rnd_pixels8_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {
/* onlye src2 aligned */
\
do {
/* onlye src2 aligned */
\
OP(LP(dst ),no_rnd_avg2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst ),no_rnd_avg
3
2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst+4),no_rnd_avg2(LD32(src1+4),LP(src2+4)) ); \
OP(LP(dst+4),no_rnd_avg
3
2(LD32(src1+4),LP(src2+4)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -124,8 +124,8 @@ static inline void OPNAME ## _no_rnd_pixels8_l2_aligned2(uint8_t *dst, const uin
...
@@ -124,8 +124,8 @@ static inline void OPNAME ## _no_rnd_pixels8_l2_aligned2(uint8_t *dst, const uin
static inline void OPNAME ## _pixels8_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels8_l2_aligned2(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LD32(src1 ),LP(src2 )) ); \
OP(LP(dst+4),rnd_avg2(LD32(src1+4),LP(src2+4)) ); \
OP(LP(dst+4),rnd_avg
3
2(LD32(src1+4),LP(src2+4)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -135,8 +135,8 @@ static inline void OPNAME ## _pixels8_l2_aligned2(uint8_t *dst, const uint8_t *s
...
@@ -135,8 +135,8 @@ static inline void OPNAME ## _pixels8_l2_aligned2(uint8_t *dst, const uint8_t *s
static inline void OPNAME ## _no_rnd_pixels8_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _no_rnd_pixels8_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),no_rnd_avg2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst ),no_rnd_avg
3
2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst+4),no_rnd_avg2(LP(src1+4),LP(src2+4)) ); \
OP(LP(dst+4),no_rnd_avg
3
2(LP(src1+4),LP(src2+4)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -146,8 +146,8 @@ static inline void OPNAME ## _no_rnd_pixels8_l2_aligned(uint8_t *dst, const uint
...
@@ -146,8 +146,8 @@ static inline void OPNAME ## _no_rnd_pixels8_l2_aligned(uint8_t *dst, const uint
static inline void OPNAME ## _pixels8_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels8_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst+4),rnd_avg2(LP(src1+4),LP(src2+4)) ); \
OP(LP(dst+4),rnd_avg
3
2(LP(src1+4),LP(src2+4)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -157,10 +157,10 @@ static inline void OPNAME ## _pixels8_l2_aligned(uint8_t *dst, const uint8_t *sr
...
@@ -157,10 +157,10 @@ static inline void OPNAME ## _pixels8_l2_aligned(uint8_t *dst, const uint8_t *sr
static inline void OPNAME ## _no_rnd_pixels16_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _no_rnd_pixels16_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),no_rnd_avg2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst ),no_rnd_avg
3
2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst+4),no_rnd_avg2(LP(src1+4),LP(src2+4)) ); \
OP(LP(dst+4),no_rnd_avg
3
2(LP(src1+4),LP(src2+4)) ); \
OP(LP(dst+8),no_rnd_avg2(LP(src1+8),LP(src2+8)) ); \
OP(LP(dst+8),no_rnd_avg
3
2(LP(src1+8),LP(src2+8)) ); \
OP(LP(dst+12),no_rnd_avg2(LP(src1+12),LP(src2+12)) ); \
OP(LP(dst+12),no_rnd_avg
3
2(LP(src1+12),LP(src2+12)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -170,10 +170,10 @@ static inline void OPNAME ## _no_rnd_pixels16_l2_aligned(uint8_t *dst, const uin
...
@@ -170,10 +170,10 @@ static inline void OPNAME ## _no_rnd_pixels16_l2_aligned(uint8_t *dst, const uin
static inline void OPNAME ## _pixels16_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
static inline void OPNAME ## _pixels16_l2_aligned(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dst_stride, int src_stride1, int src_stride2, int h) \
{\
{\
do {\
do {\
OP(LP(dst ),rnd_avg2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst ),rnd_avg
3
2(LP(src1 ),LP(src2 )) ); \
OP(LP(dst+4),rnd_avg2(LP(src1+4),LP(src2+4)) ); \
OP(LP(dst+4),rnd_avg
3
2(LP(src1+4),LP(src2+4)) ); \
OP(LP(dst+8),rnd_avg2(LP(src1+8),LP(src2+8)) ); \
OP(LP(dst+8),rnd_avg
3
2(LP(src1+8),LP(src2+8)) ); \
OP(LP(dst+12),rnd_avg2(LP(src1+12),LP(src2+12)) ); \
OP(LP(dst+12),rnd_avg
3
2(LP(src1+12),LP(src2+12)) ); \
src1+=src_stride1; \
src1+=src_stride1; \
src2+=src_stride2; \
src2+=src_stride2; \
dst+=dst_stride; \
dst+=dst_stride; \
...
@@ -353,7 +353,7 @@ static inline void OPNAME ## _no_rnd_pixels16_l4_aligned0(uint8_t *dst, const ui
...
@@ -353,7 +353,7 @@ static inline void OPNAME ## _no_rnd_pixels16_l4_aligned0(uint8_t *dst, const ui
} \
} \
\
\
#define op_avg(a, b) a = rnd_avg2(a,b)
#define op_avg(a, b) a = rnd_avg
3
2(a,b)
#define op_put(a, b) a = b
#define op_put(a, b) a = b
PIXOP2
(
avg
,
op_avg
)
PIXOP2
(
avg
,
op_avg
)
...
...
libavcodec/svq3.c
View file @
d8085ea7
...
@@ -742,7 +742,7 @@ static int svq3_decode_frame (AVCodecContext *avctx,
...
@@ -742,7 +742,7 @@ static int svq3_decode_frame (AVCodecContext *avctx,
if
(
avctx
->
debug
&
FF_DEBUG_PICT_INFO
){
if
(
avctx
->
debug
&
FF_DEBUG_PICT_INFO
){
printf
(
"%c hpel:%d, tpel:%d aqp:%d qp:%d
\n
"
,
printf
(
"%c hpel:%d, tpel:%d aqp:%d qp:%d
\n
"
,
ff
_get_pict_type_char
(
s
->
pict_type
),
h
->
halfpel_flag
,
h
->
thirdpel_flag
,
av
_get_pict_type_char
(
s
->
pict_type
),
h
->
halfpel_flag
,
h
->
thirdpel_flag
,
s
->
adaptive_quant
,
s
->
qscale
s
->
adaptive_quant
,
s
->
qscale
);
);
}
}
...
...
libavcodec/utils.c
View file @
d8085ea7
...
@@ -640,6 +640,18 @@ void avcodec_default_free_buffers(AVCodecContext *s){
...
@@ -640,6 +640,18 @@ void avcodec_default_free_buffers(AVCodecContext *s){
s
->
internal_buffer_count
=
0
;
s
->
internal_buffer_count
=
0
;
}
}
char
av_get_pict_type_char
(
int
pict_type
){
switch
(
pict_type
){
case
I_TYPE
:
return
'I'
;
case
P_TYPE
:
return
'P'
;
case
B_TYPE
:
return
'B'
;
case
S_TYPE
:
return
'S'
;
case
SI_TYPE
:
return
'i'
;
case
SP_TYPE
:
return
'p'
;
default
:
return
'?'
;
}
}
int
av_reduce
(
int
*
dst_nom
,
int
*
dst_den
,
int64_t
nom
,
int64_t
den
,
int64_t
max
){
int
av_reduce
(
int
*
dst_nom
,
int
*
dst_den
,
int64_t
nom
,
int64_t
den
,
int64_t
max
){
int
exact
=
1
,
sign
=
0
;
int
exact
=
1
,
sign
=
0
;
int64_t
gcd
,
larger
;
int64_t
gcd
,
larger
;
...
...
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