GNOME Bugzilla – Bug 793458
omxvideoenc: make GST_PARAM_MUTABLE_PLAYING property thread safe
Last modified: 2018-02-21 16:04:32 UTC
.
Created attachment 368347 [details] [review] omxvideoenc: protect target_bitrate with the object lock The 'target-bitrate' property can be changed while PLAYING (GST_PARAM_MUTABLE_PLAYING). Make it thread-safe to prevent concurrent accesses between the application and streaming thread.
Created attachment 368348 [details] [review] omxvideoenc: remove GST_PARAM_MUTABLE_READY from 'max-bitrate' property This property isn't actually mutable in the PLAYING state.
Review of attachment 368348 [details] [review]: The patch loosk ok, but the title isn't.. you probably means PLAYING instead of ready there.
Indeed.
Created attachment 368692 [details] [review] omxvideoenc: protect target_bitrate with the object lock The 'target-bitrate' property can be changed while PLAYING (GST_PARAM_MUTABLE_PLAYING). Make it thread-safe to prevent concurrent accesses between the application and streaming thread.
Created attachment 368693 [details] [review] omxvideoenc: remove GST_PARAM_MUTABLE_PLAYING from 'max-bitrate' property This property isn't actually mutable in the PLAYING state.
commit a8c3996317936c870e0f21d3dba2d64bba874418 Author: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> Date: Wed Feb 14 17:23:39 2018 +0100 omxvideoenc: remove GST_PARAM_MUTABLE_PLAYING from 'max-bitrate' property This property isn't actually mutable in the PLAYING state. https://bugzilla.gnome.org/show_bug.cgi?id=793458 commit 2d3816fabc2d0951d814fa312895799116e94693 Author: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> Date: Wed Feb 14 17:20:02 2018 +0100 omxvideoenc: protect target_bitrate with the object lock The 'target-bitrate' property can be changed while PLAYING (GST_PARAM_MUTABLE_PLAYING). Make it thread-safe to prevent concurrent accesses between the application and streaming thread. https://bugzilla.gnome.org/show_bug.cgi?id=793458
Review of attachment 368692 [details] [review]: ::: omx/gstomxvideoenc.c @@ +1015,3 @@ break; case PROP_TARGET_BITRATE: + GST_OBJECT_LOCK (self); Looks good, but in general we protect all properties regardless, so we don't forget when they get promoted.