Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
Announcements
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

How do I process the images synthesis

Jim_Yu
Beginner
767 Views
Recently, I am working out to combine several h264 streams (after resized) into one stream, in order to view those several videos in the video wall at the same time. The operating system is window 7 and the CPU is Intel i3-2120(Integrated graphics HD2000). To get good performance, I try to call the Intel Media SDK API to do this. My solution is that, decode the several h264 streams then resize them use VPP (runnig in several session), after resize call RunFrameVPPAsync, the input surface store serval resize stream and the output surface is the same one but each session has different mfxFrameInfo(the value of CropX, CropY is different means the image's origination position). But it didn't work, the output surface only show one resized image on its position, the other field on the video wall is black. Seemingly, the other streams were overlied. So, I hope someone can provide me a good solution with the Intel Media SDK. Thanks
0 Kudos
4 Replies
jigong
Beginner
767 Views
VPP does not provide functions to composite several images together.
0 Kudos
Jim_Yu
Beginner
767 Views

Hi jiuxiang
Thank you for your reply.So do you have any device?
Thanks

0 Kudos
Petter_L_Intel
Employee
767 Views
Hi Jim,

Like Juixiang mentioned there is no direct operation available in Media SDK to perform frame merging. The way you are trying to use VPP i quite interesting but that usage has never been verified as far as I know. It is remotely possible that there may be a way to get this to work but keep in mind that this approach also requires locking the output surfaces from several decoding sessions which may introduce delays.

Instead you could explore the option of decoding and resizing the steams independently then copy the frame to the specified region of a larger frame surface, that can then be rendered. Or, via direct insertion of frame into render surface via VideoProcessBlt.

Regards,
Petter
0 Kudos
jigong
Beginner
767 Views
Hi Jim,
You can use Direct3D graphics pipeline to composite images together.
Jiuxiang
0 Kudos
Reply