|
1. I create a few playbin2 objects, attach xoverlays to display the image in one window, assign a different video file to Uri property of each playbin, all playbins go to Paused state.
2. Then I need to find the durations of several files: I create a completely separate uridecodebin (or playbin2) with fakesinks and query duration. Generally it looks like this:
2a. assign a file name to Uri property
2b. set Paused state
2c. query duration
2d. set Null state
3. Then the user decides to press the play button, the playbins play just one second of video and stop. Sometimes only a few files are stopped, others are playing normally.
Why on Earth creating a separate uridecodebin influences other playbins???
What I notice is that it is setting the separate uridecodebin state to Null causes problems, but I cannot change Uris without changing the state to Null or Ready (I tried both). When I don't change the state everything works, but I'm always getting the duration of the first file, as expected.
What am I doing wrong?
|