mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-03-21 05:33:49 -04:00
pipewire-jack: call timebase_callback with valid buffer_frames
Check if we have a valid buffer_frames before we call the timebase callback. Also set the buffer_frames to the invalid value of -1 in jack_activate instead of 0. -1 is the invalid value we check everywhere else.
This commit is contained in:
parent
41d8ce7fff
commit
244c3b597f
1 changed files with 4 additions and 4 deletions
|
|
@ -2172,7 +2172,7 @@ static inline void cycle_signal(struct client *c, int status)
|
|||
struct pw_node_activation *driver = c->rt.driver_activation;
|
||||
struct pw_node_activation *activation = c->activation;
|
||||
|
||||
if (SPA_LIKELY(status == 0)) {
|
||||
if (SPA_LIKELY(status == 0 && c->buffer_frames != (uint32_t)-1)) {
|
||||
if (c->timebase_callback && driver && driver->segment_owner[0] == c->node_id) {
|
||||
if (activation->pending_new_pos ||
|
||||
c->jack_state == JackTransportRolling ||
|
||||
|
|
@ -4875,7 +4875,7 @@ int jack_activate (jack_client_t *client)
|
|||
freeze_callbacks(c);
|
||||
|
||||
/* reemit buffer_frames */
|
||||
c->buffer_frames = 0;
|
||||
c->buffer_frames = (uint32_t)-1;
|
||||
|
||||
pw_data_loop_start(c->loop);
|
||||
c->active = true;
|
||||
|
|
@ -5456,7 +5456,7 @@ SPA_EXPORT
|
|||
jack_nframes_t jack_get_buffer_size (jack_client_t *client)
|
||||
{
|
||||
struct client *c = (struct client *) client;
|
||||
jack_nframes_t res = -1;
|
||||
uint32_t res = -1;
|
||||
|
||||
return_val_if_fail(c != NULL, 0);
|
||||
|
||||
|
|
@ -5473,7 +5473,7 @@ jack_nframes_t jack_get_buffer_size (jack_client_t *client)
|
|||
}
|
||||
c->buffer_frames = res;
|
||||
pw_log_debug("buffer_frames: %u", res);
|
||||
return res;
|
||||
return (jack_nframes_t)res;
|
||||
}
|
||||
|
||||
SPA_EXPORT
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue