Closed sblantipodi closed 3 years ago
This is almost certainly a bug in your code, in something not shared here. You must keep a strong reference to the pipeline, and anything that references that pipeline, or the garbage collector will attempt to clean up the pipeline you're using while it's running.
@neilcsmith-net my Pipeline is declared as static,
as much as I know static variables are not garbage collected.
are there something else that can throw that error? thanks
problem happens when GStreamer "is suffering", for example when a videogame or something heavy is running on the GPU alongside with the dxgiscreencapsrc. during the screen capture I can monitor the framerate and the framerate never goes down 9FPS.
if I close the game and the GPU is not loaded with other workloads, the screen capture framerate returns to 30FPS and the problem never happen.
@sblantipodi unless you share that code, can't help you further, sorry. Either the GC is disposing the pipeline or something in your code is, before it's been stopped properly (also make sure to call stop()
before disposing).
@neilcsmith-net you're always right, thanks for the help, I've seen that one of my executors where trying to play the same pipeline that is running. problem solved, thanks for helping me finding the solution.
@sblantipodi :smile: no problem, this is a common error people encounter.
Hi, thanks for the wonderful work here guys.
Sometimes when capturing the screen I get this error:
Trying to dispose element pipeline1, but it is in PLAYING instead of the NULL state.
Is this a problem of the java bindings?
This is an example of my grabber, it's based on the library examples.