Open GoogleCodeExporter opened 8 years ago
Just wanted to let you know that spec discussion went through and I can use a
ARGBtoA() fucntion here:
https://code.google.com/p/chromium/codesearch#chromium/src/content/renderer/medi
a/canvas_capture_handler.cc&l=212
Let me know if it makes sense to add it, or any way I can help with.
Original comment by emir...@google.com
on 11 Mar 2016 at 2:34
Original comment by mag...@google.com
on 14 Mar 2016 at 12:51
It would seem that we could use the same or almost the same code for extracting
any of the channels, R, G, B, or A. It only takes adding an offset 0..3 to the
source pointer.
Or do we want separate loops for efficiency reasons? I.e., buffers are assumed
to normally 128-bit aligned and we want to give the hardware the chance to
optimize our aligned loads (essentially execute movdqu as if they were movdqa).
Original comment by torbjo...@google.com
on 14 Mar 2016 at 2:04
Theres 2 ways you could write this for Neon or SSE2:
1. hard coded, likely with a shift. Likely most efficient, and can extract any
1 byte from 4 bytes by adjusting the pointer.
2. shuffle - read 16 bytes, shuffle and write 4 bytes. More general, but
likely slower.
If we really need ARGBToA and BGRAToA, I would suggest shuffle.
But if its just ARGBToA, a shift is simplier/faster.
Original comment by fbarch...@google.com
on 14 Mar 2016 at 6:01
Original issue reported on code.google.com by
fbarch...@google.com
on 25 Feb 2016 at 12:04