Re: [pulseaudio-discuss] Dropped xxx samples. This is most likely because downstream can't keep up and is consuming samples too slowly.

2022-02-13 Thread corbeille
It seems to work beautiffuly, 35 minutes without problem !
Now, I would like to know if I can create this loopback automatically
at startup with a relation between alsa hw:1,0 and a null sink.
I create a new thread for this.
Thank you Georg !
++

Jack



Le dimanche 13 février 2022 à 21:26 +0100, Georg Chini a écrit :
> On 13.02.22 21:02, corbeille wrote:
> > I will try to use the loopback module since it performs adaptive
> > resampling between source and sink.
> > If I understand what you write, I should use something like this :
> > 
> > $ pacmd load-module module-null-sink sink_name=MySink
> > $ pacmd load-module module-null-sink sink_name=MySink2
> > $ pacmd load-module module-loopback source=alsa_input.usb-0d8c_C-
> > Media_USB_Headphone_Set-00.mono-fallback sink=MySink2
> > 
> > And then start my two gstreamer pipelines :
> > 
> > $ gst-launch-1.0 pulsesrc device=MySink2.monitor ! audioconvert !
> > audioresample ! pulsesink device=MySink
> > $ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
> > raw,channels=2 ! audioconvert ! audioresample ! opusenc
> > bitrate=256000
> > ! oggmux ! shout2send ip=... port=... mount=... password=...
> > 
> > Is it correct ?
> 
> Yes, that's correct.
> 
> > At this moment, I don't try to mesure latency between audio input
> > and
> > output.
> > ++
> > 
> > Jack
> > 
> > 
> > 
> > 
> > Le dimanche 13 février 2022 à 20:17 +0100, Georg Chini a écrit :
> > > On 13.02.22 17:09, corbeille wrote:
> > > > Hey Georg,
> > > > 
> > > > I have updated my to raspios since last time : Debian GNU/Linux
> > > > 11
> > > > (bullseye).
> > > > It comes with :
> > > > - pulseaudio 14.2
> > > > - GStreamer 1.18.4
> > > > 
> > > > Is it also too old ?
> > > > I was hoping to avoid installing pulseaudio from source.
> > > > If so, I will give it a try...
> > > > ++
> > > > 
> > > > Jack
> > > Well, 14.2 is at least not completely out of date. Nevertheless I
> > > would try
> > > current git. What I wonder about is that the problem only occurs
> > > with
> > > a
> > > second null sink. Are you sure about that? The two null sinks
> > > should
> > > not
> > > interact at all. Maybe with the second null sink the problem
> > > occurs
> > > only
> > > later?
> > > 
> > > I can understand that there is an issue, because the system time
> > > and
> > > sound
> > > card time are normally different. So if the source for example
> > > (from
> > > a
> > > system
> > > time perspective) delivers samples at 48003 Hz while the samples
> > > are
> > > played
> > > with 48000 Hz you will have three samples left per second which
> > > pile
> > > up
> > > pretty fast. module-loopback has mechanisms to deal with the rate
> > > difference
> > > between source and sink. Maybe you can try to use a loopback from
> > > the
> > > alsa
> > > source to a null-sink and then use the monitor of that null sink
> > > in
> > > your
> > > first
> > > gst-launch command instead of using the alsa source directly.
> > > 
> > > Do you see increasing latency before the sound gets choppy?
> > > 
> > > > Le dimanche 13 février 2022 à 17:05 +0100, Georg Chini a écrit
> > > > :
> > > > > On 13.02.22 16:57, corbeille wrote:
> > > > > > Hello,
> > > > > > 
> > > > > > I did some additional tests.
> > > > > > And it seems the problem occurs when I have a second null
> > > > > > sink.
> > > > > > With
> > > > > > only one null sink, I don't have any problem. Weird.
> > > > > > 
> > > > > > So here is an example of the configuration that causes the
> > > > > > problem
> > > > > > :
> > > > > > 
> > > > > > 1st shell:
> > > > > > $ pacmd load-module module-null-sink sink_name=MySink
> > > > > > $ pacmd load-module module-null-sink sink_name=MySink2
> > > > > > 
> > > > > > 2nd shell:
> > > > > > $ gst-launch-1.0 pulsesrc device="alsa_input.usb-0d8c_C-
> > > > > > Media_USB_Headphone_Set-00.analog-mono" ! audioconvert !
> > > > > > audioresample
> > > > > > ! pulsesink device=MySink
> > > > > > 
> > > > > > 3rd shell:
> > > > > > $ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
> > > > > > raw,channels=2 ! audioconvert ! audioresample ! opusenc !
> > > > > > oggmux !
> > > > > > shout2send ip=... port=... mount=... password=...
> > > > > > 
> > > > > > After 20 minutes, the sound becomes choppy and stop 4/5
> > > > > > minutes
> > > > > > after.
> > > > > > 
> > > > > > You can notice that I don't use the second null sink.
> > > > > > 
> > > > > > Is it a normal behavior ? If so, how can I do to achieve
> > > > > > this
> > > > > > configuration on my RPi (by using multi null sink) :
> > > > > > 
> > > > > > gst_input1 => MySink => gst output1
> > > > > > gst_input2 => MySink2 => gst output2
> > > > > > 
> > > > > > without any trouble ?
> > > > > > Thanks.
> > > > > > ++
> > > > > > 
> > > > > > Jack
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > Le vendredi 11 février 2022 à 21:33 +0100, corbeille a
> > > > > > écrit :
> > > > > > > Hello,
> > > > > > > 
> > > > > > > I am using pulseaudio (version 12.2) to "join

