I'm experiencing some issues with transconding. When I installed madsonic for first time (beta 5 build 3660) I played with transcoding to downsample my music when I listen it on my Android phone (most of it is in mp3 already). When I activated transcoding, some files where played correctly, but other wait for a short time (about 5 - 10 seconds) and skipped to the next song. Looking in the logs there was nothing extrange, but I detected a lot of ffmpeg processes opened simultaneously. As madsonic is still beta and I was using the standalone bundle, I decided to stop using transcodig and wait for a while.
Recently I successfully migrated madsonic to tomcat7 and today, after upgrading to build 3760, decided to test again the transcoding function, this time using ffmpeg supplied by Debian Multimedia, with the same result obtained with build 3660 from bundle package.
Launching the ffmpeg command supplied with madsonic by default, it looks like ffmpeg is not printing the result to the terminal while it reencodes the file, but seems like it buffers it into memory and then print all into the terminal once the whole transcoding is complete. It seems to be the cause of all the problem: as my system is very limited in resources, ffmpeg takes so long to encode the file and "print" it back to madsonic, and some kind of timout causes madsonic to skip the track and start whith the next one. Most probably the new song will also have the same problem, and so on.
So my question questions are:
- Is this the expected ffmpeg behaviour?
- If not, do you know any method to make ffmpeg behaves in the expected way?
To complete the test, i'm currently downsampling and transcoding with lame and it seems to work pretty well.
Need help? Post your questions here.