Wim Taymans
362785df88
videomixer: optimize blend code some more
...
Use more efficient formula that uses less multiplies.
Reduce the amount of scalar code, use MMX to calculate the desired
alpha value.
Unroll and handle 2 pixels in one iteration for improved pairing.
2009-12-25 12:38:45 +01:00
Wim Taymans
4f9ded7742
videomixer: scale and clamp
...
Scale and clamp to the max alpha values.
2009-12-24 22:59:09 +01:00
Sebastian Dröge
3ac6f5e48b
videomixer: Fix assembly compilation on x86
...
Fixes bug #604814 .
2009-12-17 18:14:55 +01:00
Sebastian Dröge
0a0f7ecc16
videomixer: Use movzbl instead of movzxb for moving one byte to a l register
...
For some reason latest gcc/binutils accept movzxb here while
movzbl would be correct and is the only thing accepted by older
gcc/binutils.
Fixes bug #604679 .
2009-12-16 10:50:32 +01:00
Sebastian Dröge
9e45038d8d
videomixer: src/dest are input and output of the AYUV blending MMX assembler
2009-12-16 06:59:01 +01:00
Sebastian Dröge
061ededa36
videomixer: Add MMX implementations of the AYUV blending and color filling functions
...
This provides a 20% speedup for blending and 100% for color filling.
The blending can probably be optimized even more.
2009-12-15 12:30:21 +01:00
Sebastian Dröge
6f51dfba95
videomixer: Remove wrong comments, copied from the I420 blend function
2009-12-10 10:48:49 +01:00
Sebastian Dröge
4ccd9c92ae
videomixer: Remove the calculate_frame_size() function and use libgstvideo instead
2009-07-10 17:23:03 +02:00
Sebastian Dröge
356972740a
videomixer: Make checker pattern lookup table constant
2009-07-08 18:19:45 +02:00
Sebastian Dröge
83fc39ccff
videomixer: Some cleanup and fix the calculation of the frame size in bytes
2009-05-28 13:54:14 +02:00
Alex Ugarte
82abbeaf4f
videomixer: Add support for blending BGRA and AYUV
...
Fixes bug #577017 .
2009-05-28 12:55:16 +02:00