Re: [pulseaudio-discuss] Dropped xxx samples. This is most likely because downstream can't keep up and is consuming samples too slowly.

2022-02-13 Thread Georg Chini

On 13.02.22 21:02, corbeille wrote:

I will try to use the loopback module since it performs adaptive
resampling between source and sink.
If I understand what you write, I should use something like this :

$ pacmd load-module module-null-sink sink_name=MySink
$ pacmd load-module module-null-sink sink_name=MySink2
$ pacmd load-module module-loopback source=alsa_input.usb-0d8c_C-
Media_USB_Headphone_Set-00.mono-fallback sink=MySink2

And then start my two gstreamer pipelines :

$ gst-launch-1.0 pulsesrc device=MySink2.monitor ! audioconvert !
audioresample ! pulsesink device=MySink
$ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
raw,channels=2 ! audioconvert ! audioresample ! opusenc bitrate=256000
! oggmux ! shout2send ip=... port=... mount=... password=...

Is it correct ?


Yes, that's correct.



At this moment, I don't try to mesure latency between audio input and
output.
++

Jack




Le dimanche 13 février 2022 à 20:17 +0100, Georg Chini a écrit :

On 13.02.22 17:09, corbeille wrote:

Hey Georg,

I have updated my to raspios since last time : Debian GNU/Linux 11
(bullseye).
It comes with :
- pulseaudio 14.2
- GStreamer 1.18.4

Is it also too old ?
I was hoping to avoid installing pulseaudio from source.
If so, I will give it a try...
++

Jack

Well, 14.2 is at least not completely out of date. Nevertheless I
would try
current git. What I wonder about is that the problem only occurs with
a
second null sink. Are you sure about that? The two null sinks should
not
interact at all. Maybe with the second null sink the problem occurs
only
later?

I can understand that there is an issue, because the system time and
sound
card time are normally different. So if the source for example (from
a
system
time perspective) delivers samples at 48003 Hz while the samples are
played
with 48000 Hz you will have three samples left per second which pile
up
pretty fast. module-loopback has mechanisms to deal with the rate
difference
between source and sink. Maybe you can try to use a loopback from the
alsa
source to a null-sink and then use the monitor of that null sink in
your
first
gst-launch command instead of using the alsa source directly.

Do you see increasing latency before the sound gets choppy?


Le dimanche 13 février 2022 à 17:05 +0100, Georg Chini a écrit :

On 13.02.22 16:57, corbeille wrote:

Hello,

I did some additional tests.
And it seems the problem occurs when I have a second null sink.
With
only one null sink, I don't have any problem. Weird.

So here is an example of the configuration that causes the
problem
:

1st shell:
$ pacmd load-module module-null-sink sink_name=MySink
$ pacmd load-module module-null-sink sink_name=MySink2

