It’s possible to pipe a binary stream (with, say, audio) using CMD more or less the same way it’s done in POSIXish shells:
cmd /c 'gtts-cli "Test" | ffplay -'
However I don’t find a way to do that from PowerShell: it seems to always convert everything from stdout into text except when piping an actual PowerShell object.
The long term work around for this issue is to just use cmd when you need to process native apps raw output. Powershell 7.4 they added an experimental feature, PSNativeCommandPreserveBytePipe, to try and add this capability. Check out the section “Using native commands in the pipeline” at the following link