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
ee7c062a
Commit
ee7c062a
authored
Jan 10, 2010
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Remove YMGA chroma
parent
3186de40
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
1 addition
and
180 deletions
+1
-180
configure.ac
configure.ac
+1
-4
include/vlc_fourcc.h
include/vlc_fourcc.h
+0
-2
modules/video_chroma/Modules.am
modules/video_chroma/Modules.am
+0
-8
modules/video_chroma/i420_ymga.c
modules/video_chroma/i420_ymga.c
+0
-163
po/POTFILES.in
po/POTFILES.in
+0
-1
src/misc/fourcc.c
src/misc/fourcc.c
+0
-2
No files found.
configure.ac
View file @
ee7c062a
...
...
@@ -1253,7 +1253,6 @@ if test "${SYS}" != "mingwce"; then
VLC_ADD_PLUGIN([gaussianblur])
VLC_ADD_PLUGIN([i420_yuy2])
VLC_ADD_PLUGIN([i422_yuy2])
VLC_ADD_PLUGIN([i420_ymga])
VLC_ADD_PLUGIN([i422_i420])
VLC_ADD_PLUGIN([yuy2_i422])
VLC_ADD_PLUGIN([yuy2_i420])
...
...
@@ -1291,7 +1290,6 @@ if test "${SYS}" = "mingwce"; then
VLC_ADD_PLUGIN([dtstospdif])
VLC_ADD_PLUGIN([i420_yuy2])
VLC_ADD_PLUGIN([i422_yuy2])
VLC_ADD_PLUGIN([i420_ymga])
VLC_ADD_PLUGIN([i422_i420])
VLC_ADD_PLUGIN([yuy2_i422])
VLC_ADD_PLUGIN([yuy2_i420])
...
...
@@ -1364,7 +1362,7 @@ AS_IF([test "${enable_mmx}" != "no"], [
AS_IF([test "${ac_cv_c_mmx_intrinsics}" != "no"], [
AC_DEFINE(HAVE_MMX_INTRINSICS, 1,
[Define to 1 if MMX intrinsics are available.])
VLC_ADD_CFLAGS([memcpymmx i420_rgb_mmx i420_yuy2_mmx i422_yuy2_mmx
i420_ymga_mmx
],[-mmmx])
VLC_ADD_CFLAGS([memcpymmx i420_rgb_mmx i420_yuy2_mmx i422_yuy2_mmx],[-mmmx])
])
AC_CACHE_CHECK([if $CC groks MMX inline assembly],
...
...
@@ -1379,7 +1377,6 @@ AS_IF([test "${enable_mmx}" != "no"], [
VLC_ADD_PLUGIN([i420_rgb_mmx])
VLC_ADD_PLUGIN([i420_yuy2_mmx])
VLC_ADD_PLUGIN([i422_yuy2_mmx])
VLC_ADD_PLUGIN([i420_ymga_mmx])
])
AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly],
...
...
include/vlc_fourcc.h
View file @
ee7c062a
...
...
@@ -166,8 +166,6 @@
#define VLC_CODEC_YVYU VLC_FOURCC('Y','V','Y','U')
/* Packed YUV 2:1:1, Y:U:Y:V */
#define VLC_CODEC_Y211 VLC_FOURCC('Y','2','1','1')
/* Planar Y, packed UV, from Matrox */
#define VLC_CODEC_YMGA VLC_FOURCC('Y','M','G','A')
/* Packed YUV 4:2:2, U:Y:V:Y, reverted */
#define VLC_CODEC_CYUV VLC_FOURCC('c','y','u','v')
/* 10-bit 4:2:2 Component YCbCr */
...
...
modules/video_chroma/Modules.am
View file @
ee7c062a
...
...
@@ -59,14 +59,6 @@ SOURCES_i422_i420 = \
i422_i420.c \
$(NULL)
SOURCES_i420_ymga = \
i420_ymga.c \
$(NULL)
SOURCES_i420_ymga_mmx = \
i420_ymga.c \
$(NULL)
SOURCES_grey_yuv = \
grey_yuv.c \
$(NULL)
...
...
modules/video_chroma/i420_ymga.c
deleted
100644 → 0
View file @
3186de40
/*****************************************************************************
* i420_ymga.c : YUV to YUV conversion module for vlc
*****************************************************************************
* Copyright (C) 2000, 2001 the VideoLAN team
* $Id$
*
* Authors: Samuel Hocevar <sam@zoy.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
/*****************************************************************************
* Preamble
*****************************************************************************/
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
#include <errno.h>
/* ENOMEM */
#include <vlc_common.h>
#include <vlc_plugin.h>
#include <vlc_filter.h>
#include <vlc_cpu.h>
#define SRC_FOURCC "I420,IYUV,YV12"
#define DEST_FOURCC "YMGA"
/*****************************************************************************
* Local and extern prototypes.
*****************************************************************************/
static
int
Activate
(
vlc_object_t
*
);
static
void
I420_YMGA
(
filter_t
*
,
picture_t
*
,
picture_t
*
);
static
picture_t
*
I420_YMGA_Filter
(
filter_t
*
,
picture_t
*
);
/*****************************************************************************
* Module descriptor
*****************************************************************************/
vlc_module_begin
()
#if defined (MODULE_NAME_IS_i420_ymga)
set_description
(
N_
(
"Conversions from "
SRC_FOURCC
" to "
DEST_FOURCC
)
)
set_capability
(
"video filter2"
,
80
)
#elif defined (MODULE_NAME_IS_i420_ymga_mmx)
set_description
(
N_
(
"MMX conversions from "
SRC_FOURCC
" to "
DEST_FOURCC
)
)
set_capability
(
"video filter2"
,
100
)
add_requirement
(
MMX
)
#endif
set_callbacks
(
Activate
,
NULL
)
vlc_module_end
()
/*****************************************************************************
* Activate: allocate a chroma function
*****************************************************************************
* This function allocates and initializes a chroma function
*****************************************************************************/
static
int
Activate
(
vlc_object_t
*
p_this
)
{
filter_t
*
p_filter
=
(
filter_t
*
)
p_this
;
if
(
p_filter
->
fmt_in
.
video
.
i_width
&
1
||
p_filter
->
fmt_in
.
video
.
i_height
&
1
)
{
return
-
1
;
}
if
(
p_filter
->
fmt_in
.
video
.
i_width
!=
p_filter
->
fmt_out
.
video
.
i_width
||
p_filter
->
fmt_in
.
video
.
i_height
!=
p_filter
->
fmt_out
.
video
.
i_height
)
return
-
1
;
switch
(
p_filter
->
fmt_in
.
video
.
i_chroma
)
{
case
VLC_CODEC_YV12
:
case
VLC_CODEC_I420
:
switch
(
p_filter
->
fmt_out
.
video
.
i_chroma
)
{
case
VLC_CODEC_YMGA
:
p_filter
->
pf_video_filter
=
I420_YMGA_Filter
;
break
;
default:
return
-
1
;
}
break
;
default:
return
-
1
;
}
return
0
;
}
/* Following functions are local */
VIDEO_FILTER_WRAPPER
(
I420_YMGA
)
/*****************************************************************************
* I420_YMGA: planar YUV 4:2:0 to Matrox's planar/packed YUV 4:2:0
*****************************************************************************/
static
void
I420_YMGA
(
filter_t
*
p_filter
,
picture_t
*
p_source
,
picture_t
*
p_dest
)
{
VLC_UNUSED
(
p_filter
);
uint8_t
*
p_uv
=
p_dest
->
U_PIXELS
;
uint8_t
*
p_u
=
p_source
->
U_PIXELS
;
uint8_t
*
p_v
=
p_source
->
V_PIXELS
;
int
i_x
;
/* Copy the Y part */
vlc_memcpy
(
p_dest
->
Y_PIXELS
,
p_source
->
Y_PIXELS
,
p_dest
->
p
[
Y_PLANE
].
i_pitch
*
p_dest
->
p
[
Y_PLANE
].
i_visible_lines
);
/* Copy the U:V part */
for
(
i_x
=
p_dest
->
p
[
U_PLANE
].
i_pitch
*
p_dest
->
p
[
U_PLANE
].
i_visible_lines
/
64
;
i_x
--
;
)
{
#if defined (MODULE_NAME_IS_i420_ymga)
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
*
p_uv
++
=
*
p_u
++
;
*
p_uv
++
=
*
p_v
++
;
#else
__asm__
(
".p2align 5
\n
\
movd (%0), %%mm0 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0
\n
\
movd 4(%0), %%mm2 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0
\n
\
movd 8(%0), %%mm4 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0
\n
\
movd 12(%0), %%mm6 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0
\n
\
movd (%1), %%mm1 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0
\n
\
movd 4(%1), %%mm3 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0
\n
\
movd 8(%1), %%mm5 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0
\n
\
movd 12(%1), %%mm7 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0
\n
\
punpcklbw %%mm1, %%mm0 # u3 v3 u2 v2 u1 v1 u0 v0
\n
\
punpcklbw %%mm3, %%mm2 # u3 v3 u2 v2 u1 v1 u0 v0
\n
\
punpcklbw %%mm5, %%mm4 # u3 v3 u2 v2 u1 v1 u0 v0
\n
\
punpcklbw %%mm7, %%mm6 # u3 v3 u2 v2 u1 v1 u0 v0
\n
\
movq %%mm0, (%2) # Store CrCb
\n
\
movq %%mm2, 8(%2) # Store CrCb
\n
\
movq %%mm4, 16(%2) # Store CrCb
\n
\
movq %%mm6, 24(%2) # Store CrCb"
:
:
"r"
(
p_v
),
"r"
(
p_u
),
"r"
(
p_uv
)
);
p_v
+=
16
;
p_u
+=
16
;
p_uv
+=
32
;
#endif
}
}
po/POTFILES.in
View file @
ee7c062a
...
...
@@ -1072,7 +1072,6 @@ modules/video_chroma/i420_rgb16.c
modules/video_chroma/i420_rgb8.c
modules/video_chroma/i420_rgb_c.h
modules/video_chroma/i420_rgb_mmx.h
modules/video_chroma/i420_ymga.c
modules/video_chroma/i420_yuy2.c
modules/video_chroma/i420_yuy2.h
modules/video_chroma/i422_i420.c
...
...
src/misc/fourcc.c
View file @
ee7c062a
...
...
@@ -689,8 +689,6 @@ static const entry_t p_list_video[] = {
B
(
VLC_CODEC_Y211
,
"Packed YUV 2:1:1, Y:U:Y:V "
),
A
(
"Y211"
),
B
(
VLC_CODEC_YMGA
,
"Planar Y, packed UV, from Matrox"
),
A
(
"YMGA"
),
B
(
VLC_CODEC_CYUV
,
"Creative Packed YUV 4:2:2, U:Y:V:Y, reverted"
),
A
(
"cyuv"
),
A
(
"CYUV"
),
...
...
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