Hi all,
I am currently trying change the Start and End time of a video playback using Mobile Server. Whenever I change the time interval, I keep receiving frames that are out of the interval. I use XPMobileSDK.changeMultipleStreams when interval changes to change the stream.
I already tried to use CloseStream and RequestStream again but CloseStream did not help on receiving outdated frames. I suppose the problem might be solved if there was a way to close the playbackController but I could not see any methods to do so in the examples.
Any idea how to solve this problem?
Hi Kunt,
I’m not sure I fully understand what you are doing, nor what you are trying to achieve. Could you elaborate a little bit more on both, please ?
I see you are using playback controller. Do you assign multiple streams to it ?
Command XPMobileSDK.changeMultipleStreams could make two things - change the speed of the playback and make a “seek” operation.
I’m not sure how you provide Start and End time to it.
Also please bear in mind that playback controller in the Mobile server is always configured to behave like “skip gaps”. So if you try to navigate to some place in time, where there are no recording for a particular camera, the video stream will return to you closest video frame.
In more complex scenario, when there are two cameras assigned to one and the same playback controller, and one of them has video for particular time, but another does not, you will receive the closest frame for the one that is in gap. And this frame could be far away from the current playback controller time.
What do you mean exactly by “outdated frames” ? I would assume those are frames not synced with the current time of the playback controller. One explanation for that could be if the camera is in gap for this particular time (interval).
You could create new playback controller if you need one.
As for it closure - it is basically a special type of videoConnection/videoController. So you can just call:
videoController.close();
Btw. if you do not destroy it manually, server will do it, 30 seconds after removing/closing all the video streams attached to it and not sending commands for it.