2nd shell:
$ gst-launch-1.0 pulsesrc device="alsa_input.usb-0d8c_C-
Media_USB_Headphone_Set-00.analog-mono" ! audioconvert !
audioresample
! pulsesink device=MySink

3rd shell:
$ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
raw,channels=2 ! audioconvert ! audioresample ! opusenc !
oggmux !
shout2send ip=... port=... mount=... password=...

After 20 minutes, the sound becomes choppy and stop 4/5 minutes
after.

You can notice that I don't use the second null sink.

Is it a normal behavior ? If so, how can I do to achieve this
configuration on my RPi (by using multi null sink) :

gst_input1 => MySink => gst output1
gst_input2 => MySink2 => gst output2

without any trouble ?
Thanks.
++

Jack



Le vendredi 11 février 2022 à 21:33 +0100, corbeille a écrit :

Hello,

I am using pulseaudio (version 12.2) to "join" two audio
streams
created
with gstreamer (1.14.4) on a raspberry pi (Raspbian GNU/Linux
10
(buster)).

Here the real things :

In a first shell, i start with :
$ pacmd load-module module-null-sink sink_name=MySink

Then I use gstreamer to get the sound from my audio input (in
an
other
shell) :
$ gst-launch-1.0 pulsesrc
device="alsa_input.usb-0d8c_C-Media_USB_Headphone_Set-
00.analog-
mono"
!
audioconvert ! audioresample ! pulsesink device=MySink

and I send this sound on an icecast server (in an other
shell) :
$ gst-launch-1.0 pulsesrc device=MySink.monitor !
"audio/x-raw,channels=2" ! audioconvert ! audioresample !
opusenc
!
oggmux ! shout2send ip=... port=... mount=... password=...

Everything is fine, but after 10 minutes, I get in the 3rd
shell
($
gst-launch-1.0 pulsesrc device=MySink.monitor ! ...) a
sequence
of
messages like :

WARNING: from element
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Can't record audio fast enough
Additional debug info:
gstaudiobasesrc.c(849): gst_audio_base_src_create ():
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Dropped 10080 samples. This is most likely because downstream
can't
keep
up and is consuming samples too slowly.
WARNING: from element
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Can't record audio fast enough
Additional debug info:
gstaudiobasesrc.c(849): gst_audio_base_src_create ():
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Dropped 34560 samples. This is most likely because downstream
can't
kee

Re: [pulseaudio-discuss] Dropped xxx samples. This is most likely because downstream can't keep up and is consuming samples too slowly.

2022-02-13 Thread corbeille
I will try to use the loopback module since it performs adaptive
resampling between source and sink.
If I understand what you write, I should use something like this :

$ pacmd load-module module-null-sink sink_name=MySink
$ pacmd load-module module-null-sink sink_name=MySink2
$ pacmd load-module module-loopback source=alsa_input.usb-0d8c_C-
Media_USB_Headphone_Set-00.mono-fallback sink=MySink2

And then start my two gstreamer pipelines :

$ gst-launch-1.0 pulsesrc device=MySink2.monitor ! audioconvert !
audioresample ! pulsesink device=MySink
$ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
raw,channels=2 ! audioconvert ! audioresample ! opusenc bitrate=256000
! oggmux ! shout2send ip=... port=... mount=... password=...

Is it correct ?

At this moment, I don't try to mesure latency between audio input and
output.
++

Jack




