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.

Do I still need create HWDevice handler and FrameAllocator for Linux backend service application

zheng_s_
Beginner
269 Views

I have a linux based backend service application which want to use MediaSDK to do some encode/decode work. the video frame will send out through  TCP/IP so we dont need any video display on the server side. I follow the sample_decoder codes given by Intel MediaSDK and create some example but didnt create HWDevice handler and FrameAllocator. When I call pVideoDecode->DecodeHeader( xx,xx)  function I get the error code : MFX_ERR_INVALID_HANDLE . Do I really need create both in order to make encoder work. 

0 Kudos
1 Solution
Jeffrey_M_Intel1
Employee
269 Views

One of the main differences for porting Media SDK code between Linux and Windows is the display handle requirements.  For Windows, setting the handle is only necessary if you are explicitly handling your own GPU memory allocations.  It may not be necessary for software or opaque pipelines.  For Linux *ALL* applications must set a handle.  Since Media SDK for Linux has no software implementation, in many cases you won't want to consider system memory.  If you are transcoding and do not need access to the intermediate surfaces you can use the extra convenience of opaque surfaces -- meaning you don't need your own frame allocator to get optimized peformance.  However, in cases where you are integrating other components and do need access to the pipeline between decode and encode you will need a GPU frame allocator.

 

 

 

More info in this thread: http://software.intel.com/en-us/forums/topic/479998

 

View solution in original post

0 Kudos
2 Replies
Jeffrey_M_Intel1
Employee
270 Views

One of the main differences for porting Media SDK code between Linux and Windows is the display handle requirements.  For Windows, setting the handle is only necessary if you are explicitly handling your own GPU memory allocations.  It may not be necessary for software or opaque pipelines.  For Linux *ALL* applications must set a handle.  Since Media SDK for Linux has no software implementation, in many cases you won't want to consider system memory.  If you are transcoding and do not need access to the intermediate surfaces you can use the extra convenience of opaque surfaces -- meaning you don't need your own frame allocator to get optimized peformance.  However, in cases where you are integrating other components and do need access to the pipeline between decode and encode you will need a GPU frame allocator.

 

 

 

More info in this thread: http://software.intel.com/en-us/forums/topic/479998

 

0 Kudos
zheng_s_
Beginner
269 Views

Greate that exactly what i want.

0 Kudos
Reply