Package: bs1770gain Version: 0.6.5-1 Steps to reproduce:
$ sox -n file.wav synth 1 sine 1000 $ bs1770gain --xml . | xmllint - -:6: parser error : PCDATA invalid Char value 8 30% ^ -:6: parser error : PCDATA invalid Char value 8 30% [...] The problem is that progress information is being output directly to stdout even in XML mode, which confuses the parser. The solution is to use --suppress-progress: $ bs1770gain --suppress-progress --xml . | xmllint - <?xml version="1.0"?> <bs1770gain norm="-23.00"> [...] The end result is that --xml is unusable without --suppress-progress. (This is a regression from previous versions of bs1770gain, which did not output progress information.) What would make most sense IMHO is to only output progress information to stderr to avoid confusing whatever program is consuming stdout. Even better would be to only output progress information if stderr is a TTY. Or, at the very least, --suppress-progress should be the default when --xml is used.