Le dimanche 13 février 2022 à 20:17 +0100, Georg Chini a écrit :
> On 13.02.22 17:09, corbeille wrote:
> > Hey Georg,
> > 
> > I have updated my to raspios since last time : Debian GNU/Linux 11
> > (bullseye).
> > It comes with :
> > - pulseaudio 14.2
> > - GStreamer 1.18.4
> > 
> > Is it also too old ?
> > I was hoping to avoid installing pulseaudio from source.
> > If so, I will give it a try...
> > ++
> > 
> > Jack
> 
> Well, 14.2 is at least not completely out of date. Nevertheless I
> would try
> current git. What I wonder about is that the problem only occurs with
> a
> second null sink. Are you sure about that? The two null sinks should
> not
> interact at all. Maybe with the second null sink the problem occurs
> only
> later?
> 
> I can understand that there is an issue, because the system time and
> sound
> card time are normally different. So if the source for example (from
> a 
> system
> time perspective) delivers samples at 48003 Hz while the samples are
> played
> with 48000 Hz you will have three samples left per second which pile
> up
> pretty fast. module-loopback has mechanisms to deal with the rate
> difference
> between source and sink. Maybe you can try to use a loopback from the
> alsa
> source to a null-sink and then use the monitor of that null sink in
> your 
> first
> gst-launch command instead of using the alsa source directly.
> 
> Do you see increasing latency before the sound gets choppy?
> 
> > 
> > Le dimanche 13 février 2022 à 17:05 +0100, Georg Chini a écrit :
> > > On 13.02.22 16:57, corbeille wrote:
> > > > Hello,
> > > > 
> > > > I did some additional tests.
> > > > And it seems the problem occurs when I have a second null sink.
> > > > With
> > > > only one null sink, I don't have any problem. Weird.
> > > > 
> > > > So here is an example of the configuration that causes the
> > > > problem
> > > > :
> > > > 
> > > > 1st shell:
> > > > $ pacmd load-module module-null-sink sink_name=MySink
> > > > $ pacmd load-module module-null-sink sink_name=MySink2
> > > > 
> > > > 2nd shell:
> > > > $ gst-launch-1.0 pulsesrc device="alsa_input.usb-0d8c_C-
> > > > Media_USB_Headphone_Set-00.analog-mono" ! audioconvert !
> > > > audioresample
> > > > ! pulsesink device=MySink
> > > > 
> > > > 3rd shell:
> > > > $ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
> > > > raw,channels=2 ! audioconvert ! audioresample ! opusenc !
> > > > oggmux !
> > > > shout2send ip=... port=... mount=... password=...
> > > > 
> > > > After 20 minutes, the sound becomes choppy and stop 4/5 minutes
> > > > after.
> > > > 
> > > > You can notice that I don't use the second null sink.
> > > > 
> > > > Is it a normal behavior ? If so, how can I do to achieve this
> > > > configuration on my RPi (by using multi null sink) :
> > > > 
> > > > gst_input1 => MySink => gst output1
> > > > gst_input2 => MySink2 => gst output2
> > > > 
> > > > without any trouble ?
> > > > Thanks.
> > > > ++
> > > > 
> > > > Jack
> > > > 
> > > > 
> > > > 
> > > > Le vendredi 11 février 2022 à 21:33 +0100, corbeille a écrit :
> > > > > Hello,
> > > > > 
> > > > > I am using pulseaudio (version 12.2) to "join" two audio
> > > > > streams
> > > > > created
> > > > > with gstreamer (1.14.4) on a raspberry pi (Raspbian GNU/Linux
> > > > > 10
> > > > > (buster)).
> > > > > 
> > > > > Here the real things :
> > > > > 
> > > > > In a first shell, i start with :
> > > > > $ pacmd load-module module-null-sink sink_name=MySink
> > > > > 
> > > > > Then I use gstreamer to get the sound from my audio input (in
> > > > > an
> > > > > other
> > > > > shell) :
> > > > > $ gst-launch-1.0 pulsesrc
> > > > > device="alsa_input.usb-0d8c_C-Media_USB_Headphone_Set-
> > > > > 00.analog-
> > > > > mono"
> > > > > !
> > > > > audioconvert ! audioresample ! pulsesink device=MySink
> > > > > 
> > > > > and I send this sound on an icecast server (in an other
> > > > > shell) :
> > > > > $ gst-launch-1.0 pulsesrc device=MySink.monitor !
> > > > > "audio/x-raw,channels=2" ! audioconvert ! audioresample !
> > > > > opusenc
> > > > > !
> > > > > oggmux ! shout2send ip=... port=... mount=... password=...
> > > > > 
> > > 

Re: [pulseaudio-discuss] Dropped xxx samples. This is most likely because downstream can't keep up and is consuming samples too slowly.

2022-02-13 Thread Georg Chini

On 13.02.22 17:09, corbeille wrote:

Hey Georg,

I have updated my to raspios since last time : Debian GNU/Linux 11
(bullseye).
It comes with :
- pulseaudio 14.2
- GStreamer 1.18.4

