mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 04:26:14 +00:00
playsink: Don't leak audio/video filters when using non-raw media
This commit is contained in:
parent
7de6b06ade
commit
24181db083
1 changed files with 6 additions and 0 deletions
|
@ -1818,6 +1818,9 @@ gen_video_chain (GstPlaySink * playsink, gboolean raw, gboolean async)
|
||||||
GST_PLAY_SINK_TYPE_VIDEO_RAW);
|
GST_PLAY_SINK_TYPE_VIDEO_RAW);
|
||||||
if (chain->filter) {
|
if (chain->filter) {
|
||||||
if (!raw) {
|
if (!raw) {
|
||||||
|
gst_object_unref (chain->filter);
|
||||||
|
chain->filter = NULL;
|
||||||
|
|
||||||
if (playsink->flags & GST_PLAY_FLAG_FORCE_FILTERS) {
|
if (playsink->flags & GST_PLAY_FLAG_FORCE_FILTERS) {
|
||||||
goto filter_with_nonraw;
|
goto filter_with_nonraw;
|
||||||
} else {
|
} else {
|
||||||
|
@ -2693,6 +2696,9 @@ gen_audio_chain (GstPlaySink * playsink, gboolean raw)
|
||||||
GST_PLAY_SINK_TYPE_AUDIO_RAW);
|
GST_PLAY_SINK_TYPE_AUDIO_RAW);
|
||||||
if (chain->filter) {
|
if (chain->filter) {
|
||||||
if (!raw) {
|
if (!raw) {
|
||||||
|
gst_object_unref (chain->filter);
|
||||||
|
chain->filter = NULL;
|
||||||
|
|
||||||
if (playsink->flags & GST_PLAY_FLAG_FORCE_FILTERS) {
|
if (playsink->flags & GST_PLAY_FLAG_FORCE_FILTERS) {
|
||||||
goto filter_with_nonraw;
|
goto filter_with_nonraw;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue