New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Faster channel switching for addons with built-in demuxer #3964
Conversation
is always done a moment later anyway when a DMX_SPECIALID_STREAMCHANGE comes in
DMX_SPECIALID_STREAMCHANGE packets comes in. This way we avoid opening it sooner when the streams are about to change very soon anyway
@xhaggi I had to force push to fix a compilation error (from an earlier rebase) so your comment got lost. I investigated the use of OpenDefaultStreams() a bit more and have now changed the commit so that it is called only when the stream change occurs, not otherwise. The previous approach was made before I added the "don't delete the demuxer all the time" commit which is why it was a bit too drastic. |
method, and load it at the right place (previously they were only loaded if there was no demuxer, since it is no longer destroyed we always load them)
Moved the loading of stored channel settings to the proper location so that it actually works. |
please move discussion on this to the forum or postpone after release. We are short final for Gotham and this certainly won't make it into release. |
Let's continue in http://forum.xbmc.org/showthread.php?tid=182355 |
oh right yeah let's continue this on the forum :) and yeah, what @FernetMenta said :) |
I'm closing this one, at least for the time being. |
I've been experimenting with reducing the amount of stuff that happens when switching channels in an attempt to speed up the process, and this is what I have so far. These changes rely on opdenkamp/xbmc-pvr-addons#259 for maximum efficiency. We already started the discussion over there but I think it's better to keep it here so people can more easily comment on specific changes etc.
All in all, the idea is to refrain from closing the demuxer and decoders when switching channels, unless it's necessary. Another part of speeding things up is removing the CACHESTATE_PVR caching state. This has been possible all along by using advancedsettings.xml and I'd like some feedback on what its purpose actually is (since stuff works fine without it)?
I am using this branch myself and while there seems to be some random issues with subtitles overall it works great. @amet also tested it successfully.
To start of the discussion I have two questions that I haven't gotten a clear answer on:
@elupus I take it all of this is somewhat your domain?