Here is a slightly better one than the gist I posted last night. Note the 
"update_max_rewind_cb not called!" line. Seems that if a sink is unlinked, 
sink.c sets its max_rewind but; because there is no sink input, it does not 
call the callback.

Is it possible to have an update_max_rewind callback for the sink as well as 
the sink_input? That would seem to make things more consistent and prevent 
different threads from messing with a sink member value.

N: [lt-pulseaudio] daemon-conf.c: Detected that we are run from the build 
tree, 
fixing search path.
E: [lt-pulseaudio] main.c: Failed to kill daemon: No such file or directory
E: [pulseaudio] main.c: Failed to kill daemon: No such process
N: [lt-pulseaudio] daemon-conf.c: Detected that we are run from the build 
tree, 
fixing search path.
W: [lt-pulseaudio] pid.c: Stale PID file, overwriting.
W: [lt-pulseaudio] authkey.c: Failed to open cookie file '/home/justin/.config/p
ulse/cookie': No such file or directory
W: [lt-pulseaudio] authkey.c: Failed to load authorization key 
'/home/justin/.co
nfig/pulse/cookie': No such file or directory
JZ: pulsecore/sink.c[338][pa_sink_new]
        sink = null
        s->thread_info.max_rewind = 0
JZ: pulsecore/sink.c[405][pa_sink_new]
        sink = null
        s->thread_info.max_rewind = 0
JZ: pulsecore/sink.c[3075][pa_sink_set_max_rewind]
        sink = null
        s->thread_info.max_rewind = 0
        s->new max_rewind         = 1058400
JZ: pulsecore/sink.c[3044][pa_sink_set_max_rewind_within_thread]
        sink = null
        s->thread_info.max_rewind = 0
        s->new max_rewind         = 1058400
JZ: [pulsecore/sink.c[3058][pa_sink_set_max_rewind_within_thread] 
pa_sink_input_
update_max_rewind not called!
        s->thread_info.state = -2JZ: pulsecore/sink.c[338][pa_sink_new]
        sink = null.lfe_lp
        s->thread_info.max_rewind = 0
JZ: pulsecore/sink.c[405][pa_sink_new]
        sink = null.lfe_lp
        s->thread_info.max_rewind = 0
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = sink input render_memblockq [0]
        nbytes = 0
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = module-lfe-lp memblockq
        nbytes = 0
JZ: pulsecore/sink.c[3044][pa_sink_set_max_rewind_within_thread]
        sink = null.lfe_lp
        s->thread_info.max_rewind = 24576
        s->new max_rewind         = 2116800
JZ: [pulsecore/sink.c[3053][pa_sink_set_max_rewind_within_thread] 
pa_sink_input_
update_max_rewind was called.
        s->thread_info.state = 1JZ: pulsecore/sink.c[2957]
        pa_sink_request_rewind
        sink = null
        s->thread_info.max_rewind = 1058400
        s->req rewind bytes       = 1058400
JZ: pulsecore/sink.c[2462]
        pa_sink_process_msg
        sink = null
        s->thread_info.max_rewind = 1058400
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = sink input render_memblockq [0]
        nbytes = 1058400
JZ: pulsecore/sink-input.c[1129]
        pa_sink_input_update_max_rewind
        nbytes=1058400
JZ: sink_input_update_max_rewind_cb[698]
         called without changing size.
        max_rewind = 529200 samples
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = module-lfe-lp memblockq
        nbytes = 2116800
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = source output delay_memblockq
        nbytes = 0
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = native protocol record stream memblockq [0]
        nbytes = 0
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = client side record memblockq
        nbytes = 0
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = sink input render_memblockq [1]
        nbytes = 0
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = native protocol playback stream memblockq [1]
        nbytes = 0
JZ: pulsecore/sink.c[3044][pa_sink_set_max_rewind_within_thread]
        sink = null
        s->thread_info.max_rewind = 1058400
        s->new max_rewind         = 1037232
JZ: pulsecore/memblockq.c[925][pa_memblockq_set_maxrewind]
        bq = sink input render_memblockq [0]
        nbytes = 1037232
JZ: pulsecore/sink-input.c[1129]
        pa_sink_input_update_max_rewind
        nbytes=1037232
JZ: modules/module-lfe-lp.c[766] all in samples
        cur max_rewind =       529200
        req max_rewind =       518616
        shrinkage =             10584
        idx =                    4032
        length =                 6144
JZ: modules/module-lfe-lp.c[771]
Connection failure: Connection terminated
Connection failure: Connection terminated
Stream error: Connection terminated
Stream error: Connection terminated
Segmentation fault (core dumped)
_______________________________________________
pulseaudio-discuss mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to