by ccandreva » Sat Jun 12, 2010 3:14 am
Well knowing it was happening on Windows too means it wasn't a problem with my versions of ffmpeg, etc. So I think the definition of the problem is now:
Jukebox mode will only talk correctly to lame as the last program in a filter pipeline.
So the workaround is to make lame the last program in the pipeline, even if we don't need it. I've set up flac > wav like this:
Step 1: ffmpeg -i %s -f wav -
Step 2: lame --decode - -
The '--decode' option tells lame to decode to wav. Since the input is a wav, this should end up doing nothing, but since subsonic is now talking to lame instead of ffmpeg -- IT WORKS !
I've listened to two albums all the way through this way.
In fact, you can use this to listen to MIDI files in Jukebox mode now. Add .mid as a file type, install timidity++ and make sure it works (comes with most Linux distros, no idea how to get it on Windows), link it from /var/subsonic/transcode, and set up the pipeline thusly:
Step 1: timidity -Ow -o - %s
Step 2: lame --decode - -
If mikmod could write WAV data to a pipe I'd have MOD files playing too.