Commit graph

32 commits

Author SHA1 Message Date
Lennart Poettering
c65ebeec1e raop: move all raop files to subdir 2009-06-17 15:09:28 +02:00
Lennart Poettering
f13bbd576f prop: introduce new PA_PROP_DEVICE_INTENDED_ROLES property 2009-06-08 16:58:45 +02:00
Lennart Poettering
1c4393acf0 modules: add {sink|source|card}_properties argument to all modules 2009-05-28 02:39:22 +02:00
Lennart Poettering
d035f4a3f3 Modify smoothing code to make cubic interpolation optional and allow 'quick fixups' on resuming
The primary reason for this change is to allow time graphs that do not
go through the origin and hence smoothing starting from the origin is
not desired. This change will allow passing time data into the smoother
while paused and then abruptly use that data without smoothing using the
'quick fixup' flag when resuming.

Primary use case is allowing recording time graphs where the data
recorded originates from a time before the stream was created. The
resulting graft will be shifted and should not be smoothened to go
through the origin.
2009-04-05 02:26:02 +02:00
Colin Guthrie
205cbe8afc raop: Add call to pa_sink_set_max_request()
This is just a copy from the ESD version which is a little crude, but will do for now.
2009-03-25 23:05:41 +00:00
Colin Guthrie
86dee05aec Use LGPL 2.1 on all files previously using LGPL 2 2009-03-03 20:23:02 +00:00
Colin Guthrie
d293f08442 raop: Allow for nice sink descriptions to be set (interpolated from avahi) 2009-03-01 23:19:31 +00:00
Colin Guthrie
4ebc6cf86e Remove references to trademarked terms.
According to http://www.apple.com/legal/trademark/appletmlist.html we could run into
problems for using these terms without also displaying a corresponding disclaimer/attribution
notice. This is difficult in the context of a headless server, so simply don't use such terms.

In GUI apps which can enable this functionality we should use the relevant terminology, and
display the appropriate attribution notices.
2009-02-22 16:08:43 +00:00
Colin Guthrie
d1957b8325 Trivial typo in a comment 2009-02-03 23:46:13 +00:00
Colin Guthrie
e28903e9e0 Clean up volume/mute settings a bit.
As the APEX device only has one channel of volume (e.g. it's always matched) we emulate any variation in channel volumes in software.
Remove the unnecessary callback defininitions.
2009-02-03 23:46:13 +00:00
Colin Guthrie
6e31178fd9 Fix the message processing for PA_SINK_MESSAGE_GET_LATENCY by returning rather than breaking and falling through. 2009-01-27 23:02:41 +00:00
Lennart Poettering
d5f46e824e move flat volume logic into the core. while doing so add n_volume_steps field to sinks/sources 2009-01-27 04:39:07 +01:00
Lennart Poettering
b2ef19acc5 include PA_SINK_INVALID_STATE in all switch/case statements to make gcc shut up 2009-01-22 00:26:34 +01:00
Lennart Poettering
bae221cca9 rework module usage counter stuff to be pull based 2009-01-15 20:49:12 +01:00
Colin Guthrie
59eb64987f Follow master change r34dd4a and fix shutdown when --disallow-module-loading=1 is passed 2008-10-08 20:37:43 +01:00
Colin Guthrie
19d2831973 Make module-raop-sink/discover work with 0.9.11 API 2008-10-08 20:36:24 +01:00
Colin Guthrie
ded09d1f9b Implement hardware volume control.
This allows near instant change of volume when controlling the hardware but the stream volume still suffers from a sizable delay.
2008-10-08 20:36:24 +01:00
Colin Guthrie
0ff75aea05 Add Lennart back in to Copyright as I copied these files from his originals and was a bit overzealous in changing things ;)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2520 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:35:47 +01:00
Colin Guthrie
d997420791 Minor correction of help text
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2518 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:33:48 +01:00
Colin Guthrie
15e8420a25 Still send silence when we are not doing anything else, but also flush the buffers correctly upon recovery from suspension.
Close the RTP socket correctly after passing messages about.
When not sending silence, the RTSP socket will be closed after some period of inactivity. I'm not sure why this is.
Sending silence keeps things working and with the flushes after suspension we now get a better latency. As this relies on the auto-suspend feature, it's not exactly ideal.
Typical latencies are currently about 3s which makes it more or less usuable for listening to music.
If the connection is disconnected, it will reconnect but I've found that the second connection is silent. Hopefully the silence will prevent the first connection dropping.
Refs #69

git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2504 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:09 +01:00
Colin Guthrie
7f0cf0c9ad Fix up a couple of values related to encoding overhead.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2497 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:09 +01:00
Colin Guthrie
13bc075875 A few related changes:
* Change the encode_sample routine to simply return normal memchunks allocated from the mempool.
* unref the memchunks returned from encode_sample when we are done with them.
* Create an encoded 'silence' sample and play this at all times to prevent hangup and to 'hog' the airtunes device

This now works and can be used as a regular sink albeit with a constant latency of about 8 seconds :s

git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2485 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:09 +01:00
Colin Guthrie
8108121fa7 Set forgotten keyword property
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2483 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:08 +01:00
Colin Guthrie
6c1dd6e54b Move the encoding loop around a bit such that it does not grab the data and keep it for the next loop iteration.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2481 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:08 +01:00
Colin Guthrie
be73d378f5 unref the raw data memblock before requesting more data.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2408 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:08 +01:00
Colin Guthrie
d195d06da7 Change suggested by Lennart. Do not return a memchunk, instead pass in the pointer.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2405 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:08 +01:00
Colin Guthrie
e00127fe24 Various changes suggested by Lennart.
Store the core* rather than just the mainloop as we can reuse the mempool without passing it in as an argument.
const'ify and deconst'ify some vars

git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2404 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:08 +01:00
Colin Guthrie
ec9a618768 Listen to the on_close callback. This still causes asserts in the mainloop, so this is not a complete solution
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2403 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:08 +01:00
Colin Guthrie
5eecfa2e3f Move the ownership of the encoded data memchunk into the raop_client.
This does not seem to fix the pool full messages so I'll have to try and suss that out.

git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2400 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:07 +01:00
Colin Guthrie
d51f5944b7 A very rough first version of the sink.
I can actually play music to my airport now (woot).
Still very rough round the edges and I need to handle disconnects etc. but it's all good progress :)

git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2398 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:07 +01:00
Colin Guthrie
66cf1d1f66 Some minor tidyup to remove code now in raop client. Still nowhere near functional.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2367 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:07 +01:00
Colin Guthrie
6570620cc3 Start the raop sink. It's based on pipe sink and isn't anywhere near finished. It does however compile.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2335 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:06 +01:00