Intel media SDK produces B&W frames when decoding stream from Logitech C920

Intel media SDK produces B&W frames when decoding stream from Logitech C920

I have a saved stream from a logitech C920 camera (which encodes to h264 on-board). The stream displays properly as color via other software (the other software is not Intel media SDK based). When I decode it using the Media SDK it gives me frames that are monochrome. Can you think of a possible explanation for this?

15 posts / 0 nouveau(x)
Dernière contribution
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.

Hi,Is there a way you can make sure that chroma components are copied properly out of MSDK decoder? MSDK produces YV12. it looks like only Y frames got copied.

Thanks for your reply. The U and V components all come back as zero.

I am having trouble contacting premium support regarding this - could someone from intel please reply on this thread?

Hi,

The Media SDK is free API and doesnt have a Premium Support service, just these forums. Sorry weve overlooked this post. We try to do our best to help everybody. That being said, can I ask that you share your stream (or a piece of it) so we can take a look?

Thanks

-Eric

Hi Eric,

Thanks for the reply.

I have attached the first part of a stream (just a single frame).

ffmpeg decodes this fine.

Intel Media SDK only gives monochrome (U and V are all zero).

Regards,
Paul

Fichiers joints: 

Fichier attachéTaille
Télécharger firstframe.h2648.69 Ko

By the way I have tried this with Media SDK 2012 (software) and with an older version (software and sandy bridge).

Hi Paul,

I took the *.264 file that you posted and decoded it using 2012 Gold to a YUV file. That file was then imported into Elecard YUV viewer, and I dont see any issue with the color planes.

Can you elaborate on how you are viewing the YUV file? You want to make sure you have the YUV player set to IYUV format. If you open it with YV12, the color planes are reversed and the picture looks black & white (actually more blue).

-Eric

Hi Eric,

I am viewing the YUV by using our own code that converts YUV to RGB and displays in a Windows bitmap. This code works fine for streams that were encoded with Media SDK.

Also, I have looked at the data and have seen that the UV plane contains 0's only. (The Y plane is fine).

Perhaps it's to do with the way we are calling the Media SDK methods? (Although the same code works fine with H.264 streams encoded with Media SDK).

I've attached a cut-down version of the code.

Regards,
Paul

Fichiers joints: 

Fichier attachéTaille
Télécharger code.txt0 octets

Hi Eric,

What did you use to decode the .h264 file to YUV? In other words, did you use packaged software that calls the Media SDK, or do you have a program with source code that calls the Media SDK?

If you have a program with source code, perhaps you can share with me some of the code so that I can see what might be different between it and my source code? This might be quicker for you than looking at my code.

Regards,
Paul

Hi Paul,

I used sample_decode from the Media SDK 2012 download package. You can render the file as well - use the "-r" funcation. Pretty fast with only 1 frame though :)

-Eric

Hi,I have the same issue (monochrome YUV420 at output).What was the solution?Thanks in advance

Hi,

You both seem to encounter an empty UV plane.

Please try the Media SDK provided sample_decode that Eric referred to using the "-r" option to render the decoded frames. If you still see B/W then my guess is that the actual stream may have been encoded as B/W.

Regards,Petter

Does the MediaSDK muxer accept FORMAT_VideoInfo on the C920 H.264 pin?

Hi,

Unfortunately the Media SDK binary muxer component does not work with that input. The muxer component (and the other binary only filters part of the SDK) has not been designed or validated for such usage. The intent of the binary only filters is to provide rapid ability to test the SDK, not to deliver full featured functionality.

If you need a muxer filter with extended functionality to support this use case, I suggest you look for commercial or open solutions from a 3rd party.

Regards,
Petter

Laisser un commentaire

Veuillez ouvrir une session pour ajouter un commentaire. Pas encore membre ? Rejoignez-nous dès aujourd’hui