Commit graph

102 commits

Author SHA1 Message Date
Lennart Poettering
a81209f147 validity checks for pa_context_is_pending()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@679 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-10 20:38:58 +00:00
Lennart Poettering
137f0a7140 * implement PA_STREAM_AUTO_TIMING_UPDATE
* accept PA_STREAM_NOT_MONOTONOUS properly


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@673 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-10 17:39:24 +00:00
Lennart Poettering
190a869132 add new PA_STREAM_AUTO_TIMING_UPDATE
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@672 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-10 17:38:46 +00:00
Lennart Poettering
f4119adc8e unbreak last commit from ossman
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@669 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-10 16:40:29 +00:00
Pierre Ossman
0d200ee743 Use the modern Ki/Mi/Gi prefixes to clarify that 1024 is the base.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@668 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-09 19:32:16 +00:00
Pierre Ossman
a6ce5c4b1d Big documentation update. Describe the client API in a more tutorial like
manner.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@667 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-09 19:31:09 +00:00
Lennart Poettering
f6d95b7291 add new introspection data field for sinks/sources: a flags field which specifies whether the sink/source supports hw volume control and latency querying
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@661 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-07 23:02:48 +00:00
Lennart Poettering
fdb48b4340 * enable write_index correction and timing interpolation only for playback (and record) streams
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@656 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-07 21:55:55 +00:00
Lennart Poettering
b8a729a00f * update docs for reworked latency API
* rename pa_latency_info to pa_timing_info, since that describes better what it is. Most people will only use pa_stream_get_time() anyway


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@651 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-07 01:29:33 +00:00
Lennart Poettering
c0592bb27c update simple API for new latency API
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@650 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-07 00:25:19 +00:00
Lennart Poettering
920f045380 rework latency querying API (this needs more testing)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@648 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-07 00:24:48 +00:00
Pierre Ossman
dc5b2c58dd We no longer guarantee that an operation object is returned. Need to tweak
some parts to handle this.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@638 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-03-11 21:26:40 +00:00
Pierre Ossman
528d15095d The extra stream ref actually did some good. Re-add it, but with some more
symmetry, assertions and comments.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@635 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-03-07 18:29:27 +00:00
Pierre Ossman
b67963cec2 We've already set an initial reference count of 1 so don't count it up again.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@634 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-03-07 16:04:32 +00:00
Pierre Ossman
bc97b29447 Negotiate protocol version between server and client. Will allow smoother
protocol modifications in the future.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@621 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-03-02 21:56:15 +00:00
Pierre Ossman
fbaaf5acb7 The tag argument is no longer unused.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@620 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-03-02 16:40:23 +00:00
Pierre Ossman
50268e0dd0 Fix warnings on 64-bit systems.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@619 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-03-02 16:37:35 +00:00
Pierre Ossman
6cc11fbfc3 Handle the new latency protocol. This is just a quick fix and does not
handle the new memblockq system.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@618 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-03-02 16:32:36 +00:00
Lennart Poettering
3f264b2c4a add support for authentication using SCM_CREDENTIALS
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@596 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-24 15:12:42 +00:00
Pierre Ossman
65736a2651 Some new additions were mislabeled as '\since 0.9'.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@588 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-23 12:06:00 +00:00
Pierre Ossman
04c8926739 Mute switch for sinks and sources. This is independent of the volume
setting (similar to ALSA).


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@587 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-23 12:04:31 +00:00
Lennart Poettering
4a64b0d116 change pa_log() and friends to not require a trailing \n on all logged strings
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@574 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-23 02:27:19 +00:00
Lennart Poettering
cb59817b4a simplify tagstruct creation
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@573 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-23 01:24:16 +00:00
Lennart Poettering
7f68c913f1 revive howl support
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@566 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-22 20:11:56 +00:00
Lennart Poettering
a99e46dd0b rework parameter validity checking in protocol-native server side
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@563 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-22 18:54:21 +00:00
Pierre Ossman
71fd26f895 Wrong userdata used to init operation.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@561 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-22 15:36:11 +00:00
Pierre Ossman
cc2178e5c3 Support for setting volume on sources.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@560 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-22 14:11:23 +00:00
Lennart Poettering
1506c15a8e build defer() function in src/polyp/mainloop-signal.c only on win32
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@541 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 23:50:46 +00:00
Lennart Poettering
d48912ba04 improve error checking in simple API
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@537 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 23:32:12 +00:00
Lennart Poettering
2bdc07e2ea add validity check for the "server" parameter of pa_context_connect()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@536 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 23:31:38 +00:00
Lennart Poettering
71b3bff681 * modify pa_context_exit_daemon() to return a pa_operation object
* add callback prototypes to all introspection functions in client lib
* add proper validity checking and error handling to all functions in the client lib
* other minor cleanups
* todo update


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@531 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 22:41:02 +00:00
Lennart Poettering
98cb6aa4a3 * a lot of doxygen updates
* s/pa_operation_callback/pa_operation_callback_t/g
* add more typedefs for function prototypes
* add API to query the channel map used by a pa_stream


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@530 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 17:09:39 +00:00
Lennart Poettering
ddd51e2c6c add doxygen docs for channel map
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@528 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 16:31:39 +00:00
Lennart Poettering
3bc09025ed minor doxygen fixes
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@526 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 16:23:12 +00:00
Lennart Poettering
6d09602460 replace "spawn" parameter of pa_context_new() with a proper flags parameter
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@523 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 16:10:20 +00:00
Lennart Poettering
4566d56e31 * Make typdefs for the pa_context callback prototypes
* s/pa_context_notify_cb/pa_context_notify_cb_t/g


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@521 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 16:01:53 +00:00
Lennart Poettering
304449002c 1) Add flexible seeking support (including absolute) for memory block queues and playback streams
2) Add support to synchronize multiple playback streams
3) add two tests for 1) and 2)
4) s/PA_ERROR/PA_ERR/
5) s/PA_ERROR_OK/PA_OK/
6) update simple API to deal properly with new peek/drop recording API
7) add beginnings of proper validity checking on API calls in client libs (needs to be extended)
8) report playback buffer overflows/underflows to the client
9) move client side recording mcalign stuff into the memblockq 
10) create typedefs for a bunch of API callback prototypes
11) simplify handling of HUP poll() events

