Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
9f54e461
Commit
9f54e461
authored
May 13, 2011
by
Ronald S. Bultje
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
swscale: properly inline bits/endianness in yuv2yuvX16inC().
parent
c3d68ec9
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
4 deletions
+25
-4
swscale.c
libswscale/swscale.c
+25
-4
No files found.
libswscale/swscale.c
View file @
9f54e461
...
...
@@ -271,6 +271,27 @@ static av_always_inline void yuv2yuvX16inC_template(const int16_t *lumFilter, co
}
}
#define yuv2NBPS(bits, BE_LE, is_be) \
static void yuv2yuvX ## bits ## BE_LE ## _c(const int16_t *lumFilter, \
const int16_t **lumSrc, int lumFilterSize, \
const int16_t *chrFilter, const int16_t **chrSrc, \
int chrFilterSize, const int16_t **alpSrc, \
uint16_t *dest, uint16_t *uDest, uint16_t *vDest, \
uint16_t *aDest, int dstW, int chrDstW) \
{ \
yuv2yuvX16inC_template(lumFilter, lumSrc, lumFilterSize, \
chrFilter, chrSrc, chrFilterSize, \
alpSrc, \
dest, uDest, vDest, aDest, \
dstW, chrDstW, is_be, bits); \
}
yuv2NBPS
(
9
,
BE
,
1
);
yuv2NBPS
(
9
,
LE
,
0
);
yuv2NBPS
(
10
,
BE
,
1
);
yuv2NBPS
(
10
,
LE
,
0
);
yuv2NBPS
(
16
,
BE
,
1
);
yuv2NBPS
(
16
,
LE
,
0
);
static
inline
void
yuv2yuvX16inC
(
const
int16_t
*
lumFilter
,
const
int16_t
**
lumSrc
,
int
lumFilterSize
,
const
int16_t
*
chrFilter
,
const
int16_t
**
chrSrc
,
int
chrFilterSize
,
const
int16_t
**
alpSrc
,
uint16_t
*
dest
,
uint16_t
*
uDest
,
uint16_t
*
vDest
,
uint16_t
*
aDest
,
int
dstW
,
int
chrDstW
,
...
...
@@ -278,17 +299,17 @@ static inline void yuv2yuvX16inC(const int16_t *lumFilter, const int16_t **lumSr
{
#define conv16(bits) \
if (isBE(dstFormat)) { \
yuv2yuvX
16inC_template
(lumFilter, lumSrc, lumFilterSize, \
yuv2yuvX
## bits ## BE_c
(lumFilter, lumSrc, lumFilterSize, \
chrFilter, chrSrc, chrFilterSize, \
alpSrc, \
dest, uDest, vDest, aDest, \
dstW, chrDstW
, 1, bits
); \
dstW, chrDstW); \
} else { \
yuv2yuvX
16inC_template
(lumFilter, lumSrc, lumFilterSize, \
yuv2yuvX
## bits ## LE_c
(lumFilter, lumSrc, lumFilterSize, \
chrFilter, chrSrc, chrFilterSize, \
alpSrc, \
dest, uDest, vDest, aDest, \
dstW, chrDstW
, 0, bits
); \
dstW, chrDstW); \
}
if
(
is16BPS
(
dstFormat
))
{
conv16
(
16
);
...
...
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