Transcoding from FLAC to OGG for your Android FAIL
I'm finally posting here because I've tried so hard to get this working reliably over the past year and it just will not work as expected.
I have streaming working under perfect data conditions (ie wifi). I can stream my FLAC collection to my android and save files preserving gapless tracks! Woohoo awesome, thanks Sindre!
The issue is when I'm on 3g/edge. Almost every time I try to download a song not on wifi, the connection gets interrupted at some point. This is fine and expected on a mobile device and for transcoding to mp3 the stream recovers perfectly. For ogg, its a different story. The stream seems to recover (the download shows progress) but when trying to playback the track at some point it throws: Error Playing "songname". MediaPlayer error:-131 (0) (Exception)
I think this is a generic code for "the stream is effed up and I can't play it"
These are the transcoding configurations, both work as described above but have the same problem mentioned:
Single stage (FLAC>OGG):
1: oggenc -q 7 %s -o - (this preserves tags, WOW!)
Dual stage method (FLAC>OGG):
1: ffmpeg -i %s -f wav -
2: oggenc -q 7 -t %t -a %a -l %l -
I'm running on Linux (Debian Lenny, with latest subsonic 4.2) No special stuff here, plain install. Client is a Nexus One running latest available client from market.
Anyone can replicate this by simply using the transcoding settings above for their Android device, start streaming something over wifi, turn off wifi, then turn wifi back on. This will cause a data interruption and will show the woes of ogg streaming I've had the last year with subsonic.
The bug is particularly annoying because subsonic saves the file to the android device as if it was successful, so unless you go back and manually delete the file, you'll have a busted version of that song forever.
I think there is something wrong with the data stream resume on the client side. I'd really appreciate some advice here and especially someone to repro this to make sure I'm not crazy. Sindre, can you confirm this configuration works? Seriously, this the only way to get decent quality music on your android device while preserving gapless tracks... period.
Why is no one else complaining about this?
I have streaming working under perfect data conditions (ie wifi). I can stream my FLAC collection to my android and save files preserving gapless tracks! Woohoo awesome, thanks Sindre!
The issue is when I'm on 3g/edge. Almost every time I try to download a song not on wifi, the connection gets interrupted at some point. This is fine and expected on a mobile device and for transcoding to mp3 the stream recovers perfectly. For ogg, its a different story. The stream seems to recover (the download shows progress) but when trying to playback the track at some point it throws: Error Playing "songname". MediaPlayer error:-131 (0) (Exception)
I think this is a generic code for "the stream is effed up and I can't play it"
These are the transcoding configurations, both work as described above but have the same problem mentioned:
Single stage (FLAC>OGG):
1: oggenc -q 7 %s -o - (this preserves tags, WOW!)
Dual stage method (FLAC>OGG):
1: ffmpeg -i %s -f wav -
2: oggenc -q 7 -t %t -a %a -l %l -
I'm running on Linux (Debian Lenny, with latest subsonic 4.2) No special stuff here, plain install. Client is a Nexus One running latest available client from market.
Anyone can replicate this by simply using the transcoding settings above for their Android device, start streaming something over wifi, turn off wifi, then turn wifi back on. This will cause a data interruption and will show the woes of ogg streaming I've had the last year with subsonic.
The bug is particularly annoying because subsonic saves the file to the android device as if it was successful, so unless you go back and manually delete the file, you'll have a busted version of that song forever.
I think there is something wrong with the data stream resume on the client side. I'd really appreciate some advice here and especially someone to repro this to make sure I'm not crazy. Sindre, can you confirm this configuration works? Seriously, this the only way to get decent quality music on your android device while preserving gapless tracks... period.
Why is no one else complaining about this?