Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc
Commits
aceed8b7
Commit
aceed8b7
authored
Aug 30, 2009
by
Laurent Aimar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Removed useless defines in blend.
parent
8e8bb586
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
27 additions
and
41 deletions
+27
-41
modules/video_filter/blend.c
modules/video_filter/blend.c
+27
-41
No files found.
modules/video_filter/blend.c
View file @
aceed8b7
...
...
@@ -46,20 +46,6 @@ vlc_module_begin ()
set_callbacks
(
OpenFilter
,
CloseFilter
)
vlc_module_end
()
#define FCC_YUVA VLC_CODEC_YUVA
#define FCC_YUVP VLC_CODEC_YUVP
#define FCC_RGBA VLC_CODEC_RGBA
#define FCC_I420 VLC_CODEC_I420
#define FCC_YV12 VLC_CODEC_YV12
#define FCC_YUY2 VLC_CODEC_YUYV
#define FCC_UYVY VLC_CODEC_UYVY
#define FCC_YVYU VLC_CODEC_YVYU
#define FCC_RV15 VLC_CODEC_RGB15
#define FCC_RV16 VLC_CODEC_RGB16
#define FCC_RV24 VLC_CODEC_RGB24
#define FCC_RV32 VLC_CODEC_RGB32
/****************************************************************************
* Local prototypes
****************************************************************************/
...
...
@@ -118,14 +104,14 @@ static int OpenFilter( vlc_object_t *p_this )
* We could try to use a chroma filter if we can't. */
int
in_chroma
=
p_filter
->
fmt_in
.
video
.
i_chroma
;
int
out_chroma
=
p_filter
->
fmt_out
.
video
.
i_chroma
;
if
(
(
in_chroma
!=
FCC_YUVA
&&
in_chroma
!=
FC
C_I420
&&
in_chroma
!=
FCC_YV12
&&
in_chroma
!=
FC
C_YUVP
&&
in_chroma
!=
FC
C_RGBA
)
||
(
out_chroma
!=
FCC_I420
&&
out_chroma
!=
FCC_YUY2
&&
out_chroma
!=
FCC_YV12
&&
out_chroma
!=
FC
C_UYVY
&&
out_chroma
!=
FCC_YVYU
&&
out_chroma
!=
FCC_RV
15
&&
out_chroma
!=
FCC_YVYU
&&
out_chroma
!=
FCC_RV
16
&&
out_chroma
!=
FCC_RV24
&&
out_chroma
!=
FCC_RV
32
)
)
if
(
(
in_chroma
!=
VLC_CODEC_YUVA
&&
in_chroma
!=
VLC_CODE
C_I420
&&
in_chroma
!=
VLC_CODEC_YV12
&&
in_chroma
!=
VLC_CODE
C_YUVP
&&
in_chroma
!=
VLC_CODE
C_RGBA
)
||
(
out_chroma
!=
VLC_CODEC_I420
&&
out_chroma
!=
VLC_CODEC_YUYV
&&
out_chroma
!=
VLC_CODEC_YV12
&&
out_chroma
!=
VLC_CODE
C_UYVY
&&
out_chroma
!=
VLC_CODEC_YVYU
&&
out_chroma
!=
VLC_CODEC_RGB
15
&&
out_chroma
!=
VLC_CODEC_YVYU
&&
out_chroma
!=
VLC_CODEC_RGB
16
&&
out_chroma
!=
VLC_CODEC_RGB24
&&
out_chroma
!=
VLC_CODEC_RGB
32
)
)
{
return
VLC_EGENERIC
;
}
...
...
@@ -157,16 +143,16 @@ typedef void (*BlendFunction)( filter_t *,
picture_t
*
,
const
picture_t
*
,
int
,
int
,
int
,
int
,
int
);
#define
FCC_PLANAR_420 { FCC_I420, FC
C_YV12, 0 }
#define
FCC_PACKED_422 { FCC_YUY2, FCC_UYVY, FC
C_YVYU, 0 }
#define
FCC_RGB_16 { FCC_RV15, FCC_RV
16, 0 }
#define
FCC_RGB_24 { FCC_RV24, FCC_RV
32, 0 }
#define
VLC_CODEC_PLANAR_420 { VLC_CODEC_I420, VLC_CODE
C_YV12, 0 }
#define
VLC_CODEC_PACKED_422 { VLC_CODEC_YUYV, VLC_CODEC_UYVY, VLC_CODE
C_YVYU, 0 }
#define
VLC_CODEC_RGB_16 { VLC_CODEC_RGB15, VLC_CODEC_RGB
16, 0 }
#define
VLC_CODEC_RGB_24 { VLC_CODEC_RGB24, VLC_CODEC_RGB
32, 0 }
#define BLEND_CFG( fccSrc, fctPlanar, fctPacked, fctRgb16, fctRgb24 ) \
{ .src = fccSrc, .p_dst =
FC
C_PLANAR_420, .pf_blend = fctPlanar }, \
{ .src = fccSrc, .p_dst =
FC
C_PACKED_422, .pf_blend = fctPacked }, \
{ .src = fccSrc, .p_dst =
FC
C_RGB_16, .pf_blend = fctRgb16 }, \
{ .src = fccSrc, .p_dst =
FC
C_RGB_24, .pf_blend = fctRgb24 }
{ .src = fccSrc, .p_dst =
VLC_CODE
C_PLANAR_420, .pf_blend = fctPlanar }, \
{ .src = fccSrc, .p_dst =
VLC_CODE
C_PACKED_422, .pf_blend = fctPacked }, \
{ .src = fccSrc, .p_dst =
VLC_CODE
C_RGB_16, .pf_blend = fctRgb16 }, \
{ .src = fccSrc, .p_dst =
VLC_CODE
C_RGB_24, .pf_blend = fctRgb24 }
static
const
struct
{
...
...
@@ -175,15 +161,15 @@ static const struct
BlendFunction
pf_blend
;
}
p_blend_cfg
[]
=
{
BLEND_CFG
(
FC
C_YUVA
,
BlendYUVAI420
,
BlendYUVAYUVPacked
,
BlendYUVARV16
,
BlendYUVARV24
),
BLEND_CFG
(
VLC_CODE
C_YUVA
,
BlendYUVAI420
,
BlendYUVAYUVPacked
,
BlendYUVARV16
,
BlendYUVARV24
),
BLEND_CFG
(
FC
C_YUVP
,
BlendPalI420
,
BlendPalYUVPacked
,
BlendPalRV
,
BlendPalRV
),
BLEND_CFG
(
VLC_CODE
C_YUVP
,
BlendPalI420
,
BlendPalYUVPacked
,
BlendPalRV
,
BlendPalRV
),
BLEND_CFG
(
FC
C_RGBA
,
BlendRGBAI420
,
BlendRGBAYUVPacked
,
BlendRGBAR16
,
BlendRGBAR24
),
BLEND_CFG
(
VLC_CODE
C_RGBA
,
BlendRGBAI420
,
BlendRGBAYUVPacked
,
BlendRGBAR16
,
BlendRGBAR24
),
BLEND_CFG
(
FC
C_I420
,
BlendI420I420
,
BlendI420YUVPacked
,
BlendI420R16
,
BlendI420R24
),
BLEND_CFG
(
VLC_CODE
C_I420
,
BlendI420I420
,
BlendI420YUVPacked
,
BlendI420R16
,
BlendI420R24
),
BLEND_CFG
(
FC
C_YV12
,
BlendI420I420
,
BlendI420YUVPacked
,
BlendI420R16
,
BlendI420R24
),
BLEND_CFG
(
VLC_CODE
C_YV12
,
BlendI420I420
,
BlendI420YUVPacked
,
BlendI420R16
,
BlendI420R24
),
{
0
,
{
0
,},
NULL
}
};
...
...
@@ -326,9 +312,9 @@ static void vlc_yuv_packed_index( int *pi_y, int *pi_u, int *pi_v, vlc_fourcc_t
vlc_fourcc_t
chroma
;
int
y
,
u
,
v
;
}
p_index
[]
=
{
{
FCC_YUY2
,
0
,
1
,
3
},
{
FC
C_UYVY
,
1
,
0
,
2
},
{
FC
C_YVYU
,
0
,
3
,
1
},
{
VLC_CODEC_YUYV
,
0
,
1
,
3
},
{
VLC_CODE
C_UYVY
,
1
,
0
,
2
},
{
VLC_CODE
C_YVYU
,
0
,
3
,
1
},
{
0
,
0
,
0
,
0
}
};
int
i
;
...
...
@@ -373,12 +359,12 @@ static void vlc_blend_rgb16( uint16_t *p_dst,
static
void
vlc_rgb_index
(
int
*
pi_rindex
,
int
*
pi_gindex
,
int
*
pi_bindex
,
const
video_format_t
*
p_fmt
)
{
if
(
p_fmt
->
i_chroma
!=
FCC_RV24
&&
p_fmt
->
i_chroma
!=
FCC_RV
32
)
if
(
p_fmt
->
i_chroma
!=
VLC_CODEC_RGB24
&&
p_fmt
->
i_chroma
!=
VLC_CODEC_RGB
32
)
return
;
/* XXX it will works only if mask are 8 bits aligned */
#ifdef WORDS_BIGENDIAN
const
int
i_mask_bits
=
p_fmt
->
i_chroma
==
FCC_RV
24
?
24
:
32
;
const
int
i_mask_bits
=
p_fmt
->
i_chroma
==
VLC_CODEC_RGB
24
?
24
:
32
;
*
pi_rindex
=
(
i_mask_bits
-
p_fmt
->
i_lrshift
)
/
8
;
*
pi_gindex
=
(
i_mask_bits
-
p_fmt
->
i_lgshift
)
/
8
;
*
pi_bindex
=
(
i_mask_bits
-
p_fmt
->
i_lbshift
)
/
8
;
...
...
@@ -1183,7 +1169,7 @@ static void BlendPalRV( filter_t *p_filter,
continue
;
/* Blending */
if
(
p_filter
->
fmt_out
.
video
.
i_chroma
==
FCC_RV15
||
p_filter
->
fmt_out
.
video
.
i_chroma
==
FCC_RV
16
)
if
(
p_filter
->
fmt_out
.
video
.
i_chroma
==
VLC_CODEC_RGB15
||
p_filter
->
fmt_out
.
video
.
i_chroma
==
VLC_CODEC_RGB
16
)
vlc_blend_rgb16
(
(
uint16_t
*
)
&
p_dst
[
i_x
*
i_pix_pitch
],
rgbpal
[
p_src
[
i_x
]][
0
],
rgbpal
[
p_src
[
i_x
]][
1
],
rgbpal
[
p_src
[
i_x
]][
2
],
i_trans
,
...
...
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