1*d9f75844SAndroid Build Coastguard Worker// Copyright 2018 The WebRTC project authors. All rights reserved. 2*d9f75844SAndroid Build Coastguard Worker// Use of this source code is governed by a BSD-style license that can be 3*d9f75844SAndroid Build Coastguard Worker// found in the LICENSE file. 4*d9f75844SAndroid Build Coastguard Worker 5*d9f75844SAndroid Build Coastguard Worker//------------------------------------------------ 6*d9f75844SAndroid Build Coastguard Worker// Functions from PipeWire used in capturer code. 7*d9f75844SAndroid Build Coastguard Worker//------------------------------------------------ 8*d9f75844SAndroid Build Coastguard Worker 9*d9f75844SAndroid Build Coastguard Worker// core.h 10*d9f75844SAndroid Build Coastguard Workerint pw_core_disconnect(pw_core *core); 11*d9f75844SAndroid Build Coastguard Worker 12*d9f75844SAndroid Build Coastguard Worker// loop.h 13*d9f75844SAndroid Build Coastguard Workervoid pw_loop_destroy(pw_loop *loop); 14*d9f75844SAndroid Build Coastguard Workerpw_loop * pw_loop_new(const spa_dict *props); 15*d9f75844SAndroid Build Coastguard Worker 16*d9f75844SAndroid Build Coastguard Worker 17*d9f75844SAndroid Build Coastguard Worker// pipewire.h 18*d9f75844SAndroid Build Coastguard Workervoid pw_init(int *argc, char **argv[]); 19*d9f75844SAndroid Build Coastguard Workerconst char* pw_get_library_version(); 20*d9f75844SAndroid Build Coastguard Worker 21*d9f75844SAndroid Build Coastguard Worker// properties.h 22*d9f75844SAndroid Build Coastguard Workerpw_properties * pw_properties_new_string(const char *args); 23*d9f75844SAndroid Build Coastguard Worker 24*d9f75844SAndroid Build Coastguard Worker// stream.h 25*d9f75844SAndroid Build Coastguard Workervoid pw_stream_add_listener(pw_stream *stream, spa_hook *listener, const pw_stream_events *events, void *data); 26*d9f75844SAndroid Build Coastguard Workerint pw_stream_connect(pw_stream *stream, enum pw_direction direction, uint32_t target_id, enum pw_stream_flags flags, const spa_pod **params, uint32_t n_params); 27*d9f75844SAndroid Build Coastguard Workerint pw_stream_disconnect(pw_stream *stream); 28*d9f75844SAndroid Build Coastguard Workerpw_buffer *pw_stream_dequeue_buffer(pw_stream *stream); 29*d9f75844SAndroid Build Coastguard Workervoid pw_stream_destroy(pw_stream *stream); 30*d9f75844SAndroid Build Coastguard Workerpw_stream * pw_stream_new(pw_core *core, const char *name, pw_properties *props); 31*d9f75844SAndroid Build Coastguard Workerint pw_stream_queue_buffer(pw_stream *stream, pw_buffer *buffer); 32*d9f75844SAndroid Build Coastguard Workerint pw_stream_set_active(pw_stream *stream, bool active); 33*d9f75844SAndroid Build Coastguard Workerint pw_stream_update_params(pw_stream *stream, const spa_pod **params, uint32_t n_params); 34*d9f75844SAndroid Build Coastguard Workeruint32_t pw_stream_get_node_id(pw_stream *stream); 35*d9f75844SAndroid Build Coastguard Workerpw_stream_state pw_stream_get_state(pw_stream *stream, const char **error); 36*d9f75844SAndroid Build Coastguard Worker 37*d9f75844SAndroid Build Coastguard Worker// thread-loop.h 38*d9f75844SAndroid Build Coastguard Workervoid pw_thread_loop_destroy(pw_thread_loop *loop); 39*d9f75844SAndroid Build Coastguard Workerpw_thread_loop * pw_thread_loop_new(const char *name, const spa_dict *props); 40*d9f75844SAndroid Build Coastguard Workerint pw_thread_loop_start(pw_thread_loop *loop); 41*d9f75844SAndroid Build Coastguard Workervoid pw_thread_loop_stop(pw_thread_loop *loop); 42*d9f75844SAndroid Build Coastguard Workervoid pw_thread_loop_lock(pw_thread_loop *loop); 43*d9f75844SAndroid Build Coastguard Workervoid pw_thread_loop_unlock(pw_thread_loop *loop); 44*d9f75844SAndroid Build Coastguard Workerpw_loop * pw_thread_loop_get_loop(pw_thread_loop *loop); 45*d9f75844SAndroid Build Coastguard Workervoid pw_thread_loop_signal(pw_thread_loop *loop, bool wait_for_accept); 46*d9f75844SAndroid Build Coastguard Workervoid pw_thread_loop_wait(pw_thread_loop *loop); 47*d9f75844SAndroid Build Coastguard Worker 48*d9f75844SAndroid Build Coastguard Worker// context.h 49*d9f75844SAndroid Build Coastguard Workervoid pw_context_destroy(pw_context *context); 50*d9f75844SAndroid Build Coastguard Workerpw_context *pw_context_new(pw_loop *main_loop, pw_properties *props, size_t user_data_size); 51*d9f75844SAndroid Build Coastguard Workerpw_core * pw_context_connect(pw_context *context, pw_properties *properties, size_t user_data_size); 52*d9f75844SAndroid Build Coastguard Workerpw_core * pw_context_connect_fd(pw_context *context, int fd, pw_properties *properties, size_t user_data_size); 53