Você deve tentar algo como:
flac -c -d -force-raw-format --endian=little --signed=unsigned input.flac | \
lame -r --little-endian --unsigned \
-s 44.1 [other encoding options here] - output.mp3
No lado flac
:
-
-c
significa saída para stdout -
-d
decode -
-force-raw-format --endian=little --signed=unsigned
força RAW, little-endian, saída não assinada
No lado lame
:
-
-
lido de stdin (isto é quase normal) -
-r
leu dados pcm RAW -
--little-endian --unsigned
corresponde ao que as saídas lame -
-s
frequency: corresponde a esse parâmetro com o que seu arquivo flac contém - Você pode precisar de
--bitwidth
se seu arquivo flac não for 16bits / sample
Em relação ao endian-ness e ao signed-ness, não tenho certeza de qual é o formato "nativo" que você tem (ou como determinar isso) - tente algumas combinações. Contanto que eles combinem em ambos os lados do tubo, escolher o errado só deve custar tempo de CPU.