Community
cancel
Showing results for 
Search instead for 
Did you mean: 
sam_p_
Beginner
29 Views

Multiple encode processes with Media SDK on Linux

I modified example 3 of "mediasdk-tutorials-0.0.3" (simple encode, from the media sdk for clients) to encode frames delivered over ethernet instead of from a file. When I try to run two of them in paralel (i.e. on two different ports), the first one runs perfectly, but the second one prints:

libva info: VA-API version 0.34.0
libva info: va_getDriverName() returns 1
terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc
ERROR: Error 1 (Operation not permitted) on pthread_setschedparam
ERROR: Error 1 (Operation not permitted) on pthread_setschedparam
Abored (core dumped)

I am running Ubuntu 12.04, on a  Intel(R) Core(TM) i7-4790S CPU @ 3.20GHz. How do I create multiple encode pipelines?

 

 

0 Kudos
7 Replies
29 Views

Hello there - Thanks for the question. Can you give us some more details - follow this article on what information is useful for us: https://software.intel.com/en-us/forums/topic/531083

Here are some suggestions meantime:

- The sample_multi_transcode sample shows how to transcode multiple streams in parallel. You can use that as baseline to encode multiple streams in parallel.

- In your example above, what does the command line look like? Are you firing two separate simple_encode processes from the command line?

sam_p_
Beginner
29 Views

Processor Type: Intel(R) Core(TM) i7-4790S CPU @ 3.20GHz
Driver Version: how do i find this?
Operating System:Ubuntu 12.04
Media SDK System Analyzer: this dosn't appear to come with media sdk for servers, where do i find it?
Quick Reproducer Code: N/A
Concise Description of the Issue: Above
Priority: Medium-High
Input File: A test pattern.
Tracer log(if required): what is this?

To run two processes I have two shells open, each one runs a *copy* of the exe with a different port specified.

sam_p_
Beginner
29 Views

Any ideas as to what would cause this not to work? Can only one process have a handle on the quick sync hardware at a time? I am fairly certain two copies of "simple_encode" are able to run at the same time on my setup.

29 Views

Hello there - It has been a supremely swamped week here. I am getting back to this issue and I will surely have something for you soon. Thanks.

sam_p_
Beginner
29 Views

Thank you very much for replying. Yesterday I was able to make a breakthrough and although I still do not have it working as to separate processes, I was able to get it working with separate threads using MFXCloneSession. This is sufficient for my needs so although I am still curious as to why two processes don't work, it is academic at this point and I suspect you have better things to do.

29 Views

Glad you resolved the issue. I will get back to your question, soon - happy you are not blocked on it!

Jeffrey_M_Intel1
Employee
29 Views

This is a known limitation.  A workaround is described here.  We're actively investigating long term solutions for future releases, including libdrm render nodes.