Chris Robinson
026b4b8f4c
Better handle large second offsets
2010-01-12 02:26:38 -08:00
Chris Robinson
c924a50bed
Don't use a flag to set an error when applying the source offset
2010-01-12 02:22:38 -08:00
Chris Robinson
574792d2e1
Fix Windows compilation
2010-01-11 23:47:03 -08:00
Chris Robinson
ab2eb5a603
Check buffer size when copying padding instead of the data pointer
2010-01-11 10:58:33 -08:00
Chris Robinson
3d7f925d52
Add helpful values to the resampler enum
2010-01-11 07:02:29 -08:00
Chris Robinson
93b584ff84
Add a cosine resampler
2010-01-11 06:19:54 -08:00
Chris Robinson
705849ca73
Add an option for point resampling
2010-01-11 05:37:20 -08:00
Chris Robinson
1a57f095e8
Hold global lock during mixing only when iterating device contexts
2010-01-11 03:57:49 -08:00
Chris Robinson
ac9c2e8c4a
Cleanup OSS/Solaris loop a bit
2010-01-10 12:40:59 -08:00
Chris Robinson
45f8efec41
Return the default config string for empty entries
2010-01-09 06:48:43 -08:00
Chris Robinson
ef7df2416d
Hide OSS and Solaris devices if their files can't be stat'd
2010-01-09 06:40:50 -08:00
Chris Robinson
cb113315f7
Promote AL_EXT_source_distance_model to complete
2010-01-09 03:27:16 -08:00
Chris Robinson
d61f90a9c2
Make sure the device handle is valid when getting the device error
2010-01-09 03:25:13 -08:00
Chris Robinson
3d11fb219e
Hold the default context extensions globally
2010-01-09 02:48:18 -08:00
Chris Robinson
4d9a368f96
Suppress connection refused errors
...
Since that just typically means the server isn't running
2010-01-08 01:43:27 -08:00
Chris Robinson
43220b604c
Reduce some indentation
2010-01-08 01:21:57 -08:00
Chris Robinson
91f28fa87c
Try the PulseAudio backend first
2010-01-08 01:08:27 -08:00
Chris Robinson
82547db2db
Prepare the pcm handle after recovering
2010-01-06 23:02:28 -08:00
Chris Robinson
64ac3a4739
Use snd_pcm_recover in more places
2010-01-06 22:55:20 -08:00
Chris Robinson
c90616b963
Use snd_pcm_recover to recover from certain device errors
2010-01-06 22:50:30 -08:00
Chris Robinson
0ceaa01c3d
Adjust PulseAudio's capture latency
2009-12-30 15:33:16 -08:00
Chris Robinson
7d7e503603
Properly retrieve device-inspecific errors
2009-12-28 23:29:49 -08:00
Chris Robinson
7ee81eac0f
Store ALC errors with the device when possible
2009-12-28 23:19:13 -08:00
Chris Robinson
c9a08fc7b2
Remove some unneeded functions
2009-12-28 13:12:45 -08:00
Chris Robinson
69ab93a824
Add a function to check if a config option is set to a non-empty value
2009-12-28 13:08:15 -08:00
Chris Robinson
179b660eee
Enforce a lower bound playback frequency of 8khz
2009-12-28 12:47:59 -08:00
Chris Robinson
a0ef7be9a5
Improve layout parsing and allow using long names for speakers
2009-12-28 11:49:55 -08:00
Chris Robinson
2a735b14dc
Add an option to spawn a PulseAudio server on request
2009-12-28 10:49:31 -08:00
Chris Robinson
a294dd8d9b
Be more lenient in signaling the mainloop
2009-12-28 10:15:59 -08:00
Chris Robinson
dc1522282b
Try to find a compatible format from Pulse's default sink
2009-12-27 11:05:59 -08:00
Chris Robinson
528a4c6a02
Update panning for existing AL contexts when creating a new one
2009-12-26 20:27:14 -08:00
Chris Robinson
1770a8b62b
A NULL Pulse context won't have a valid error code
2009-12-26 12:18:16 -08:00
Chris Robinson
77a0a6de95
Wait for the buffer attrib update from pulse to finish
2009-12-26 11:30:41 -08:00
Chris Robinson
c1fd977e79
Consolidate pulse capture failure path
2009-12-26 10:46:29 -08:00
Chris Robinson
cbbda93292
Make sure a proper channel map is set for pulse capture
2009-12-26 09:17:03 -08:00
Chris Robinson
c6340ce12d
Clean up some loading checks
2009-12-26 08:49:11 -08:00
Chris Robinson
7bc739e965
Use the proper logging function
2009-12-26 08:16:25 -08:00
Chris Robinson
9f988808c7
Start and stop PortAudio's stream in the proper methods
2009-12-26 08:14:28 -08:00
Chris Robinson
6e9ce47a4b
GetConfigValueBool should take an int, not a float
2009-12-26 07:42:57 -08:00
Chris Robinson
89f59c0e1c
Shorten a long line
2009-12-26 07:42:16 -08:00
Chris Robinson
3793919892
Capture as much as possible directly from PulseAudio
2009-12-25 17:56:57 -08:00
Chris Robinson
d1699d50f6
Add missing newline
2009-12-25 15:18:32 -08:00
Chris Robinson
b94d950b1e
Undefine no longer needed macro
2009-12-25 14:11:43 -08:00
Chris Robinson
d3e77a0f63
Fix incorrect error check
2009-12-25 13:19:25 -08:00
Chris Robinson
965a71ee90
Only use pa_stream_set_buffer_attr_callback when available (0.9.15+)
2009-12-25 13:17:21 -08:00
Chris Robinson
fd794b44b2
Use pa_stream_begin_write when available for "zero-copy" writing
...
Must be compiled against 0.9.16 or newer to be available. It will fall back to
the old method if the function is not available at run-time.
2009-12-25 13:11:17 -08:00
Chris Robinson
c9dcba17a9
Check error returns instead of error string
2009-12-25 13:05:04 -08:00
Chris Robinson
88de4e15b3
Mark the source for updating when setting a buffer on it
...
Changing the buffer can change the playback format, which can require different
source parameter calculations. Queueing a buffer on a source that has no
buffers (or only buffers without a format, eg. buffer 0) has the same effect
2009-12-25 05:09:29 -08:00
Chris Robinson
7f0c6629b9
Use a 64-bit value to scale potentially-large numbers
2009-12-24 15:41:45 -08:00
Chris Robinson
f6ca39403d
Use the Pulse server-specified playback rate by default
2009-12-24 15:35:22 -08:00