'Can't record audio fast enough' issue - On iOS device
Antonis Tsakiridis
atsakirid at gmail.com
Sat Jan 24 12:55:24 PST 2015
Hello,
I'm using an iPhone 5 to send and receive audio using RTP over UDP. The
problem is that I can't hear anything in any direction. I get:
0:00:27.758603000 [333m 1490[00m 0x16a9b460 [33;01mWARN [00m [00m
audiobasesrc gstaudiobasesrc.c:858:GstFlowReturn
gst_audio_base_src_create(GstBaseSrc *, guint64, guint, GstBuffer
**):<autoaudiosrc0-actual-src-osxaudi>[00m create DISCONT of 1600 samples
at sample 3680
0:00:27.758815000 [333m 1490[00m 0x16a9b460 [33;01mWARN [00m [00m
audiobasesrc gstaudiobasesrc.c:863:GstFlowReturn
gst_audio_base_src_create(GstBaseSrc *, guint64, guint, GstBuffer
**):<autoaudiosrc0-actual-src-osxaudi>[00m warning: Can't record audio fast
enough
0:00:27.758919000 [333m 1490[00m 0x16a9b460 [33;01mWARN [00m [00m
audiobasesrc gstaudiobasesrc.c:863:GstFlowReturn
gst_audio_base_src_create(GstBaseSrc *, guint64, guint, GstBuffer
**):<autoaudiosrc0-actual-src-osxaudi>[00m warning: Dropped 1600 samples.
This is most likely because downstream can't keep up and is consuming
samples too slowly.
IMPORTANT NOTE: If I use only the receiving part of the pipeline it works
fine (please see P.S.1). Same happens if I use only the sending part of the
pipeline (please see P.S.2).
Code:
...
gst_debug_set_threshold_from_string("2,*audio*:3", TRUE);
// Bidirectional
self->sm_pipeline = gst_parse_launch("udpsrc name=udp-src
caps=\"application/x-rtp,media=audio,clock-rate=8000,encoding-name=PCMU\" !
rtppcmudepay ! mulawdec ! audioconvert ! audioresample ! autoaudiosink
autoaudiosrc ! audioconvert ! audioresample ! mulawenc ! rtppcmupay !
udpsink name=udp-sink async=false", &error);
if (error) {
...
}
gst_element_set_state (self->sm_pipeline, GST_STATE_PLAYING);
...
Any ideas?
Thank you,
Antonis
P.S.1. Pipeline the works (only sending):
self->sm_pipeline = gst_parse_launch("autoaudiosrc ! audioconvert !
audioresample ! mulawenc ! rtppcmupay ! udpsink name=udp-sink async=false",
&error);
P.S.2. Pipeline that works (only receiving):
self->sm_pipeline = gst_parse_launch("udpsrc name=udp-src
caps=\"application/x-rtp,clock-rate=8000,encoding-name=PCMU\" !
rtppcmudepay ! mulawdec ! audioconvert ! audioresample ! autoaudiosink",
&error);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150124/ab1319b8/attachment.html>
More information about the gstreamer-devel
mailing list