mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2026-04-19 00:50:23 +00:00
The issue is that every le/be pair ends up with a swapped op list:
rgb24 -> rgb48be:
[ u8 XXXX -> +++X] SWS_OP_READ : 3 elem(s) packed >> 0
[ u8 ...X -> +++X] SWS_OP_CONVERT : u8 -> u16 (expand)
- [u16 ...X -> zzzX] SWS_OP_SWAP_BYTES
- [u16 ...X -> zzzX] SWS_OP_WRITE : 3 elem(s) packed >> 0
+ [u16 ...X -> +++X] SWS_OP_WRITE : 3 elem(s) packed >> 0
(X = unused, z = byteswapped, + = exact, 0 = zero)
rgb24 -> rgb48le:
[ u8 XXXX -> +++X] SWS_OP_READ : 3 elem(s) packed >> 0
[ u8 ...X -> +++X] SWS_OP_CONVERT : u8 -> u16 (expand)
- [u16 ...X -> +++X] SWS_OP_WRITE : 3 elem(s) packed >> 0
+ [u16 ...X -> zzzX] SWS_OP_SWAP_BYTES
+ [u16 ...X -> zzzX] SWS_OP_WRITE : 3 elem(s) packed >> 0
(X = unused, z = byteswapped, + = exact, 0 = zero)
I'm not sure of a good work-around that's not needlessly difficult to
implement, so just disable it on BE platforms for now. The actual underlying
conversions should still be covered by the sws-unscaled test.
|
||
|---|---|---|
| .. | ||
| api | ||
| checkasm | ||
| fate | ||
| filtergraphs | ||
| maps | ||
| ref | ||
| streamgroups | ||
| .gitignore | ||
| audiogen.c | ||
| audiomatch.c | ||
| base64.c | ||
| copycooker.sh | ||
| extended.ffconcat | ||
| fate-run.sh | ||
| fate-valgrind.supp | ||
| fate.sh | ||
| Makefile | ||
| md5.sh | ||
| refcmp-metadata.awk | ||
| reference.pnm | ||
| rotozoom.c | ||
| simple1.ffconcat | ||
| simple2.ffconcat | ||
| test.ffmeta | ||
| tiny_psnr.c | ||
| tiny_ssim.c | ||
| utils.c | ||
| videogen.c | ||