Uh oh!
There was an error while loading. Please reload this page.
[GStreamer][MSE] Remove use of timeouts completely on AppendPipeline - #23
Merged
Conversation
calvarisforce-pushed
the
calvaris/timeouts
branch
from
February 18, 2016 16:09
8082ea7 to
5f4af99CompareThis reverts commit f118607.
Removed useless checks
calvarisforce-pushed
the
calvaris/timeouts
branch
from
February 19, 2016 10:28
5f4af99 to
b2dd25fCompareThis replaces the whole end of append detection with custom downstream events and also solves the issue of the data starve timer being needed.
Setting and reading might happen in different threads, so it is better to protect it with a mutex.
When resetting the pipeline we also need to reset if the first buffer went thru.
Since we don't need custom events, we don't need tracking the events anymore.
When the probe is not needed anymore, we can remove it and reinstate it again when necessary.
calvarisforce-pushed
the
calvaris/timeouts
branch
from
February 19, 2016 10:42
b2dd25f to
da57d5eCompare| { | ||
| ASSERT(WTF::isMainThread()); | ||
| LOG_MEDIA_MESSAGE("resetting pipeline"); | ||
| m_atLeastABufferLeftAppsrcMutex.lock(); |
There was a problem hiding this comment.
I think you can simply use LockHolder lock(m_atLeastABufferLeftAppsrcMutex);
MemberAuthor
There was a problem hiding this comment.
No, I can't, the rest of the method forces to claim the mutex somewhere else and then we have a deadlock. That was the first thing I tried. I could use unlockEarly() on the MutexLocker, but I think it doesn't pay off for such straight method.
calvaris added a commit
that referenced
this pull request
Feb 19, 2016
[GStreamer][MSE] Remove use of timeouts completely on AppendPipeline
zdobersek added a commit
that referenced
this pull request
Jul 27, 2016
WPE: Make the backend switchable at compile- and runtime.
Closed
This was referenced Mar 30, 2021
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
After some investigation I got the idea that using the need-data signal on appsrc could be what we needed to remove the data starve timeout in the cases the demuxer stalls. I realized too that with that signal was telling us in every case when the demuxer had finished processing so we could really get rid of the custom events as well and rely only on that signal.