From f817d55049bec14500e10427d7e3d544fa14e8d8 Mon Sep 17 00:00:00 2001 From: Lukasz Marek Date: Wed, 30 Apr 2014 00:25:13 +0200 Subject: [PATCH] lavd/pulse_audio_enc: signal that buffer is still writable after write Signed-off-by: Lukasz Marek --- libavdevice/pulse_audio_enc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavdevice/pulse_audio_enc.c b/libavdevice/pulse_audio_enc.c index b8c77db85c..01b9785fd3 100644 --- a/libavdevice/pulse_audio_enc.c +++ b/libavdevice/pulse_audio_enc.c @@ -624,6 +624,7 @@ static int pulse_write_packet(AVFormatContext *h, AVPacket *pkt) { PulseData *s = h->priv_data; int ret; + int64_t writable_size; if (!pkt) return pulse_flash_stream(s); @@ -658,6 +659,9 @@ static int pulse_write_packet(AVFormatContext *h, AVPacket *pkt) av_log(s, AV_LOG_ERROR, "pa_stream_write failed: %s\n", pa_strerror(ret)); goto fail; } + if ((writable_size = pa_stream_writable_size(s->stream)) >= s->minreq) + avdevice_dev_to_app_control_message(h, AV_DEV_TO_APP_BUFFER_WRITABLE, &writable_size, sizeof(writable_size)); + pa_threaded_mainloop_unlock(s->mainloop); return 0;