- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
In the Media encoding pipeline we do Mode decision(ENC) and Bitstream packing (PAK) to encode a frame.
I see in one of the examples fei_encpak,cpp files we use the "ProcessFrameAsync" API to invoke ENC or PAK by passing different parameters like the following.
m_pmfxENC->ProcessFrameAsync(&eTask->in, &eTask->out, &m_SyncPoint);
m_pmfxPAK->ProcessFrameAsync(&eTask->inPAK, &eTask->outPAK, &m_SyncPoint);
but in the mediasdkembedded-man document there is no mention of PAK processing using this API.
my question is ,can i use the "ProcessFrameAsync" API to invoke PAK as well ,as mentioned in the example code?
Thank you
Rajesh
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Rajesh,
Example of sample code you posted is using MediaSDK Flexible Encode Infrastructure(FEI) API. FEI is supported only in MSS Linux releases (not supported in Embedded MediaSDK version).
Regards,
Dmitry
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Dmitry,
Thanks for the quick reply.I am working with MSS Linux. my question is, can I encode a frame using ENC + PAK as two separate "ProcessFrameAsync" calls without FEI interface.currently I am using the API "MFXVideoENCODE_EncodeFrameAsync" to encode a frame.
Instead of using "MFXVideoENCODE_EncodeFrameAsync "API, I want make a "ProcessFrameAsync" call for ENC operations followed by another "ProcessFrameAsync" call for PAK operations. Please confirm me whether this is possible without FEI interface.
Thanks
Rajesh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Rajesh,
>> I want make a "ProcessFrameAsync" call for ENC operations followed by another "ProcessFrameAsync" call for PAK operations
This is exactly what AVC FEI supports and why it was introduced. "Legacy" MSDK encoders doesn't support such separate ENC and PAK calls. Can I ask you why you wouldn't like to try FEI?
Regards,
Dmitry
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks Dmitry for the clarification. we have started with "MFXVideoENCODE_EncodeFrameAsync". but we will definitely have to move to FEI interface.
one more quick question . we are working with Skylake GPU and Intel supports VDENC based low power encoding. we want to enable this mode for Encoding through MSDK. what parameters i have to set to enable this mode?
thanks
Rajesh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Rajesh,
You're welcome.
Regarding the low power encoder, to my regret I will disappoint you. AVC LowPower encoder isn't supported in Linux MSS. The reason is Linux MSS is mainly targeted for high density server workloads. And the low power encoder has some limitations (like absence of B frame, no interlaced encode) which don't fit such workloads. However it's supported in Windows version via mfxInfoMFX::LowPower set to MFX_CODINGOPTION_ON.
Regards,
Dmitry
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you Dmitry for the confirmation. Have a good day!
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page