diff --git a/pipewire-jack/src/pipewire-jack.c b/pipewire-jack/src/pipewire-jack.c index 6a1da51eb..8edae6d80 100644 --- a/pipewire-jack/src/pipewire-jack.c +++ b/pipewire-jack/src/pipewire-jack.c @@ -2575,14 +2575,12 @@ static int client_node_port_use_buffers(void *data, return -ENOSPC; } - if (direction == SPA_DIRECTION_INPUT) { - if (p->object->port.type_id == TYPE_ID_VIDEO) { - fl = PW_MEMMAP_FLAG_READ; - } else { - /* some apps write to the input buffer so we want everything readwrite */ - fl = PW_MEMMAP_FLAG_READWRITE | PW_MEMMAP_FLAG_PRIVATE; - } + if (p->object->port.type_id == TYPE_ID_VIDEO && direction == SPA_DIRECTION_INPUT) { + fl = PW_MEMMAP_FLAG_READ; } else { + /* some apps write to the input buffer so we want everything readwrite. We + * can't use PRIVATE because then we might not see changes in the buffer + * by other apps. */ fl = PW_MEMMAP_FLAG_READWRITE; } diff --git a/src/modules/module-client-node/remote-node.c b/src/modules/module-client-node/remote-node.c index 7a1b482fc..17c1c5780 100644 --- a/src/modules/module-client-node/remote-node.c +++ b/src/modules/module-client-node/remote-node.c @@ -606,8 +606,6 @@ client_node_port_use_buffers(void *_data, if (n_buffers > MAX_BUFFERS) return -ENOSPC; - /* this is for the metadata, which needs to be writable for input buffers - * as well, for the busy metadata, for example */ prot = PW_MEMMAP_FLAG_READWRITE; /* clear previous buffers */