Skip to content

Conversation

@milos-lk
Copy link
Contributor

The original fix for the issue was to make sure video track is removed (and input selector switched to to the testsrc for video track) before appwriter sends EOS. However there is an escape path in case of read errors (handleReadError) - it will cause the EOS to get to the selector while the video track is still connected to it - later on, on onTrackUnsubscribed/onTrackFinished selector input will be switched but by that time it's already too late as the encoder has seen EOS and will complain the same way when test source starts pushing data which will cause egress to be marked as failed just at the end. The fix is to make sure the src is removed before drain for this case as well.

… recording

The original fix for the issue was to make sure video track is removed (and input selector switched to to the testsrc for video track) before appwriter sends EOS. However there is an escape path in case of read errors (handleReadError) - it will cause the EOS to get to the selector while the video track is still connected to it - later on, on onTrackUnsubscribed/onTrackFinished selector input will be switched but by that time it's already too late as the encoder has seen EOS and will complain the same way when test source starts pushing samples which will cause egress to be marked as failed just at the end.
The fix is to make sure the src is removed before drain for this case as well.
@milos-lk milos-lk merged commit 7bbe0bf into main Dec 23, 2025
15 checks passed
@milos-lk milos-lk deleted the fix-x264-error branch December 23, 2025 07:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants