Skip to content

imgproc: restore multiplanar conversion functions in cv::hal namespace#26082

Merged
asmorkalov merged 1 commit intoopencv:4.xfrom
mshabunin:fix-hal-cvt-functions
Dec 19, 2024
Merged

imgproc: restore multiplanar conversion functions in cv::hal namespace#26082
asmorkalov merged 1 commit intoopencv:4.xfrom
mshabunin:fix-hal-cvt-functions

Conversation

@mshabunin
Copy link
Copy Markdown
Contributor

Two of removed in #25932 functions are still used in MediaSDK backend in videoio module.

hal::cvtTwoPlaneYUVtoBGR(data.Y, data.UV, data.Pitch, res.data, res.step, cols, rows, 3, false, 0);

hal::cvtBGRtoTwoPlaneYUV(src.data, src.step,
workSurface->Data.Y, workSurface->Data.UV, workSurface->Data.Pitch,
workSurface->Info.CropW, workSurface->Info.CropH,
3, false, 1);

@mshabunin mshabunin mentioned this pull request Aug 28, 2024
4 tasks
@mshabunin
Copy link
Copy Markdown
Contributor Author

ABI checker complains about removed symbols, but these functions has been removed in previous PR (#25932 - marked as static), only declarations in header were left. Current PR changes exported function signatures.

@mshabunin
Copy link
Copy Markdown
Contributor Author

For reference: there are following functions in the x86_64 binary now - 3 local (l) and 3 global (g):

0000000000641bcd l     F .text	0000000000000280              cv::hal::opt_SSE4_1::cvtTwoPlaneYUVtoBGR(unsigned char const*, unsigned long, unsigned char const*, unsigned long, unsigned char*, unsigned long, int, int, int, bool, int)
0000000000181fcb l     F .text	0000000000000280              cv::hal::cpu_baseline::cvtTwoPlaneYUVtoBGR(unsigned char const*, unsigned long, unsigned char const*, unsigned long, unsigned char*, unsigned long, int, int, int, bool, int)
00000000007eb862 l     F .text	0000000000000296              cv::hal::opt_AVX2::cvtTwoPlaneYUVtoBGR(unsigned char const*, unsigned long, unsigned char const*, unsigned long, unsigned char*, unsigned long, int, int, int, bool, int)
000000000018354c g     F .text	0000000000000322              cv::hal::cvtTwoPlaneYUVtoBGR(unsigned char const*, unsigned long, unsigned char const*, unsigned long, unsigned char*, unsigned long, int, int, int, bool, int, cv::AlgorithmHint)
000000000018386e g     F .text	0000000000000289              cv::hal::cvtTwoPlaneYUVtoBGR(unsigned char const*, unsigned long, unsigned char*, unsigned long, int, int, int, bool, int, cv::AlgorithmHint)
0000000000183af7 g     F .text	00000000000000da              cv::hal::cvtTwoPlaneYUVtoBGR(unsigned char const*, unsigned char const*, unsigned long, unsigned char*, unsigned long, int, int, int, bool, int, cv::AlgorithmHint)

@mshabunin mshabunin force-pushed the fix-hal-cvt-functions branch from bc5689d to d6fe289 Compare October 25, 2024 17:21
@asmorkalov asmorkalov merged commit cdad0b7 into opencv:4.x Dec 19, 2024
@asmorkalov asmorkalov added this to the 4.11.0 milestone Dec 19, 2024
@mshabunin mshabunin deleted the fix-hal-cvt-functions branch December 19, 2024 11:59
@opencv-alalek
Copy link
Copy Markdown
Contributor

opencv-alalek commented Dec 24, 2024

This PR is merged against RED and outdated CI results.

@asmorkalov asmorkalov mentioned this pull request Jan 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants