rtpg729pay: error playing back files with a bigger size than 4KB
When trying to play an audio file wich contains g729 data with a size bigger than 4KB, rtpg729pay complains about the size of the input buffer.
this issue is related with #615 (closed)
The problems happens on the following platform:
- GStreamer 1.14.1
- Operative System: Linux
- Distro: Ubuntu 18.04.2 LTS (bionic)
- kernel: 4.15.0-51-generic
gst-launch-1.0 -v udpsrc port=6002 caps="application/x-rtp" ! rtpg729depay ! avdec_g729 ! autoaudiosink
gst-launch-1.0 filesrc location=vm-record-prepend.g729 ! 'audio/G729' ! rtpg729pay ! udpsink host=127.0.0.1 port=6002
Error received on stdout when executing sending pipeline
Setting pipeline to PAUSED ... Pipeline is PREROLLING ... ERROR: from element /GstPipeline:pipeline0/GstRTPG729Pay:rtpg729pay0: Invalid input buffer size Additional debug info: gstrtpg729pay.c(360): gst_rtp_g729_pay_handle_buffer (): /GstPipeline:pipeline0/GstRTPG729Pay:rtpg729pay0: Invalid buffer size, should be a multiple of G729_FRAME_SIZE(10) with an optional G729B_CN_FRAME_SIZE(2) added to it, but it is 4096 ERROR: pipeline doesn't want to preroll. Setting pipeline to NULL ... Freeing pipeline ...
This only happens when the input files are bigger than 4K
When the file size is less than 4K the file is transmited and played on the other end.
The file vm-record-prepend.g729
gst debug log file attached dbg.log.xz