Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Side by Side Diff: media/base/simd/convert_yuv_to_rgb.h

Issue 7891039: Resubmit - Rewrite color space conversions suite using YASM" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « media/base/simd/convert_rgb_to_yuv_x86.cc ('k') | media/base/simd/convert_yuv_to_rgb_c.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef MEDIA_BASE_SIMD_CONVERT_YUV_TO_RGB_H_
6 #define MEDIA_BASE_SIMD_CONVERT_YUV_TO_RGB_H_
7
8 #include "base/basictypes.h"
9 #include "media/base/yuv_convert.h"
10
11 namespace media {
12
13 typedef void (*ConvertYUVToRGB32Proc)(const uint8*,
14 const uint8*,
15 const uint8*,
16 uint8*,
17 int,
18 int,
19 int,
20 int,
21 int,
22 YUVType);
23
24 void ConvertYUVToRGB32_C(const uint8* yplane,
25 const uint8* uplane,
26 const uint8* vplane,
27 uint8* rgbframe,
28 int width,
29 int height,
30 int ystride,
31 int uvstride,
32 int rgbstride,
33 YUVType yuv_type);
34
35 void ConvertYUVToRGB32_SSE(const uint8* yplane,
36 const uint8* uplane,
37 const uint8* vplane,
38 uint8* rgbframe,
39 int width,
40 int height,
41 int ystride,
42 int uvstride,
43 int rgbstride,
44 YUVType yuv_type);
45
46 void ConvertYUVToRGB32_MMX(const uint8* yplane,
47 const uint8* uplane,
48 const uint8* vplane,
49 uint8* rgbframe,
50 int width,
51 int height,
52 int ystride,
53 int uvstride,
54 int rgbstride,
55 YUVType yuv_type);
56
57 } // namespace media
58
59 // Assembly functions are declared without namespace.
60 extern "C" {
61
62 typedef void (*ConvertYUVToRGB32RowProc)(const uint8*,
63 const uint8*,
64 const uint8*,
65 uint8*,
66 int);
67 typedef void (*ScaleYUVToRGB32RowProc)(const uint8*,
68 const uint8*,
69 const uint8*,
70 uint8*,
71 int,
72 int);
73
74 void ConvertYUVToRGB32Row_C(const uint8* yplane,
75 const uint8* uplane,
76 const uint8* vplane,
77 uint8* rgbframe,
78 int width);
79
80 void ConvertYUVToRGB32Row_MMX(const uint8* yplane,
81 const uint8* uplane,
82 const uint8* vplane,
83 uint8* rgbframe,
84 int width);
85
86 void ConvertYUVToRGB32Row_SSE(const uint8* yplane,
87 const uint8* uplane,
88 const uint8* vplane,
89 uint8* rgbframe,
90 int width);
91
92 void ScaleYUVToRGB32Row_C(const uint8* y_buf,
93 const uint8* u_buf,
94 const uint8* v_buf,
95 uint8* rgb_buf,
96 int width,
97 int source_dx);
98
99 void ScaleYUVToRGB32Row_MMX(const uint8* y_buf,
100 const uint8* u_buf,
101 const uint8* v_buf,
102 uint8* rgb_buf,
103 int width,
104 int source_dx);
105
106 void ScaleYUVToRGB32Row_SSE(const uint8* y_buf,
107 const uint8* u_buf,
108 const uint8* v_buf,
109 uint8* rgb_buf,
110 int width,
111 int source_dx);
112
113 void ScaleYUVToRGB32Row_SSE2_X64(const uint8* y_buf,
114 const uint8* u_buf,
115 const uint8* v_buf,
116 uint8* rgb_buf,
117 int width,
118 int source_dx);
119
120 void LinearScaleYUVToRGB32Row_C(const uint8* y_buf,
121 const uint8* u_buf,
122 const uint8* v_buf,
123 uint8* rgb_buf,
124 int width,
125 int source_dx);
126
127 void LinearScaleYUVToRGB32Row_MMX(const uint8* y_buf,
128 const uint8* u_buf,
129 const uint8* v_buf,
130 uint8* rgb_buf,
131 int width,
132 int source_dx);
133
134 void LinearScaleYUVToRGB32Row_SSE(const uint8* y_buf,
135 const uint8* u_buf,
136 const uint8* v_buf,
137 uint8* rgb_buf,
138 int width,
139 int source_dx);
140
141 void LinearScaleYUVToRGB32Row_MMX_X64(const uint8* y_buf,
142 const uint8* u_buf,
143 const uint8* v_buf,
144 uint8* rgb_buf,
145 int width,
146 int source_dx);
147
148 }
149
150 #endif // MEDIA_BASE_SIMD_CONVERT_YUV_TO_RGB_H_
OLDNEW
« no previous file with comments | « media/base/simd/convert_rgb_to_yuv_x86.cc ('k') | media/base/simd/convert_yuv_to_rgb_c.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698