[pulseaudio-commits] [SCM] PulseAudio Sound Server branch, master, updated. 0fb402c8d47e96b9514ee0a35b49c9ae6aa83473

Lennart Poettering gitmailer-noreply at 0pointer.de
Fri Jun 27 12:58:55 PDT 2008


This is an automated email from the git hooks/post-receive script. It was
generated because of a push to the "PulseAudio Sound Server" repository.

The master branch has been updated
      from  913bbd4489799b057a5b47f19843d2d83e1003c1 (commit)

- Log -----------------------------------------------------------------
0fb402c... simplify handling of rewrite requests
89620d3... handle rewind requests
f0e5cd1... handle rewind requests
-----------------------------------------------------------------------

Summary of changes:
 src/modules/module-combine.c   |    4 ++++
 src/modules/module-oss.c       |    4 ++++
 src/modules/module-pipe-sink.c |   17 +++--------------
 3 files changed, 11 insertions(+), 14 deletions(-)

-----------------------------------------------------------------------

commit f0e5cd1613ca5dce13e475dade522830743b0919
Author: Lennart Poettering <lennart at poettering.net>
Date:   Fri Jun 27 21:57:44 2008 +0200

    handle rewind requests

diff --git a/src/modules/module-combine.c b/src/modules/module-combine.c
index 7d8e140..0a0b8d2 100644
--- a/src/modules/module-combine.c
+++ b/src/modules/module-combine.c
@@ -286,6 +286,10 @@ static void thread_func(void *userdata) {
     for (;;) {
         int ret;
 
+        if (PA_SINK_IS_OPENED(u->sink->thread_info.state))
+            if (u->sink->thread_info.rewind_requested)
+                pa_sink_process_rewind(u->sink, 0);
+
         /* If no outputs are connected, render some data and drop it immediately. */
         if (PA_SINK_IS_OPENED(u->sink->thread_info.state) && !u->thread_info.active_outputs) {
             pa_usec_t now;

commit 89620d3f00c56bf3e0da54d3893751248a4a6568
Author: Lennart Poettering <lennart at poettering.net>
Date:   Fri Jun 27 21:57:54 2008 +0200

    handle rewind requests

diff --git a/src/modules/module-oss.c b/src/modules/module-oss.c
index 76b13ec..15b1e95 100644
--- a/src/modules/module-oss.c
+++ b/src/modules/module-oss.c
@@ -876,6 +876,10 @@ static void thread_func(void *userdata) {
 
 /*        pa_log("loop");    */
 
+        if (PA_SINK_IS_OPENED(u->sink->thread_info.state))
+            if (u->sink->thread_info.rewind_requested)
+                pa_sink_process_rewind(u->sink, 0);
+
         /* Render some data and write it to the dsp */
 
         if (u->sink && PA_SINK_IS_OPENED(u->sink->thread_info.state) && ((revents & POLLOUT) || u->use_mmap || u->use_getospace)) {

commit 0fb402c8d47e96b9514ee0a35b49c9ae6aa83473
Author: Lennart Poettering <lennart at poettering.net>
Date:   Fri Jun 27 21:58:39 2008 +0200

    simplify handling of rewrite requests

diff --git a/src/modules/module-pipe-sink.c b/src/modules/module-pipe-sink.c
index 0999935..f389cd0 100644
--- a/src/modules/module-pipe-sink.c
+++ b/src/modules/module-pipe-sink.c
@@ -116,13 +116,6 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
     return pa_sink_process_msg(o, code, data, offset, chunk);
 }
 
-static void process_rewind(struct userdata *u) {
-    pa_assert(u);
-
-    pa_log_debug("Rewind requested but not supported by pipe sink. Ignoring.");
-    u->sink->thread_info.rewind_nbytes = 0;
-}
-
 static int process_render(struct userdata *u) {
     pa_assert(u);
 
@@ -182,14 +175,10 @@ static void thread_func(void *userdata) {
         pollfd = pa_rtpoll_item_get_pollfd(u->rtpoll_item, NULL);
 
         /* Render some data and write it to the fifo */
-        if (u->sink->thread_info.state == PA_SINK_RUNNING) {
+        if (PA_SINK_IS_OPENED(u->sink->thread_info.state)) {
 
-            if (u->sink->thread_info.rewind_requested) {
-                if (u->sink->thread_info.rewind_nbytes > 0)
-                    process_rewind(u);
-                else
-                    pa_sink_process_rewind(u->sink, 0);
-            }
+            if (u->sink->thread_info.rewind_requested)
+                pa_sink_process_rewind(u->sink, 0);
 
             if (pollfd->revents) {
                 if (process_render(u) < 0)

-- 
hooks/post-receive
PulseAudio Sound Server



More information about the pulseaudio-commits mailing list