Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6704 Discussions

DS Filter Graph plus UMC H264Enc plus UMC MP4 Muxer - Top-down and Bottom-up images

Sergey_Tarasenko
Beginner
368 Views
Hello,

I'm using a mixure of DirectShow Filters and UMC H264Enc+MP4Muxer to get MP4/H264 file. Is it possible to initialize H264Enc and/or MP4Muxer in a way so that they could know that incoming images (from DS Filter) are bottom-up images (and not top-down)? Currently produced MP4 file are played upside down... Or should I do line by line copying to turn my bottom-up images into top-down ones before passing them into H264Enc/MP4Muxer?
0 Kudos
3 Replies
Chao_Y_Intel
Moderator
368 Views


Hi,

Can you check the ippiMirror_ function, which can flip over the image?
http://software.intel.com/sites/products/documentation/hpc/composerxe/en-us/ippxe/ipp_manual_lnx/IPPI/ippi_ch12/functn_Mirror.htm

Thanks,
Chao

0 Kudos
acc3141
Beginner
368 Views

Have written a DX decoder using IPP H264 decoder library functions. When I select any YUV format in VideoData.Init() everything is fine but when i select any RGB format the image ends up inverted (in part because - as near as I can tell - YUV formats are inherently top down and RGB formats are inherently bottom up). I tried passing negative height to init but that does not work. Is there a 'right' way to handle this ? Or is this perhaps a bug in the IPP library?Yes, I was ableto manually invert the image myself via that mirror function but thats pretty inefficient - it seems to me there should be a way to tell the decoder library to do this when it writes the decoded data the first time.

0 Kudos
Chao_Y_Intel
Moderator
368 Views

Hello,

The UMC code does not invert the image. If you want o get the inverted image, you may take a look at the color conversion file: umc_color_space_conversion.cpp.
IPP color conversion function can take the negative steps. You can change code on YUV to RGB conversion, and use negative steps( e.g ippiYCbCr420ToBGR_8u_P3C3R function).

Thanks,
Chao

0 Kudos
Reply