OSDN Git Service

Optimized unscaled yuvp9/yuvp10 -> yuvp16 conversion.
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sat, 11 Aug 2012 12:15:09 +0000 (14:15 +0200)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 12 Aug 2012 21:23:19 +0000 (23:23 +0200)
commit118bd609f048f457cf42d358a07510b87626f316
tree752a186823b7483c0eb9ed6117367a40a30f3cbb
parentbb7073921c75b1b4f793fca5123f42ac0da0b9b6
Optimized unscaled yuvp9/yuvp10 -> yuvp16 conversion.

About 30% faster on 32 bit Atom, 120% faster on 64 bit Phenom2.
This is interesting because supporting P16 is easier in e.g.
OpenGL (can misuse support for any 2-component 8 bit format),
whereas supporting p9/p10 without conversion needs a texture
format with at least 14 bits actual precision.
The shiftonly == 0 case is not optimized since the code is more
complex and the speed gain less obvious.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
libswscale/swscale_unscaled.c