Is it also too old ?
I was hoping to avoid installing pulseaudio from source.
If so, I will give it a try...
++

Jack


Well, 14.2 is at least not completely out of date. Nevertheless I would try
current git. What I wonder about is that the problem only occurs with a
second null sink. Are you sure about that? The two null sinks should not
interact at all. Maybe with the second null sink the problem occurs only
later?

I can understand that there is an issue, because the system time and sound
card time are normally different. So if the source for example (from a 
system

time perspective) delivers samples at 48003 Hz while the samples are played
with 48000 Hz you will have three samples left per second which pile up
pretty fast. module-loopback has mechanisms to deal with the rate difference
between source and sink. Maybe you can try to use a loopback from the alsa
source to a null-sink and then use the monitor of that null sink in your 
first

gst-launch command instead of using the alsa source directly.

Do you see increasing latency before the sound gets choppy?




Le dimanche 13 février 2022 à 17:05 +0100, Georg Chini a écrit :

On 13.02.22 16:57, corbeille wrote:

Hello,

I did some additional tests.
And it seems the problem occurs when I have a second null sink.
With
only one null sink, I don't have any problem. Weird.

So here is an example of the configuration that causes the problem
:

1st shell:
$ pacmd load-module module-null-sink sink_name=MySink
$ pacmd load-module module-null-sink sink_name=MySink2

2nd shell:
$ gst-launch-1.0 pulsesrc device="alsa_input.usb-0d8c_C-
Media_USB_Headphone_Set-00.analog-mono" ! audioconvert !
audioresample
! pulsesink device=MySink

3rd shell:
$ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
raw,channels=2 ! audioconvert ! audioresample ! opusenc ! oggmux !
shout2send ip=... port=... mount=... password=...

After 20 minutes, the sound becomes choppy and stop 4/5 minutes
after.

You can notice that I don't use the second null sink.

Is it a normal behavior ? If so, how can I do to achieve this
configuration on my RPi (by using multi null sink) :

gst_input1 => MySink => gst output1
gst_input2 => MySink2 => gst output2

without any trouble ?
Thanks.
++

Jack



Le vendredi 11 février 2022 à 21:33 +0100, corbeille a écrit :

Hello,

I am using pulseaudio (version 12.2) to "join" two audio streams
created
with gstreamer (1.14.4) on a raspberry pi (Raspbian GNU/Linux 10
(buster)).

Here the real things :

In a first shell, i start with :
$ pacmd load-module module-null-sink sink_name=MySink

Then I use gstreamer to get the sound from my audio input (in an
other
shell) :
$ gst-launch-1.0 pulsesrc
device="alsa_input.usb-0d8c_C-Media_USB_Headphone_Set-00.analog-
mono"
!
audioconvert ! audioresample ! pulsesink device=MySink

and I send this sound on an icecast server (in an other shell) :
$ gst-launch-1.0 pulsesrc device=MySink.monitor !
"audio/x-raw,channels=2" ! audioconvert ! audioresample ! opusenc
!
oggmux ! shout2send ip=... port=... mount=... password=...

Everything is fine, but after 10 minutes, I get in the 3rd shell
($
gst-launch-1.0 pulsesrc device=MySink.monitor ! ...) a sequence
of
messages like :

WARNING: from element
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Can't record audio fast enough
Additional debug info:
gstaudiobasesrc.c(849): gst_audio_base_src_create ():
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Dropped 10080 samples. This is most likely because downstream
can't
keep
up and is consuming samples too slowly.
WARNING: from element
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Can't record audio fast enough
Additional debug info:
gstaudiobasesrc.c(849): gst_audio_base_src_create ():
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Dropped 34560 samples. This is most likely because downstream
can't
keep
up and is consuming samples too slowly.
WARNING: from element
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Can't record audio fast enough
Additional debug info:
gstaudiobasesrc.c(849): gst_audio_base_src_create ():
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Dropped 48000 samples. This is most likely because downstream
can't
keep
up and is consuming samples too slowly.
...

The sound become glitchy and stop after 2 or 3 minutes.

According to the message, the stream after "pulsesrc
device=MySink.monitor" is too slow. But I don't understand why.

