[mythtv-commits] [MythTV/mythtv] b214da: VAAPI: Fix intermittent VPP deinterlacer crash
Mark Kendall
noreply at github.com
Tue Mar 17 14:05:17 UTC 2020
Branch: refs/heads/master
Home: https://github.com/MythTV/mythtv
Commit: b214da2eafce91af01a6c6831d961fa3b2ca1717
https://github.com/MythTV/mythtv/commit/b214da2eafce91af01a6c6831d961fa3b2ca1717
Author: Mark Kendall <mark.kendall at gmail.com>
Date: 2020-03-17 (Tue, 17 Mar 2020)
Changed paths:
M mythtv/libs/libmythtv/opengl/mythvaapiinterop.cpp
Log Message:
-----------
VAAPI: Fix intermittent VPP deinterlacer crash
Commit: 6430256afcf90e88c321725da61f6169022cec3f
https://github.com/MythTV/mythtv/commit/6430256afcf90e88c321725da61f6169022cec3f
Author: Mark Kendall <mark.kendall at gmail.com>
Date: 2020-03-17 (Tue, 17 Mar 2020)
Changed paths:
M mythtv/libs/libmythtv/mythplayer.cpp
M mythtv/libs/libmythtv/mythplayer.h
Log Message:
-----------
MythPlayer: Avoid waiting for a callback that has been processed
- add an additional parameter to the DecoderCallback class to mark the
callback as having been processed
- it was previously possible for MythPlayer to process the callback
before the callee started waiting for its completion, leading to a
deadlock (it is unsafe to timeout waiting for callbacks to be
completed).
Commit: 1324b785b36666b4e77ad394de165a8af4b1880f
https://github.com/MythTV/mythtv/commit/1324b785b36666b4e77ad394de165a8af4b1880f
Author: Mark Kendall <mark.kendall at gmail.com>
Date: 2020-03-17 (Tue, 17 Mar 2020)
Changed paths:
M mythtv/libs/libmythtv/opengl/mythvideooutopengl.cpp
M mythtv/libs/libmythtv/videobuffers.cpp
M mythtv/libs/libmythtv/videobuffers.h
Log Message:
-----------
VideoBuffers: Don't unref FFmpeg buffers while holding lock
- releasing FFmpeg AVBufferRef's will potentially lead to the release of
the parent buffer pool and with it the destruction of the OpenGL interop
class - which triggers a callback to the UI thread
- this is unsafe if the main thread is also performing VideoBuffer
operations that hold or require the lock - leading to deadlocks.
- always queue buffer refs for later release - once the main lock has
been released.
Compare: https://github.com/MythTV/mythtv/compare/a74700c34657...1324b785b366
More information about the mythtv-commits
mailing list