diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-01-13 04:07:30 +0400 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-01-13 04:29:48 +0400 |
commit | b18e17eabf3ba51da2d0fd0f85c4815945bfd70a (patch) | |
tree | e949920e01cba93fbedca647076f72b31eec59cb /libswscale/rgb2rgb.c | |
parent | a2c419848df3e76e164bd19c3841f39d2971d326 (diff) | |
parent | 4df30f71147b7bedd4457bcfa0e4efe01085af9f (diff) |
Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
utils: Check for extradata size overflows.
ARM: rv34: fix asm syntax in dc transform functions
avio: Fix the value of the deprecated URL_FLAG_NONBLOCK
rv34: fix and optimise frame dependency checking
rv34: NEON optimised dc only inverse transform
avprobe: use avio_size() instead of deprecated AVFormatContext.file_size.
ffmenc: remove references to deprecated AVFormatContext.timestamp.
lavf: undeprecate read_seek().
avserver: remove code using deprecated CODEC_CAP_PARSE_ONLY.
lavc: replace some remaining FF_I_TYPE with AV_PICTURE_TYPE_I
lavc: ifdef out parse_only AVOption
nellymoserdec: SAMPLE_FMT -> AV_SAMPLE_FMT
mpegvideo_enc: ifdef out/replace references to deprecated codec flags.
riff: remove references to sonic codec ids
indeo4: add some missing static and const qualifiers
rv34: DC-only inverse transform
avconv: use AVFrame.width/height/format instead of corresponding AVCodecContext fields
lavfi: move version macros to a new installed header version.h
vsrc_buffer: release the buffer on uninit.
rgb2rgb: rgb12tobgr12()
...
Conflicts:
avconv.c
doc/APIchanges
ffprobe.c
libavfilter/Makefile
libavfilter/avfilter.h
libswscale/rgb2rgb.c
libswscale/rgb2rgb.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libswscale/rgb2rgb.c')
-rw-r--r-- | libswscale/rgb2rgb.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libswscale/rgb2rgb.c b/libswscale/rgb2rgb.c index eb7ca7ba1a..31ebc20a68 100644 --- a/libswscale/rgb2rgb.c +++ b/libswscale/rgb2rgb.c @@ -284,14 +284,14 @@ void rgb15tobgr15(const uint8_t *src, uint8_t *dst, int src_size) void rgb12tobgr12(const uint8_t *src, uint8_t *dst, int src_size) { + uint16_t *d = (uint16_t*)dst; + uint16_t *s = (uint16_t*)src; int i; int num_pixels = src_size >> 1; for (i = 0; i < num_pixels; i++) { - unsigned br; - unsigned rgb = ((const uint16_t *)src)[i]; - br = rgb & 0x0F0F; - ((uint16_t *)dst)[i] = (br >> 8) | (rgb & 0x00F0) | (br << 8); + unsigned rgb = s[i]; + d[i] = (rgb << 8 | rgb & 0xF0 | rgb >> 8) & 0xFFF; } } |