Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
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-gpu
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