- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Hi,
I am trying to encode DX11 render target with MFX Encoder and my doubt is, can I feed it directly with MFX_FOURCC_RGB4 or do I have to pass it through VPP to convert to NV12?
Becouse now get no error when setting it up this way and pushing frames in this format but i get 41 bytes constant frame sizes even when i move the image so i guess it is reading empty frames.
Thanks and best regards,
- Теги:
- Development Tools
- Graphics
- Intel® Media SDK
- Intel® Media Server Studio
- Media Processing
- Optimization
Ссылка скопирована
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Hi Ivan,
Yes, if you want to use our hardware encoder, you have to convert the raw video input to NV12. But if you use software encoder, you might use the other format but I have to check which format we support.
Also see the following document for reference:
https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/samples/readme-encode_linux.pdf
It requires input of YUV420 or NV12.
Mark
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
The answer above from Intel does not seem to be accurate. NV12 input is supported in all versions of the MSDK, however recent versions or platforms received capability for internal conversion, so that clients could feed MFX_FOURCC_RGB4 directly without VPP.
I don't see this change documented in revision history, I believe it's been changed since around version 1.15. And this post suggests it depends not on version but rather on platform.
It's not only MFX_FOURCC_RGB4 support was added, it's also MFX_FOURCC_YUY2 and in most recent versions it is further extended to offer MFX_FOURCC_BGR4 as well.
Unfortunately there is no clear way to discover the capabilities. Both NVIDIA and AMD in their similar APIs offer much more friendly ways to query the environment for availability of certain capabilities. With Intel MSDK I seem to need to set up the context and attempt to initialize it in order to identify whether specific mode of operation is supported or not.
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Thank you so much for the answers! I suspect this support has been added also as it does not say nothing about input parameters being wrong.

- Подписка на RSS-канал
- Отметить тему как новую
- Отметить тему как прочитанную
- Выполнить отслеживание данной Тема для текущего пользователя
- Закладка
- Подписаться
- Страница в формате печати