Do you know where is the problem in this setup and how to solve
it ?
Thanks !
++

Jack


Hello,

have you tried with a more recent version of pulseaudio? 12.2 is
pretty
old. You should use 15.0 or current git.

Regards
 Georg





Re: [pulseaudio-discuss] Dropped xxx samples. This is most likely because downstream can't keep up and is consuming samples too slowly.

2022-02-13 Thread Georg Chini

On 13.02.22 16:57, corbeille wrote:

Hello,

I did some additional tests.
And it seems the problem occurs when I have a second null sink. With
only one null sink, I don't have any problem. Weird.

So here is an example of the configuration that causes the problem :

1st shell:
$ pacmd load-module module-null-sink sink_name=MySink
$ pacmd load-module module-null-sink sink_name=MySink2

2nd shell:
$ gst-launch-1.0 pulsesrc device="alsa_input.usb-0d8c_C-
Media_USB_Headphone_Set-00.analog-mono" ! audioconvert ! audioresample
! pulsesink device=MySink

3rd shell:
$ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
raw,channels=2 ! audioconvert ! audioresample ! opusenc ! oggmux !
shout2send ip=... port=... mount=... password=...

After 20 minutes, the sound becomes choppy and stop 4/5 minutes after.

You can notice that I don't use the second null sink.

Is it a normal behavior ? If so, how can I do to achieve this
configuration on my RPi (by using multi null sink) :

gst_input1 => MySink => gst output1
gst_input2 => MySink2 => gst output2

without any trouble ?
Thanks.
++

Jack



Le vendredi 11 février 2022 à 21:33 +0100, corbeille a écrit :

Hello,

I am using pulseaudio (version 12.2) to "join" two audio streams
created
with gstreamer (1.14.4) on a raspberry pi (Raspbian GNU/Linux 10
(buster)).

Here the real things :

In a first shell, i start with :
$ pacmd load-module module-null-sink sink_name=MySink

Then I use gstreamer to get the sound from my audio input (in an
other
shell) :
$ gst-launch-1.0 pulsesrc
device="alsa_input.usb-0d8c_C-Media_USB_Headphone_Set-00.analog-mono"
!
audioconvert ! audioresample ! pulsesink device=MySink

and I send this sound on an icecast server (in an other shell) :
$ gst-launch-1.0 pulsesrc device=MySink.monitor !
"audio/x-raw,channels=2" ! audioconvert ! audioresample ! opusenc !
oggmux ! shout2send ip=... port=... mount=... password=...

Everything is fine, but after 10 minutes, I get in the 3rd shell ($
gst-launch-1.0 pulsesrc device=MySink.monitor ! ...) a sequence of
messages like :

WARNING: from element /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Can't record audio fast enough
Additional debug info:
gstaudiobasesrc.c(849): gst_audio_base_src_create ():
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Dropped 10080 samples. This is most likely because downstream can't
keep
up and is consuming samples too slowly.
WARNING: from element /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Can't record audio fast enough
Additional debug info:
gstaudiobasesrc.c(849): gst_audio_base_src_create ():
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Dropped 34560 samples. This is most likely because downstream can't
keep
up and is consuming samples too slowly.
WARNING: from element /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Can't record audio fast enough
Additional debug info:
gstaudiobasesrc.c(849): gst_audio_base_src_create ():
/GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
Dropped 48000 samples. This is most likely because downstream can't
keep
up and is consuming samples too slowly.
...

The sound become glitchy and stop after 2 or 3 minutes.

According to the message, the stream after "pulsesrc
device=MySink.monitor" is too slow. But I don't understand why.

Do you know where is the problem in this setup and how to solve it ?
Thanks !
++

Jack


Hello,

have you tried with a more recent version of pulseaudio? 12.2 is pretty
old. You should use 15.0 or current git.

Regards
   Georg



Re: [pulseaudio-discuss] Dropped xxx samples. This is most likely because downstream can't keep up and is consuming samples too slowly.

2022-02-13 Thread corbeille
Hey Georg,

I have updated my to raspios since last time : Debian GNU/Linux 11
(bullseye).
It comes with :
- pulseaudio 14.2
- GStreamer 1.18.4

