Hi,
How can I get the timespan - minutes, hours, days or weeks - the user has selected in the Smart Client playback and watching on the timeline. Is there some method or property in the MIP SDK to retrieve such information (like message to get current playback time).
Thanks,
Nikolay.
There is a message to give you this answer:
-–
const string VideoOS.Platform.Messaging.MessageId.SmartClient.GetTimelineSelectedIntervalRequest = “SmartClient.GetTimelineSelectedIntervalRequest”
This request can be send by a plug-in executing in the Smart Client to retrieve the current selected interval of the timeline.
The destination should be null for the main window timeline and otherwise the FQID of the playback controller for any other window.
The result is a Util.TimeInterval or Util.TimeInterval.Zero if no selection is available.
--
Ref. https://doc.developer.milestonesys.com/html/index.html?base=miphelp/class_video_o_s_1_1_platform_1_1_messaging_1_1_message_id_1_1_smart_client.html&tree=tree_search.html?search=messageid
You can see the message implemented and working the Message Tester plugin sample.
https://doc.developer.milestonesys.com/html/index.html?base=samples/pluginsamples/messagetester/readme.html&tree=tree_1.html
Thanks,
But this will not help as I am looking for timespan, not the selected interval - see attached.
Unfortunately, there is no property or message supporting getting this information in a MIP plugin.
I am a bit curious as how the information might be useful, I haven’t been able to think of a use case for this, so if you want to satisfy my curiosity please tell me why you would like this information.
In our plug-in we populate timeline in the playback tab - TimelineSequenceSource. Based on the timeline scale we may aggregate passed timeline info (TimelineDataArea). I mean in case user is watching 1 hour scale timeline data areas can be much more detailed (small) versus week(s) scale where ranges can grow to whole hour for example.
In this functionality the timeline actively ask for the information it needs.
You should return the data without considering how the timeline represents the data.
When the end-user zooms in the time-line it might not ask again so if you tried to granulate the data it might be inaccurate.
The timeline does itself have routines to aggregate the data and melt together periods with data.
With the functionality as implemented it should be best to simply answer what the timeline asks.
If you have examples where you think the behavior of the timeline is wrong or not appropriate you could try to show us what you experience as bad behavior.