What I am interested in is to be able to run multiple instances that wrap different video and audio essence files at the same time to take advantage of multiple processors if a system offers that, which is what you meant "split" way. I did see some static attributes declared, but haven't looked closely whether they are read-only. Another layer of interface may benefit this as well. For example, a builder object that contains input file, output file, essense type, operational pattern, and other optional control fields, with a method that does what is in mpegwrapp.cpp mostly.
Frank
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
There are a number of statics that are used to hold basic items that don't change such as ULs, however a couple of functions modify the static items to "specialise" them.
I will add this issue as a bug.
The library should be able to work in the way you are planning with no problems, but this could cause problems.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
Are mxflib and klvlib multi-thread safe? I am trying to wrap them with JNI and run them in separate threads.
Thanks,
Frank
It depends what you mean by thread-safe...
If you have two threads, one of which calls mxflib and another that doesn't then there should be no problem.
If you try to pass objects created with mxflib from one thread to another you are likely to have problems.
However accessing mxflib in a "split" way may be possible with care. If you want to outline your problem in more detail please feel free to e-mail me.
What I am interested in is to be able to run multiple instances that wrap different video and audio essence files at the same time to take advantage of multiple processors if a system offers that, which is what you meant "split" way. I did see some static attributes declared, but haven't looked closely whether they are read-only. Another layer of interface may benefit this as well. For example, a builder object that contains input file, output file, essense type, operational pattern, and other optional control fields, with a method that does what is in mpegwrapp.cpp mostly.
Frank
Oops - good point.
There are a number of statics that are used to hold basic items that don't change such as ULs, however a couple of functions modify the static items to "specialise" them.
I will add this issue as a bug.
The library should be able to work in the way you are planning with no problems, but this could cause problems.