rtpg729pay: CRITICAL format error when trying to playback g729 audio file with a size smaller than 4KB
Overview
When trying to play an audio file wich contains g729 data with a size smaller than 4KB, rtpg729pay shows gstreamer CRITICAL errors.
this issue is related with #614 (closed)
System
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
Details
Receiving pipeline
gst-launch-1.0 -v udpsrc port=6002 caps="application/x-rtp" ! rtpg729depay ! avdec_g729 ! autoaudiosink
Sending pipeline
gst-launch-1.0 filesrc location=vm-tomakecall.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 ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
(gst-launch-1.0:14910): GStreamer-CRITICAL **: 16:35:44.822: gst_segment_to_running_time: assertion 'segment->format == format' failed
(gst-launch-1.0:14910): GStreamer-CRITICAL **: 16:35:46.203: gst_segment_to_running_time: assertion 'segment->format == format' failed
Got EOS from element "pipeline0".
Execution ended after 0:00:02.890369575
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
This only happens when the input files are smaller than 4K
2.9KB vm-tomakecall.g729
The file is played without problems on the other size, but the critical errors are still present on the sender size.
audio file is attached vm-tomakecall.g729
gst debug log file attached dbg.log.xz