Is it also too old ?
I was hoping to avoid installing pulseaudio from source.
If so, I will give it a try...
++

Jack



Le dimanche 13 février 2022 à 17:05 +0100, Georg Chini a écrit :
> On 13.02.22 16:57, corbeille wrote:
> > Hello,
> > 
> > I did some additional tests.
> > And it seems the problem occurs when I have a second null sink.
> > With
> > only one null sink, I don't have any problem. Weird.
> > 
> > So here is an example of the configuration that causes the problem
> > :
> > 
> > 1st shell:
> > $ pacmd load-module module-null-sink sink_name=MySink
> > $ pacmd load-module module-null-sink sink_name=MySink2
> > 
> > 2nd shell:
> > $ gst-launch-1.0 pulsesrc device="alsa_input.usb-0d8c_C-
> > Media_USB_Headphone_Set-00.analog-mono" ! audioconvert !
> > audioresample
> > ! pulsesink device=MySink
> > 
> > 3rd shell:
> > $ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
> > raw,channels=2 ! audioconvert ! audioresample ! opusenc ! oggmux !
> > shout2send ip=... port=... mount=... password=...
> > 
> > After 20 minutes, the sound becomes choppy and stop 4/5 minutes
> > after.
> > 
> > You can notice that I don't use the second null sink.
> > 
> > Is it a normal behavior ? If so, how can I do to achieve this
> > configuration on my RPi (by using multi null sink) :
> > 
> > gst_input1 => MySink => gst output1
> > gst_input2 => MySink2 => gst output2
> > 
> > without any trouble ?
> > Thanks.
> > ++
> > 
> > Jack
> > 
> > 
> > 
> > Le vendredi 11 février 2022 à 21:33 +0100, corbeille a écrit :
> > > Hello,
> > > 
> > > I am using pulseaudio (version 12.2) to "join" two audio streams
> > > created
> > > with gstreamer (1.14.4) on a raspberry pi (Raspbian GNU/Linux 10
> > > (buster)).
> > > 
> > > Here the real things :
> > > 
> > > In a first shell, i start with :
> > > $ pacmd load-module module-null-sink sink_name=MySink
> > > 
> > > Then I use gstreamer to get the sound from my audio input (in an
> > > other
> > > shell) :
> > > $ gst-launch-1.0 pulsesrc
> > > device="alsa_input.usb-0d8c_C-Media_USB_Headphone_Set-00.analog-
> > > mono"
> > > !
> > > audioconvert ! audioresample ! pulsesink device=MySink
> > > 
> > > and I send this sound on an icecast server (in an other shell) :
> > > $ gst-launch-1.0 pulsesrc device=MySink.monitor !
> > > "audio/x-raw,channels=2" ! audioconvert ! audioresample ! opusenc
> > > !
> > > oggmux ! shout2send ip=... port=... mount=... password=...
> > > 
> > > Everything is fine, but after 10 minutes, I get in the 3rd shell
> > > ($
> > > gst-launch-1.0 pulsesrc device=MySink.monitor ! ...) a sequence
> > > of
> > > messages like :
> > > 
> > > WARNING: from element
> > > /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> > > Can't record audio fast enough
> > > Additional debug info:
> > > gstaudiobasesrc.c(849): gst_audio_base_src_create ():
> > > /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> > > Dropped 10080 samples. This is most likely because downstream
> > > can't
> > > keep
> > > up and is consuming samples too slowly.
> > > WARNING: from element
> > > /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> > > Can't record audio fast enough
> > > Additional debug info:
> > > gstaudiobasesrc.c(849): gst_audio_base_src_create ():
> > > /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> > > Dropped 34560 samples. This is most likely because downstream
> > > can't
> > > keep
> > > up and is consuming samples too slowly.
> > > WARNING: from element
> > > /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> > > Can't record audio fast enough
> > > Additional debug info:
> > > gstaudiobasesrc.c(849): gst_audio_base_src_create ():
> > > /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> > > Dropped 48000 samples. This is most likely because downstream
> > > can't
> > > keep
> > > up and is consuming samples too slowly.
> > > ...
> > > 
> > > The sound become glitchy and stop after 2 or 3 minutes.
> > > 
> > > According to the message, the stream after "pulsesrc
> > > device=MySink.monitor" is too slow. But I don't understand why.
> > > 
> > > Do you know where is the problem in this setup and how to solve
> > > it ?
> > > Thanks !
> > > ++
> > > 
> > > Jack
> > > 
> Hello,
> 
> have you tried with a more recent version of pulseaudio? 12.2 is
> pretty
> old. You should use 15.0 or current git.
> 
> Regards
> Georg
> 



