{"action":"created","issue":{"url":"https://api.github.com/repos/chrippa/livestreamer/issues/860","labels_url":"https://api.github.com/repos/chrippa/livestreamer/issues/860/labels{/name}","comments_url":"https://api.github.com/repos/chrippa/livestreamer/issues/860/comments","events_url":"https://api.github.com/repos/chrippa/livestreamer/issues/860/events","html_url":"https://github.com/chrippa/livestreamer/issues/860","id":69571666,"number":860,"title":"Ustream.com plugin drops after few seconds","user":{"login":"karlo2105","id":5579457,"avatar_url":"https://avatars.githubusercontent.com/u/5579457?v=3","gravatar_id":"","url":"https://api.github.com/users/karlo2105","html_url":"https://github.com/karlo2105","followers_url":"https://api.github.com/users/karlo2105/followers","following_url":"https://api.github.com/users/karlo2105/following{/other_user}","gists_url":"https://api.github.com/users/karlo2105/gists{/gist_id}","starred_url":"https://api.github.com/users/karlo2105/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/karlo2105/subscriptions","organizations_url":"https://api.github.com/users/karlo2105/orgs","repos_url":"https://api.github.com/users/karlo2105/repos","events_url":"https://api.github.com/users/karlo2105/events{/privacy}","received_events_url":"https://api.github.com/users/karlo2105/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/chrippa/livestreamer/labels/bug","name":"bug","color":"e10c02"},{"url":"https://api.github.com/repos/chrippa/livestreamer/labels/plugin","name":"plugin","color":"d7e102"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":31,"created_at":"2015-04-20T12:02:56Z","updated_at":"2015-07-25T03:01:49Z","closed_at":null,"body":"livestreamer -l debug \"http://www.ustream.tv/channel/tv-bor-live\" best\r\n[cli][info] Found matching plugin ustreamtv for URL http://www.ustream.tv/channel/tv-bor-live\r\n[plugin.ustreamtv][debug] Waiting for moduleInfo invoke\r\n[cli][info] Available streams: 576p+ (best), 576p+_alt_akamai, 576p+_alt_highwin\r\nds, mobile_240p (worst)\r\n[cli][info] Opening stream: 576p+ (uhs)\r\n[stream.uhs][debug] Fetching module info\r\n[cli][debug] Pre-buffering 8192 bytes\r\n[stream.uhs][debug] Adding chunk 1429507013 to queue\r\n[stream.uhs][debug] Fetching module info\r\n[cli][info] Starting player: 'C:\\Program Files\\VideoLAN\\VLC\\vlc.exe'\r\n[stream.uhs][debug] Download of chunk 1429507013 complete\r\n[cli][debug] Writing stream to output\r\n[stream.uhs][debug] Stream went offline\r\n[stream.uhs][debug] Closing worker thread\r\n[stream.uhs][debug] Closing writer thread\r\n[cli][info] Stream ended\r\n"},"comment":{"url":"https://api.github.com/repos/chrippa/livestreamer/issues/comments/124791940","html_url":"https://github.com/chrippa/livestreamer/issues/860#issuecomment-124791940","issue_url":"https://api.github.com/repos/chrippa/livestreamer/issues/860","id":124791940,"user":{"login":"jthall","id":1269666,"avatar_url":"https://avatars.githubusercontent.com/u/1269666?v=3","gravatar_id":"","url":"https://api.github.com/users/jthall","html_url":"https://github.com/jthall","followers_url":"https://api.github.com/users/jthall/followers","following_url":"https://api.github.com/users/jthall/following{/other_user}","gists_url":"https://api.github.com/users/jthall/gists{/gist_id}","starred_url":"https://api.github.com/users/jthall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jthall/subscriptions","organizations_url":"https://api.github.com/users/jthall/orgs","repos_url":"https://api.github.com/users/jthall/repos","events_url":"https://api.github.com/users/jthall/events{/privacy}","received_events_url":"https://api.github.com/users/jthall/received_events","type":"User","site_admin":false},"created_at":"2015-07-25T03:01:49Z","updated_at":"2015-07-25T03:01:49Z","body":"ok yes now it is running glitch-free, at least for me.  It might be related to bandwidth as well.  I have enough bandwidth to run several times real-time for the stream, so I can \"catch up\" if you will rather quickly.  I'm curious to see what happens if you run this on a slower connection.\r\n\r\nAs I was playing with this, I noticed one schema failure for streams, and once I was \"unable to retrieve desktop streams\" so I'm looking at the first one to see what's wrong with the schema.  I'm still not convinced this solution is the correct solution, because the messages appear to come less often for livestreamer clients than the flash client.  Basically what I have done is the following:\r\n\r\n1: reuse the same connection to get more chunks rather than going through setup each time we want more chunks\r\n\r\n2: send playing() method to server (not convinced this is really required)\r\n\r\n3: relax chunk retrieval rules to fetch stale chunks that \"should\" be missing but are mysteriously still hanging around on the servers. This means when you try to pull chunks that cross a range boundary you will get \"earlier\" chunks rather than starting at the range boundary (thus the reason for \"missing\" chunks)\r\n\r\nTODO: handle failure cases better and make sure we didn't botch failure notifications\r\n\r\nHow do I get this put into a code review?"}}