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
98ad3f3c
Commit
98ad3f3c
authored
Nov 26, 2011
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
I422_YUY2: clobber lists for MMX and SSE2
parent
0fdf4e2e
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
11 additions
and
2 deletions
+11
-2
modules/video_chroma/i422_yuy2.c
modules/video_chroma/i422_yuy2.c
+7
-0
modules/video_chroma/i422_yuy2.h
modules/video_chroma/i422_yuy2.h
+4
-2
No files found.
modules/video_chroma/i422_yuy2.c
View file @
98ad3f3c
...
@@ -72,14 +72,17 @@ vlc_module_begin ()
...
@@ -72,14 +72,17 @@ vlc_module_begin ()
set_description
(
N_
(
"Conversions from "
SRC_FOURCC
" to "
DEST_FOURCC
)
)
set_description
(
N_
(
"Conversions from "
SRC_FOURCC
" to "
DEST_FOURCC
)
)
set_capability
(
"video filter2"
,
80
)
set_capability
(
"video filter2"
,
80
)
# define CPU_CAPABILITY 0
# define CPU_CAPABILITY 0
# define VLC_TARGET
#elif defined (MODULE_NAME_IS_i422_yuy2_mmx)
#elif defined (MODULE_NAME_IS_i422_yuy2_mmx)
set_description
(
N_
(
"MMX conversions from "
SRC_FOURCC
" to "
DEST_FOURCC
)
)
set_description
(
N_
(
"MMX conversions from "
SRC_FOURCC
" to "
DEST_FOURCC
)
)
set_capability
(
"video filter2"
,
100
)
set_capability
(
"video filter2"
,
100
)
# define CPU_CAPABILITY CPU_CAPABILITY_MMX
# define CPU_CAPABILITY CPU_CAPABILITY_MMX
# define VLC_TARGET VLC_MMX
#elif defined (MODULE_NAME_IS_i422_yuy2_sse2)
#elif defined (MODULE_NAME_IS_i422_yuy2_sse2)
set_description
(
N_
(
"SSE2 conversions from "
SRC_FOURCC
" to "
DEST_FOURCC
)
)
set_description
(
N_
(
"SSE2 conversions from "
SRC_FOURCC
" to "
DEST_FOURCC
)
)
set_capability
(
"video filter2"
,
120
)
set_capability
(
"video filter2"
,
120
)
# define CPU_CAPABILITY CPU_CAPABILITY_SSE2
# define CPU_CAPABILITY CPU_CAPABILITY_SSE2
# define VLC_TARGET VLC_SSE
#endif
#endif
set_callbacks
(
Activate
,
NULL
)
set_callbacks
(
Activate
,
NULL
)
vlc_module_end
()
vlc_module_end
()
...
@@ -159,6 +162,7 @@ VIDEO_FILTER_WRAPPER( I422_Y211 )
...
@@ -159,6 +162,7 @@ VIDEO_FILTER_WRAPPER( I422_Y211 )
/*****************************************************************************
/*****************************************************************************
* I422_YUY2: planar YUV 4:2:2 to packed YUY2 4:2:2
* I422_YUY2: planar YUV 4:2:2 to packed YUY2 4:2:2
*****************************************************************************/
*****************************************************************************/
VLC_TARGET
static
void
I422_YUY2
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
static
void
I422_YUY2
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
picture_t
*
p_dest
)
picture_t
*
p_dest
)
{
{
...
@@ -252,6 +256,7 @@ static void I422_YUY2( filter_t *p_filter, picture_t *p_source,
...
@@ -252,6 +256,7 @@ static void I422_YUY2( filter_t *p_filter, picture_t *p_source,
/*****************************************************************************
/*****************************************************************************
* I422_YVYU: planar YUV 4:2:2 to packed YVYU 4:2:2
* I422_YVYU: planar YUV 4:2:2 to packed YVYU 4:2:2
*****************************************************************************/
*****************************************************************************/
VLC_TARGET
static
void
I422_YVYU
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
static
void
I422_YVYU
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
picture_t
*
p_dest
)
picture_t
*
p_dest
)
{
{
...
@@ -345,6 +350,7 @@ static void I422_YVYU( filter_t *p_filter, picture_t *p_source,
...
@@ -345,6 +350,7 @@ static void I422_YVYU( filter_t *p_filter, picture_t *p_source,
/*****************************************************************************
/*****************************************************************************
* I422_UYVY: planar YUV 4:2:2 to packed UYVY 4:2:2
* I422_UYVY: planar YUV 4:2:2 to packed UYVY 4:2:2
*****************************************************************************/
*****************************************************************************/
VLC_TARGET
static
void
I422_UYVY
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
static
void
I422_UYVY
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
picture_t
*
p_dest
)
picture_t
*
p_dest
)
{
{
...
@@ -449,6 +455,7 @@ static void I422_IUYV( filter_t *p_filter, picture_t *p_source,
...
@@ -449,6 +455,7 @@ static void I422_IUYV( filter_t *p_filter, picture_t *p_source,
/*****************************************************************************
/*****************************************************************************
* I422_cyuv: planar YUV 4:2:2 to upside-down packed UYVY 4:2:2
* I422_cyuv: planar YUV 4:2:2 to upside-down packed UYVY 4:2:2
*****************************************************************************/
*****************************************************************************/
VLC_TARGET
static
void
I422_cyuv
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
static
void
I422_cyuv
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
picture_t
*
p_dest
)
picture_t
*
p_dest
)
{
{
...
...
modules/video_chroma/i422_yuy2.h
View file @
98ad3f3c
...
@@ -35,7 +35,8 @@
...
@@ -35,7 +35,8 @@
MMX_INSTRUCTIONS \
MMX_INSTRUCTIONS \
: \
: \
: "r" (p_line), "r" (p_y), \
: "r" (p_line), "r" (p_y), \
"r" (p_u), "r" (p_v) ); \
"r" (p_u), "r" (p_v) \
: "mm0", "mm1", "mm2" ); \
p_line += 16; p_y += 8; \
p_line += 16; p_y += 8; \
p_u += 4; p_v += 4; \
p_u += 4; p_v += 4; \
} while(0)
} while(0)
...
@@ -145,7 +146,8 @@ movq %%mm1, 8(%0) # Store high UYVY \n\
...
@@ -145,7 +146,8 @@ movq %%mm1, 8(%0) # Store high UYVY \n\
MMX_INSTRUCTIONS \
MMX_INSTRUCTIONS \
: \
: \
: "r" (p_line), "r" (p_y), \
: "r" (p_line), "r" (p_y), \
"r" (p_u), "r" (p_v) ); \
"r" (p_u), "r" (p_v) \
: "xmm0", "xmm1", "xmm2" ); \
p_line += 32; p_y += 16; \
p_line += 32; p_y += 16; \
p_u += 8; p_v += 8; \
p_u += 8; p_v += 8; \
} while(0)
} while(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