small cleanups

This commit is contained in:
Wim Taymans 2018-07-13 11:43:06 +02:00
parent cc542935ea
commit e5807cd467
4 changed files with 16 additions and 21 deletions

View file

@ -65,10 +65,9 @@ static inline int spa_graph_link_trigger(struct spa_graph_link *link)
spa_debug("link %p: state %p: pending %d required %d", link, state,
state->pending, state->required);
if (state->pending != 0) {
if (__atomic_sub_fetch(&state->pending, 1, __ATOMIC_SEQ_CST) == 0)
spa_graph_link_signal(link);
}
if (__atomic_sub_fetch(&state->pending, 1, __ATOMIC_SEQ_CST) == 0)
spa_graph_link_signal(link);
return state->status;
}

View file

@ -36,8 +36,6 @@
#include "pipewire/main-loop.h"
#include "pipewire/work-queue.h"
#define spa_debug pw_log_trace
#include <spa/graph/graph-scheduler2.h>
/** \cond */
@ -616,11 +614,13 @@ static void node_event(void *data, struct spa_event *event)
spa_hook_list_call(&node->listener_list, struct pw_node_events, event, event);
}
void pw_node_process(struct pw_node *node, int status)
static void node_process(void *data, int status)
{
struct pw_node *node = data;
struct impl *impl = SPA_CONTAINER_OF(node, struct impl, this);
pw_log_trace("node %p: process driver:%d exported:%d", node, node->driver, node->exported);
pw_log_trace("node %p: process driver:%d exported:%d", node,
node->driver, node->exported);
spa_hook_list_call(&node->listener_list, struct pw_node_events, process);
@ -645,12 +645,6 @@ void pw_node_process(struct pw_node *node, int status)
spa_graph_node_trigger(&node->rt.node);
}
static void node_process(void *data, int status)
{
struct pw_node *node = data;
pw_node_process(node, status);
}
static void node_reuse_buffer(void *data, uint32_t port_id, uint32_t buffer_id)
{
struct pw_node *node = data;

View file

@ -624,8 +624,6 @@ int pw_node_initialized(struct pw_node *node);
int pw_node_set_driver(struct pw_node *node, struct pw_node *driver);
void pw_node_process(struct pw_node *node, int status);
/** Prepare a link \memberof pw_link
* Starts the negotiation of formats and buffers on \a link */
int pw_link_prepare(struct pw_link *link);

View file

@ -189,8 +189,6 @@ static inline int push_queue(struct stream *stream, struct queue *queue, struct
queue->ids[index & MASK_BUFFERS] = buffer->id;
spa_ringbuffer_write_update(&queue->ring, index + 1);
pw_log_trace("stream %p: queued buffer %d", stream, buffer->id);
return 0;
}
@ -605,8 +603,10 @@ static int impl_port_use_buffers(struct spa_node *node, enum spa_direction direc
b->id = i;
b->this.buffer = buffers[i];
if (impl->direction == SPA_DIRECTION_OUTPUT)
if (impl->direction == SPA_DIRECTION_OUTPUT) {
pw_log_trace("stream %p: recycle buffer %d", stream, b->id);
push_queue(impl, &impl->dequeued, b);
}
spa_hook_list_call(&stream->listener_list, struct pw_stream_events,
add_buffer, &b->this);
@ -653,7 +653,9 @@ static int impl_node_process_input(struct spa_node *node)
done:
/* pop buffer to recycle */
b = pop_queue(impl, &impl->queued);
if ((b = pop_queue(impl, &impl->queued))) {
pw_log_trace("stream %p: recycle buffer %d", stream, b->id);
}
io->buffer_id = b ? b->id : SPA_ID_INVALID;
io->status = SPA_STATUS_NEED_BUFFER;
@ -676,8 +678,10 @@ static int impl_node_process_output(struct spa_node *node)
res = 0;
if (io->status != SPA_STATUS_HAVE_BUFFER) {
/* recycle old buffer */
if ((b = get_buffer(stream, io->buffer_id)) != NULL)
if ((b = get_buffer(stream, io->buffer_id)) != NULL) {
pw_log_trace("stream %p: recycle buffer %d", stream, b->id);
push_queue(impl, &impl->dequeued, b);
}
/* pop new buffer */
if ((b = pop_queue(impl, &impl->queued)) != NULL) {