Is it possible to apply more than one filter to a stream?

If I add a filter to a stream and then try to add another filter it produces an error message indicating that is already a filter applied to the stream.

If I try to alter the input to the applyFilter with an array of commands it says it requires an object.

If I try and pass the commands as an array objPublisher.stream.applyFilter(“GStreamerFilter”, [{ command: “textoverlay text=‘Lon: 82.565929, Lat:28.059647’ color=-16711936 valignment=top halignment=right font-desc=‘Verdana 32’” }, { command: “clockoverlay valignment=bottom halignment=right shaded-background=true font-desc=‘Sans, 20’ time-format=’%H:%M:%S UTC’” }] )

I have tried to pass an array like this, but still produces an error
objPublisher.stream.applyFilter([“GStreamerFilter”, { command: “textoverlay text=‘Lon: 82.565929, Lat:28.059647’ color=-16711936 valignment=top halignment=right font-desc=‘Verdana 32’” }], [“GStreamerFilter”, { command: “clockoverlay valignment=bottom halignment=right shaded-background=true font-desc=‘Sans, 20’ time-format=’%H:%M:%S UTC’” }])

I have also tried to add two commands with the ! like this and it pukes.
objPublisher.stream.applyFilter(“GStreamerFilter”, { command: “textoverlay text=‘Lon: 82.565929, Lat:28.059647’ color=-16711936 valignment=top halignment=right font-desc=‘Verdana 32’ ! clockoverlay valignment=bottom halignment=right shaded-background=true font-desc=‘Sans, 20’ time-format=’%H:%M:%S UTC’” })

If having two overlays enabled at the same time is possible in kurento is it possible to just extend the applyFilter method to accept an array of filters to be applied, and or create an applyFilters that accepts an array.

https://docs.openvidu.io/en/2.14.0/api/openvidu-browser/classes/stream.html#applyfilter

Please, read the first section of Filters documentation:

https://docs.openvidu.io/en/2.14.0/advanced-features/filters/#voice-and-video-filters

Thanks for the response.
Is this something that we could possibly add if Kurento supports it?
Essentially we would need to create JavaScript function that accepts an array of filters, and then adjust the Java Server code interface to accept an array of filters then loop over the array and feed it into Kurento (if Kurento can support it).

If you create a fork of OpenVidu server, you can do whatever you want, of course.

We do not support it in OpenVidu because the logic of having more than one filter applied to a publisher’s WebRtcEndpoint at the same time would be much more complicated. Not only at source code level, but also at exposed API level.

Thanks for your honest feedback.
Since I technically don’t need the filter to be applied to the live video I can just handle it in post processing of the recorded file.