Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
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-2-2
Commits
eae2f440
Commit
eae2f440
authored
Apr 03, 2014
by
Jean-Paul Saman
Committed by
Jean-Paul Saman
May 12, 2014
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
codec/avcodec/swscale: Support VLC_CODEC_BGRA
parent
3f38d68d
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
8 additions
and
3 deletions
+8
-3
modules/codec/avcodec/chroma.c
modules/codec/avcodec/chroma.c
+1
-0
modules/video_chroma/swscale.c
modules/video_chroma/swscale.c
+7
-3
No files found.
modules/codec/avcodec/chroma.c
View file @
eae2f440
...
...
@@ -128,6 +128,7 @@ static const struct
{
VLC_CODEC_RGBA
,
PIX_FMT_RGBA
,
0
,
0
,
0
},
{
VLC_CODEC_ARGB
,
PIX_FMT_ARGB
,
0
,
0
,
0
},
{
VLC_CODEC_BGRA
,
PIX_FMT_BGRA
,
0
,
0
,
0
},
{
VLC_CODEC_GREY
,
PIX_FMT_GRAY8
,
0
,
0
,
0
},
/* Paletized RGB */
...
...
modules/video_chroma/swscale.c
View file @
eae2f440
...
...
@@ -274,6 +274,10 @@ static void FixParameters( int *pi_fmt, bool *pb_has_a, bool *pb_swap_uv, vlc_fo
*
pi_fmt
=
PIX_FMT_BGR32_1
;
*
pb_has_a
=
true
;
break
;
case
VLC_CODEC_BGRA
:
*
pi_fmt
=
PIX_FMT_RGB32
;
*
pb_has_a
=
true
;
break
;
case
VLC_CODEC_YV12
:
*
pi_fmt
=
PIX_FMT_YUV420P
;
*
pb_swap_uv
=
true
;
...
...
@@ -648,7 +652,7 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic )
/* We extract the A plane to rescale it, and then we reinject it. */
if
(
p_fmti
->
i_chroma
==
VLC_CODEC_RGBA
)
ExtractA
(
p_sys
->
p_src_a
,
p_src
,
p_fmti
->
i_visible_width
*
p_sys
->
i_extend_factor
,
p_fmti
->
i_visible_height
,
OFFSET_A
);
else
if
(
p_fmti
->
i_chroma
==
VLC_CODEC_ARGB
)
else
if
(
p_fmti
->
i_chroma
==
VLC_CODEC_ARGB
||
p_fmti
->
i_chroma
==
VLC_CODEC_BGRA
)
ExtractA
(
p_sys
->
p_src_a
,
p_src
,
p_fmti
->
i_visible_width
*
p_sys
->
i_extend_factor
,
p_fmti
->
i_visible_height
,
0
);
else
plane_CopyPixels
(
p_sys
->
p_src_a
->
p
,
p_src
->
p
+
A_PLANE
);
...
...
@@ -656,7 +660,7 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic )
Convert
(
p_filter
,
p_sys
->
ctxA
,
p_sys
->
p_dst_a
,
p_sys
->
p_src_a
,
p_fmti
->
i_visible_height
,
0
,
1
,
false
,
false
);
if
(
p_fmto
->
i_chroma
==
VLC_CODEC_RGBA
)
InjectA
(
p_dst
,
p_sys
->
p_dst_a
,
p_fmto
->
i_visible_width
*
p_sys
->
i_extend_factor
,
p_fmto
->
i_visible_height
,
OFFSET_A
);
else
if
(
p_fmto
->
i_chroma
==
VLC_CODEC_ARGB
)
else
if
(
p_fmto
->
i_chroma
==
VLC_CODEC_ARGB
||
p_fmto
->
i_chroma
==
VLC_CODEC_BGRA
)
InjectA
(
p_dst
,
p_sys
->
p_dst_a
,
p_fmto
->
i_visible_width
*
p_sys
->
i_extend_factor
,
p_fmto
->
i_visible_height
,
0
);
else
plane_CopyPixels
(
p_dst
->
p
+
A_PLANE
,
p_sys
->
p_dst_a
->
p
);
...
...
@@ -666,7 +670,7 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic )
/* We inject a complete opaque alpha plane */
if
(
p_fmto
->
i_chroma
==
VLC_CODEC_RGBA
)
FillA
(
&
p_dst
->
p
[
0
],
OFFSET_A
);
else
if
(
p_fmto
->
i_chroma
==
VLC_CODEC_ARGB
)
else
if
(
p_fmto
->
i_chroma
==
VLC_CODEC_ARGB
||
p_fmto
->
i_chroma
==
VLC_CODEC_BGRA
)
FillA
(
&
p_dst
->
p
[
0
],
0
);
else
FillA
(
&
p_dst
->
p
[
A_PLANE
],
0
);
...
...
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