freeswitch icon indicating copy to clipboard operation
freeswitch copied to clipboard

The recording duration of two channels of a phone call is inconsistent

Open SongCF opened this issue 2 months ago • 4 comments

Freeswitch initiates a phone call. One end is the customer service using the webrtc web page, and the other end is the real phone customer. uuid_record is used to record the two channels respectively, but why are the durations of the two wav recording files different?

  1. The recording instructions are as follows: uuid_setvar record_sample_rate 8000 uuid_setvar RECORD_STEREO true uuid_record start /home/admin/recording/xx/xx/xxx.wav
  2. The ESL client receives the start recording event of the two channels at the same time, and the time of the end recording event is also the same.
  3. The recording time on the phone is normal, and the recording on the web will be 2-3 seconds longer per minute on average (a 5-minute call on the web customer service channel will be more than 10 seconds longer), but the recording content starts and ends the same. Insert extra silence segment if it does not exist 4.FreeSWITCH Version 1.8.7+git~20190702T200609Z~6047ebddfc~64bit (git 6047ebd 2019-07-02 20:06:09Z 64bit)

SongCF avatar Apr 26 '24 02:04 SongCF

@SongCF Is it reproducible on the latest version of FreeSWITCH v1.10.11?

hnimminh avatar Apr 29 '24 10:04 hnimminh

Is it reproducible on the latest version of FreeSWITCH v1.10.11?

Yes, I also tried the following and the result is still the same:

  1. The length of the recording file on the phone side is normal (the same as the call length), only the recording time on the web side will be 2-3 seconds longer per minute. If both ends are web pages, both recordings will become longer;
  2. The original web-side opus encoding and the phone-side encoding were pcma. After the web-side was forced to pcma encoding, the problem still existed and there was no change;
  3. The problem also exists after adding media_bug_answer_req=true to the dial-up command originate;
  4. The ESL client receives the start recording event of the two channels at the same time, and the time of receiving the end recording event is also the same;
  5. The problem still exists after adding RECORD_ANSWER_REQ, RECORD_BRIDGE_REQ and disabling caching to the recording command. The recording command is as follows: uuid_setvar CHANNEL_ID record_sample_rate 8000 uuid_setvar CHANNEL_ID RECORD_STEREO true uuid_setvar CHANNEL_ID RECORD_ANSWER_REQ true uuid_setvar CHANNEL_ID RECORD_BRIDGE_REQ true uuid_setvar CHANNEL_ID enable_file_write_buffering false uuid_record CHANNEL_ID start /home/admin/recording/xx/xx/xxx.wav

SongCF avatar May 08 '24 06:05 SongCF