Yes, i know, it's usually better to commit a lot of small patches instead of a
single big one. In this case however, this would have contradicted the other
rule: never commit broken or incomplete stuff.

*** This stuff needs a lot of additional testing! ***


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@511 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 04:05:16 +00:00
Pierre Ossman
b26df7e4a0 Properly clear members during init.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@509 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-17 17:00:33 +00:00
Pierre Ossman
d142c12c60 That's a delta parameter, not a size parameter.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@508 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-17 16:48:44 +00:00
Pierre Ossman
45700da4eb Have a memblock queue on the client side during recording. This makes the
record callback optional in stead of mandatory.

For applications that wish to retain the old behaviour, simply call
pa_stream_peek() followed by pa_stream_drop() in the callback.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@507 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-17 15:42:47 +00:00
Pierre Ossman
2686857b8c Fix path to poll.h.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@504 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-17 13:18:30 +00:00
Pierre Ossman
c4cf7adaca Fix typo in #ifndef.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@503 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-17 13:11:37 +00:00
Pierre Ossman
5eda18bf60 Cleaned up the includes after the restructuring. Indicate which headers are
public and which are internal through <> vs "".


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@500 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-17 12:10:58 +00:00
Lennart Poettering
b9513089f5 fix doxygen
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@498 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-17 00:11:54 +00:00
Lennart Poettering
2e0dcc4ff0 include header files in simple.h with <> instead of ""
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@497 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-16 23:48:41 +00:00
Lennart Poettering
19b5b71feb * drop polylib prefix from #define
* include error.h from polypaudio.h


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@494 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-16 23:11:28 +00:00
Lennart Poettering
45b1eeec6b fix compilation of simple API
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@493 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-16 23:10:33 +00:00
Lennart Poettering
22c8cebb85 drop polyplib- prefix from client library files
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@492 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-16 22:43:59 +00:00
Lennart Poettering
f49b09df15 make channel naming somewhat RFC2551 compliant
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@491 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-16 22:34:52 +00:00
Lennart Poettering
4ad2926eba add a bunch of simple Makefile in the subdirs, just to make compilation with emacs easier
they are not intended to be distributed or anything.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@490 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-16 22:11:35 +00:00