{"action":"created","issue":{"url":"https://api.github.com/repos/ZoneMinder/ZoneMinder/issues/960","labels_url":"https://api.github.com/repos/ZoneMinder/ZoneMinder/issues/960/labels{/name}","comments_url":"https://api.github.com/repos/ZoneMinder/ZoneMinder/issues/960/comments","events_url":"https://api.github.com/repos/ZoneMinder/ZoneMinder/issues/960/events","html_url":"https://github.com/ZoneMinder/ZoneMinder/issues/960","id":96595609,"number":960,"title":"Add Montage-like history review screen","user":{"login":"Linwood-F","id":13143855,"avatar_url":"https://avatars.githubusercontent.com/u/13143855?v=3","gravatar_id":"","url":"https://api.github.com/users/Linwood-F","html_url":"https://github.com/Linwood-F","followers_url":"https://api.github.com/users/Linwood-F/followers","following_url":"https://api.github.com/users/Linwood-F/following{/other_user}","gists_url":"https://api.github.com/users/Linwood-F/gists{/gist_id}","starred_url":"https://api.github.com/users/Linwood-F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Linwood-F/subscriptions","organizations_url":"https://api.github.com/users/Linwood-F/orgs","repos_url":"https://api.github.com/users/Linwood-F/repos","events_url":"https://api.github.com/users/Linwood-F/events{/privacy}","received_events_url":"https://api.github.com/users/Linwood-F/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-07-22T15:32:10Z","updated_at":"2015-07-23T14:30:55Z","closed_at":null,"body":"This is a proposal to add a new feature which is a combination of the timeline and the montage screens.  It would display historical data for all (viewable) monitors at one time, while building a timeline showing the availability of images and alarms similar tot he timeline graph, but using a heatmap format instead of bar graph (i.e. darker colors indicate alarms). \r\n\r\nThere are several goals of this: \r\n\r\n- To animate all monitors as you scrub through the timeline\r\n\r\n- To have a \"play\" mode that also plays at various speeds all monitors at once, running when you are not scrubbing through.\r\n\r\n- To be \"responsive\", in the sense that browser size and resizing does reasonable things rather than running off the screen.\r\n\r\n- To use more modern HTML constructs that are more likely to work across browsers (as opposed to the very densely backed divs in the timeline that are not handled well in some browsers).\r\n\r\nSome non-goals I propose: \r\n\r\n- Not to support legacy browsers; html5 support is required.\r\n\r\n- Not to support low bandwidth or weak processor clients (this moves and displays a lot of data, and there is really no way around that with the present architecture that I see).\r\n\r\n- No Full fps video -- the displays are aimed at 1 second real time intervals as a reasonable compromise of animation vs. performance.\r\n\r\nI am also trying to make it support touch, but that is not a priority as I do not see this as getting much mobile interest due to bandwidth and CPU horsepower requirements.\r\n\r\nI have a sample code done, but not linked in, that I will put up as soon as I can figure out how to do so.\r\n\r\nUsage notes: \r\n\r\n- It is NOT linked to the event display like the timeline, rather it has selection for time frames as buttons, and as zoom and pan.  Zoom is centered on the slider.\r\n\r\n- It DOES link out to the existing event replay option based on the time of the current display - click on the monitor (not the timeline) to link to it.\r\n\r\n- To reposition the timeline scrub slider, click on the timeline.  To slide it click and hold.  (I was frustrated with the existing timeline that any mouse-over affected it even if you did not want to). \r\n\r\n- Until it is integrated on the console, you can invoke it with a standard view call.  Drop it into the same location as timeline.php, and run with a URI of /index,php?view=montagereview\r\n\r\nQuestion: Do you think this should go as an additional option where the \"montage\" option is now, e.g. \"cycle / montage / history montage\"?\r\n\r\n\r\n<bountysource-plugin>\r\n---\r\nWant to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/24777310-add-montage-like-history-review-screen?utm_campaign=plugin&utm_content=tracker%2F188329&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F188329&utm_medium=issues&utm_source=github).\r\n</bountysource-plugin>"},"comment":{"url":"https://api.github.com/repos/ZoneMinder/ZoneMinder/issues/comments/124124644","html_url":"https://github.com/ZoneMinder/ZoneMinder/issues/960#issuecomment-124124644","issue_url":"https://api.github.com/repos/ZoneMinder/ZoneMinder/issues/960","id":124124644,"user":{"login":"Linwood-F","id":13143855,"avatar_url":"https://avatars.githubusercontent.com/u/13143855?v=3","gravatar_id":"","url":"https://api.github.com/users/Linwood-F","html_url":"https://github.com/Linwood-F","followers_url":"https://api.github.com/users/Linwood-F/followers","following_url":"https://api.github.com/users/Linwood-F/following{/other_user}","gists_url":"https://api.github.com/users/Linwood-F/gists{/gist_id}","starred_url":"https://api.github.com/users/Linwood-F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Linwood-F/subscriptions","organizations_url":"https://api.github.com/users/Linwood-F/orgs","repos_url":"https://api.github.com/users/Linwood-F/repos","events_url":"https://api.github.com/users/Linwood-F/events{/privacy}","received_events_url":"https://api.github.com/users/Linwood-F/received_events","type":"User","site_admin":false},"created_at":"2015-07-23T14:30:55Z","updated_at":"2015-07-23T14:30:55Z","body":"Let me incorporate the latest feedback from a discussion on irc and I'll do the PR.\r\n\r\nThe biggest unknown to me is the proper place to put it.  I am not positioning it to replace the existing timeline as frankly I could not unravel all the different ways (parameters) that it could be called with.  I think some of the code there is dead and unreachable but I could not be sure.  And frankly for me personally the link to specific event display pages is more restrictive than helpful, I just wanted \"show me time and let me browse\".   So in the current commit I put it on the console, but a couple people commented that was the wrong place and/or name (without a very clear idea where the right place was).   So was hoping more feedback there.\r\n\r\nPlus a few bugs to fix.  Sooner rather than later though, will."}}