{"action":"closed","issue":{"url":"https://api.github.com/repos/google/shaka-player/issues/234","labels_url":"https://api.github.com/repos/google/shaka-player/issues/234/labels{/name}","comments_url":"https://api.github.com/repos/google/shaka-player/issues/234/comments","events_url":"https://api.github.com/repos/google/shaka-player/issues/234/events","html_url":"https://github.com/google/shaka-player/issues/234","id":118505618,"number":234,"title":"frame accurate seeking in paused DASH playback","user":{"login":"mephillips423","id":15990469,"avatar_url":"https://avatars.githubusercontent.com/u/15990469?v=3","gravatar_id":"","url":"https://api.github.com/users/mephillips423","html_url":"https://github.com/mephillips423","followers_url":"https://api.github.com/users/mephillips423/followers","following_url":"https://api.github.com/users/mephillips423/following{/other_user}","gists_url":"https://api.github.com/users/mephillips423/gists{/gist_id}","starred_url":"https://api.github.com/users/mephillips423/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mephillips423/subscriptions","organizations_url":"https://api.github.com/users/mephillips423/orgs","repos_url":"https://api.github.com/users/mephillips423/repos","events_url":"https://api.github.com/users/mephillips423/events{/privacy}","received_events_url":"https://api.github.com/users/mephillips423/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/google/shaka-player/labels/question","name":"question","color":"cc317c"},{"url":"https://api.github.com/repos/google/shaka-player/labels/working%20as%20intended","name":"working as intended","color":"e6e6e6"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-11-24T00:30:25Z","updated_at":"2015-11-24T19:54:31Z","closed_at":"2015-11-24T19:54:31Z","body":"I am using the example WowzaStreamingEngine-4.3.0 MPEGDASHPlayer.\r\nI am trying to implement seeking frame by frame in a paused DASH stream.\r\n\r\nWhen I set a new position using currentTime of the video element the\r\nvideo does not move to the new frame. If I increment frame by\r\nframe for many frames eventually after 20 to 40 frames a new\r\nframe will be displayed.\r\n\r\nIs there a setting on the wowza server or the shaka javascript\r\nlibrary that can be used to get frame accurate seeking to work?\r\n\r\nExample: setting the HTML5 video element current time to three different frames\r\n  this.vidElement.currentTime = 19.566666666666666;\r\n  this.vidElement.currentTime = 19.6;\r\n  this.vidElement.currentTime = 19.633333333333333;\r\n\r\n\r\nExample: shaka and video setup\r\n<script type=\"text/javascript\" src=\"js/shaka-player.compiled.js\"></script>\r\n...\r\n\r\n    <script type=\"text/javascript\">\r\n      var video1;\r\n      var shakaPlayer;\r\n\r\n      $(document).ready(function(){\r\n         var html5VidElem = document.getElementById(\"video1\");\r\n\r\n        // Install polyfills for legacy browser support.\r\n        shaka.polyfill.installAll();\r\n\r\n        // Construct a Player to wrap around it.\r\n        shakaPlayer = new shaka.player.Player(html5VidElem);\r\n\r\n        // Attach the player to the window so that it can be easily debugged.\r\n        window.player = shakaPlayer;\r\n\r\n        // Listen for errors from the Player.\r\n        shakaPlayer.addEventListener('error', function(event) {\r\n          console.error(event);\r\n          });\r\n\r\n        // see if my player can still control video\r\n        // Construct a DashVideoSource to represent the DASH manifest.\r\n        var mpdUrl = 'http://192.168.200.31:1935/vod/mp4:sample.mp4/manifest.mpd';\r\n        var estimator = new shaka.util.EWMABandwidthEstimator();\r\n        var source = new shaka.player.DashVideoSource(mpdUrl, null, estimator);\r\n\r\n        // Load the source into the Player.\r\n        shakaPlayer.load(source);\r\n      });\r\n      \r\n    </script>\r\n...\r\nExample: HTML5 video element\r\n      <video id=\"video1\" onloadeddata=\"video1.onLoadedDataEvent()\" onpause=\"video1.onPauseEvent()\" onplay=\"video1.onPlayEvent()\" ontimeupdate=\"video1.onTimeUpdateEvent()\" controls crossorigin=\"anonymous\" >\r\n"}}