Big delay on Playback from CDR


I have big delays when I try to playback from CDR. CDR table has around 2.5mil entries.
After I press to play, it can take up to 20 seconds to start playing the Recording. If I choose to download, it starts instantly.
If that makes any difference, it is a VM on on-premise vSphere.

Incidentally, I also have the Call Recording module on this deployment and if I choose to playback through Call Recordings, it starts almost instantly, usually no more than 2 seconds.

I experience the same behavior on another FreePBX isntance as well with 2.1 mil entries on CDR table.

My first assumption is obviously that the perpetrator is the amount of entries on CDR table. But, is there anything else to try before proceeding with deletion of old CDR?
How can I see what delays the what-I-would-only-guess-as buffering when pressing playback from CDR list? Meaning that if for example is a resource problem I can always assign more resources to the VM.

The difference is that when streaming it uses file chunking. So It sends blocks of the file at a time. On download you are waiting for the whole file at once. So ultimately this is up to the browser or client software how it handles it. In theory chunking should be the better route and it should be seamless to the end user. At the end of the day when you stream it seems to be waiting for all the chunks for some reason. This reason probably relates to how it is trying to buffer. You can try and submit a bug for them to adjust the audio tags to buffer differently or to increase the chunk size. It is hard to say which will fix it without some trial and error.

Note that CDR and all of FreePBX use Jplayer which is a library that hasn’t been touched in 10 years. There is most definitely something better now perhaps something using modern browser apis like MediaStream - Web APIs | MDN

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.