Re: [pulseaudio-discuss] Dropped xxx samples. This is most likely because downstream can't keep up and is consuming samples too slowly.

2022-02-13 Thread corbeille
Hello,

I did some additional tests.
And it seems the problem occurs when I have a second null sink. With
only one null sink, I don't have any problem. Weird.

So here is an example of the configuration that causes the problem :

1st shell:
$ pacmd load-module module-null-sink sink_name=MySink
$ pacmd load-module module-null-sink sink_name=MySink2

2nd shell:
$ gst-launch-1.0 pulsesrc device="alsa_input.usb-0d8c_C-
Media_USB_Headphone_Set-00.analog-mono" ! audioconvert ! audioresample
! pulsesink device=MySink

3rd shell:
$ gst-launch-1.0 pulsesrc device=MySink.monitor ! audio/x-
raw,channels=2 ! audioconvert ! audioresample ! opusenc ! oggmux !
shout2send ip=... port=... mount=... password=...

After 20 minutes, the sound becomes choppy and stop 4/5 minutes after.

You can notice that I don't use the second null sink.

Is it a normal behavior ? If so, how can I do to achieve this
configuration on my RPi (by using multi null sink) :

gst_input1 => MySink => gst output1
gst_input2 => MySink2 => gst output2

without any trouble ?
Thanks.
++

Jack



Le vendredi 11 février 2022 à 21:33 +0100, corbeille a écrit :
> Hello,
> 
> I am using pulseaudio (version 12.2) to "join" two audio streams
> created 
> with gstreamer (1.14.4) on a raspberry pi (Raspbian GNU/Linux 10 
> (buster)).
> 
> Here the real things :
> 
> In a first shell, i start with :
> $ pacmd load-module module-null-sink sink_name=MySink
> 
> Then I use gstreamer to get the sound from my audio input (in an
> other 
> shell) :
> $ gst-launch-1.0 pulsesrc 
> device="alsa_input.usb-0d8c_C-Media_USB_Headphone_Set-00.analog-mono" 
> ! 
> audioconvert ! audioresample ! pulsesink device=MySink
> 
> and I send this sound on an icecast server (in an other shell) :
> $ gst-launch-1.0 pulsesrc device=MySink.monitor ! 
> "audio/x-raw,channels=2" ! audioconvert ! audioresample ! opusenc ! 
> oggmux ! shout2send ip=... port=... mount=... password=...
> 
> Everything is fine, but after 10 minutes, I get in the 3rd shell ($ 
> gst-launch-1.0 pulsesrc device=MySink.monitor ! ...) a sequence of 
> messages like :
> 
> WARNING: from element /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0: 
> Can't record audio fast enough
> Additional debug info:
> gstaudiobasesrc.c(849): gst_audio_base_src_create (): 
> /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> Dropped 10080 samples. This is most likely because downstream can't
> keep 
> up and is consuming samples too slowly.
> WARNING: from element /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0: 
> Can't record audio fast enough
> Additional debug info:
> gstaudiobasesrc.c(849): gst_audio_base_src_create (): 
> /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> Dropped 34560 samples. This is most likely because downstream can't
> keep 
> up and is consuming samples too slowly.
> WARNING: from element /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0: 
> Can't record audio fast enough
> Additional debug info:
> gstaudiobasesrc.c(849): gst_audio_base_src_create (): 
> /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
> Dropped 48000 samples. This is most likely because downstream can't
> keep 
> up and is consuming samples too slowly.
> ...
> 
> The sound become glitchy and stop after 2 or 3 minutes.
> 
> According to the message, the stream after "pulsesrc 
> device=MySink.monitor" is too slow. But I don't understand why.
> 
> Do you know where is the problem in this setup and how to solve it ?
> Thanks !
> ++
> 
> Jack
>