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
fd9a5285
Commit
fd9a5285
authored
Oct 03, 2015
by
Michael Niedermayer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
avfilter/vf_blend: Fix argument types, fix segfault in asm
Signed-off-by:
Michael Niedermayer
<
michael@niedermayer.cc
>
parent
d8982000
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
17 additions
and
17 deletions
+17
-17
blend.h
libavfilter/blend.h
+1
-1
vf_blend.c
libavfilter/vf_blend.c
+4
-4
vf_blend_init.c
libavfilter/x86/vf_blend_init.c
+12
-12
No files found.
libavfilter/blend.h
View file @
fd9a5285
...
...
@@ -63,7 +63,7 @@ typedef struct FilterParams {
void
(
*
blend
)(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
}
FilterParams
;
...
...
libavfilter/vf_blend.c
View file @
fd9a5285
...
...
@@ -120,7 +120,7 @@ AVFILTER_DEFINE_CLASS(blend);
static
void
blend_normal
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
FilterParams
*
param
,
double
*
values
)
{
av_image_copy_plane
(
dst
,
dst_linesize
,
top
,
top_linesize
,
width
,
end
-
start
);
...
...
@@ -130,7 +130,7 @@ static void blend_normal(const uint8_t *top, ptrdiff_t top_linesize,
static void blend_## name##_8bit(const uint8_t *top, ptrdiff_t top_linesize, \
const uint8_t *bottom, ptrdiff_t bottom_linesize, \
uint8_t *dst, ptrdiff_t dst_linesize, \
int width, int start, in
t end, \
ptrdiff_t width, ptrdiff_t start, ptrdiff_
t end, \
FilterParams *param, double *values) \
{ \
double opacity = param->opacity; \
...
...
@@ -150,7 +150,7 @@ static void blend_## name##_8bit(const uint8_t *top, ptrdiff_t top_linesize,
static void blend_## name##_16bit(const uint8_t *_top, ptrdiff_t top_linesize, \
const uint8_t *_bottom, ptrdiff_t bottom_linesize, \
uint8_t *_dst, ptrdiff_t dst_linesize, \
int width, int start, in
t end, \
ptrdiff_t width, ptrdiff_t start, ptrdiff_
t end, \
FilterParams *param, double *values) \
{ \
const uint16_t *top = (uint16_t*)_top; \
...
...
@@ -252,7 +252,7 @@ DEFINE_BLEND16(linearlight,av_clip_uint16((B < 32768) ? B + 2 * A - 65535 : B +
static void blend_expr_## name(const uint8_t *_top, ptrdiff_t top_linesize, \
const uint8_t *_bottom, ptrdiff_t bottom_linesize, \
uint8_t *_dst, ptrdiff_t dst_linesize, \
int width, int start, in
t end, \
ptrdiff_t width, ptrdiff_t start, ptrdiff_
t end, \
FilterParams *param, double *values) \
{ \
const type *top = (type*)_top; \
...
...
libavfilter/x86/vf_blend_init.c
View file @
fd9a5285
...
...
@@ -26,73 +26,73 @@
void
ff_blend_addition_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_addition128_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_average_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_and_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_darken_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_difference128_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_lighten_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_or_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_subtract_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_xor_sse2
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_difference_ssse3
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
void
ff_blend_negation_ssse3
(
const
uint8_t
*
top
,
ptrdiff_t
top_linesize
,
const
uint8_t
*
bottom
,
ptrdiff_t
bottom_linesize
,
uint8_t
*
dst
,
ptrdiff_t
dst_linesize
,
int
width
,
int
start
,
in
t
end
,
ptrdiff_t
width
,
ptrdiff_t
start
,
ptrdiff_
t
end
,
struct
FilterParams
*
param
,
double
*
values
);
av_cold
void
ff_blend_init_x86
(
FilterParams
*
param
,
int
is_16bit
)
...
...
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