Lines Matching defs:output

93 struct output {
101 * carry audio data from the sink thread to the output thread. The POST
103 * processed not only in the output thread mainloop, but also inside the
112 * thread to the output thread (currently "all other messages" means just
116 /* Message queue from the output thread to the sink thread. */
141 PA_LLIST_FIELDS(struct output);
174 PA_LLIST_HEAD(struct output, active_outputs); /* managed in IO thread context */
213 static void output_disable(struct output *o);
214 static void output_enable(struct output *o);
215 static void output_free(struct output *o);
216 static int output_create_sink_input(struct output *o);
224 struct output *o,
249 struct output *o;
259 struct output *o_max;
318 /* Debug output */
322 pa_log_warn("[%s] Total latency of output is very high (%0.2fms), most likely the audio timing in one of your drivers is broken.", o->sink->name, (double) o->total_latency / PA_USEC_PER_MSEC);
327 /* If there is no valid output there is nothing to do. */
375 struct output *o;
484 static void render_memblock(struct userdata *u, struct output *o, size_t length) {
488 /* We are run by the sink thread, on behalf of an output (o). The
489 * output is waiting for us, hence it is safe to access its
496 /* Maybe there's some data in the requesting output's queue
506 struct output *j;
523 /* And place it directly into the requesting output's queue */
530 static void request_memblock(struct output *o, size_t length) {
552 struct output *o;
577 struct output *o;
587 struct output *o;
597 struct output *o;
612 struct output *o;
641 struct output *o;
685 /* We register the output. That means that the sink will start to pass data to
686 * this output. */
692 struct output *o;
697 /* We unregister the output. That means that the sink doesn't
698 * pass any further data to this output */
720 struct output *o;
732 struct output *o = PA_SINK_INPUT(obj)->userdata;
790 struct output *o;
804 struct output *o;
896 struct output *o;
921 struct output *o;
958 static void output_add_within_thread(struct output *o) {
962 PA_LLIST_PREPEND(struct output, o->userdata->thread_info.active_outputs, o);
984 static void output_remove_within_thread(struct output *o) {
988 PA_LLIST_REMOVE(struct output, o->userdata->thread_info.active_outputs, o);
1009 struct output *o;
1067 render_memblock(u, (struct output*) data, (size_t) offset);
1122 struct output *o;
1131 pa_sink_set_description(u->sink, "Simultaneous output");
1135 t = pa_xstrdup("Simultaneous output to");
1154 static int output_create_sink_input(struct output *o) {
1168 pa_proplist_setf(data.proplist, PA_PROP_MEDIA_NAME, "Simultaneous output on %s", pa_strnull(pa_proplist_gets(o->sink->proplist, PA_PROP_DEVICE_DESCRIPTION)));
1204 static struct output *output_new(struct userdata *u, pa_sink *sink) {
1205 struct output *o;
1211 o = pa_xnew0(struct output, 1);
1234 "module-combine-sink output memblockq",
1256 static void output_free(struct output *o) {
1293 static void output_enable(struct output *o) {
1302 * for this output don't cause this loop by setting a flag here */
1318 static void output_disable(struct output *o) {
1340 static void output_verify(struct output *o) {
1373 struct output *o;
1407 static struct output* find_output(struct userdata *u, pa_sink *s) {
1408 struct output *o;
1426 struct output *o;
1448 struct output *o;
1471 struct output *o;