Milestone 0.9.15
For a higher level overview read this:
http://0pointer.de/blog/projects/oh-nine-fifteen.html
Also note that Bluetooth support is now be complete in the 0.9.15 release.
A S Alam (2):
Add Punjabi Translation for Module
Adding Punjabi Language
Colin Guthrie (74):
Add a small lib to interpret and produce headers as used in http style requests.
Add a RTSP client impelmentation.
Add a simple base64 library that will be used by the sink
Start the raop sink. It's based on pipe sink and isn't anywhere near finished. It does however compile.
Use pa_sprintf_malloc to do simple concatenation rather than using the higher overhead of pa_strbuf
Use _free rather than _destroy so as not to mix naming conventions.
Convert to using pa_socket_client rather than using blocking IO.
Convert the return values to fit with the rest of pulse 0 == success, < 0 == failure
Fix svn properties and some minor indentation
Trivial change to allocate memory using pulse methods.
Move closer to an asynchronous structure (still some parsing code to be converted).
Add a skeleton raop client which builds on the rtsp client.
Some minor tidyup to remove code now in raop client. Still nowhere near functional.
Add a function for packing bits into a byte buffer. This will be needed when encoding the audio data in ALAC format.
Add a pa_iochannel callback for when the RAOP connection connects.
Use a more stateful response parser.
Wrap the io_callback to ensure that all data is written before asking for more.
Rename rtsp.{c,h} to rtsp_client.{c,h}.
Combine pa_raop_client_new and pa_raop_client_connect (no point in having them separate)
Properly duplicate the hostname passed in on connect.
Add more libraries to librtp now that it's doing a lot more.
A very rough first version of the sink.
Do not assert on NULL values of s. This means the connection was closed. This change somehow kills the mainloop with an assert, so I need to sort that out.
Move the ownership of the encoded data memchunk into the raop_client.
Add a new callback structure to propigate when the RTSP connection dies
Listen to the on_close callback. This still causes asserts in the mainloop, so this is not a complete solution
Various changes suggested by Lennart.
Change suggested by Lennart. Do not return a memchunk, instead pass in the pointer.
Fix up IPv6 address format to enclose it in []
Some misc fixes. consts, base64 optimisation (not that it will be with us long anyway), and c comments
unref the raw data memblock before requesting more data.
Don't try to free stack variables.
Do not prefix internal function rtsp_exec.
Do tidy up on disconnection.
Move the encoding loop around a bit such that it does not grab the data and keep it for the next loop iteration.
Set the send buffer size to prevent rendering silence in amongst our good data (this should be more sophisticated but that can wait for a glitch-free port)
Set forgotten keyword property
Keep track of the memblock pointer internally and do not rely on subsequent calls to pass it back in for unref'ing
A few related changes:
Fix up a couple of values related to encoding overhead.
Minor update to copywrite (I still plan to replace this completely but in the mean time....)
Add seq and rtptime params to record/flush with a view to using these for timing and device suspension
Remove unneeded headers accidentially added in r2500.
Change the API of the RTSP client a bit.
Add some new public API functions to connect and flush.
Still send silence when we are not doing anything else, but also flush the buffers correctly upon recovery from suspension.
Minor correction of help text
Automatic discovery of airtunes devices via Bonjour/Avahi.
Add Lennart back in to Copyright as I copied these files from his originals and was a bit overzealous in changing things ;)
Use the new pa_namereg_make_valid_name() function.
Implement a set volume function to expose this capability to higher layers
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.
Make module-raop-sink/discover work with 0.9.11 API
Remove $Id$ lines left over from SVN
Modularise the RAOP stuff that requires OpenSSL and make it optional at compile time
Follow master change r34dd4a and fix shutdown when --disallow-module-loading=1 is passed
Fix a potential C++/C99 ism, add a log message on error condition
Fix two typos that broke tunnels
Fix a potentially non-returning function in base64 code.
Fix the message processing for PA_SINK_MESSAGE_GET_LATENCY by returning rather than breaking and falling through.
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.
Trivial typo in a comment
A couple of dependancy ordering fixes.
Remove references to trademarked terms.
Add the module dir to the libpulse pkgconfig file (needed for paprefs)
Fix a very strange 'file not found' error in module-alsa-card.
bluetooth: Fix under linked module-bluetooth-device
Don't assume that device reservation is enabled.
raop: Allow for nice sink descriptions to be set (interpolated from avahi)
raop: Log teardown explicitly
raop: Handle the reponse header memory allocation more sensibly.
Use pa_assert_se() when the containing code has side effects.
Use LGPL 2.1 on all files previously using LGPL 2
raop: Add call to pa_sink_set_max_request()
Diego Elio Pettenò (16):
Bump autoconf requirement to 2.62 (latest released version).
Remove gettext macros from configure.ac, intltool is used.
Create an m4 directory for common macros and use it.
Update code to use libtool 2.2. Use convenience recursive libltdl.
Create only the directory the current target should be created into.
Add proper -I directives for out-of-tree builds.
Allow to opt-out from building tests.
Include the alsa/ subdirectory for modules in the search path.
Remove support for internal distributing and bundling of libltdl.
Fix logic thinko.
Move the safety check about pkg-config in bootstrap.sh.
Improve the ltdl discovery code by checking for libtool 2.x functions.
Use #ifdef to avoid warning about undefined macro.
Disable portability warnings from automake.
Make sure to set 'no' on the variable cached.
Properly check for versioning flags.
Domingo Becker (1):
updated spanish translation
Erich Boleyn (1):
RTP segfault/uninitialized resampler
Fabian Affolter (4):
Some strings done in German translation
Some strings done in German translation
Updated German translation
Updated German translation
Finn Thain (3):
revive solaris module
revive solaris module
make dbus optional during build
Francesco Tombolini (2):
Italian language by ubuntu team
Updated linguas file for it lang
Henrique Junior (1):
Updated brazilian portuguese translation
Herli Joaquim de Menezes (3):
Strings do PulseAudio traduzidas para o português do Brasil.
Transmitted-via: Transifex (translate.fedoraproject.org)
Transmitted-via: Transifex (translate.fedoraproject.org)
Iain Hibbert (1):
Optionally disable IPv6
Igor Pires Soares (1):
pt_BR added to LINGUAS
Jared D. McNeill (7):
NetBSD needs to include sys/uio.h for some socket functions
NetBSD doesn't know RLIMIT_AS
NetBSD specific atomic operation implementation
It is more portable to assume that SO_RCVBUF/SO_SNDBUF takes and int instead of a size_t
NetBSD doesn't know ENOLINK
NetBSD doesn't know getgrnam_r()/getpwnam_r()
NetBSD sometimes doesn't know SNDCTL_DSP_GETODELAY
Kelemen Gábor (2):
Make pulseaudio.desktop and org.pulseaudio.policy translatable.
Make .desktop and .policy file in src/daemon translatable
Kyle Cronan (1):
Specifying ALSA mixer control
Lennart Poettering (658):
Initialize exit_idle_time to -1 instead of 0 when in system mode.
Initialize exit_idle_time to -1 instead of 0 when in system mode.
instead of resetting virtual_volume unconditionally on initialization, do so only when no volume was set before
when the volume is changed make sure we send out a subscription event
modernize a few checks
use pa_channel_map_init_extend() instead of pa_channel_map_init_auto() as channel map for sink inputs/source outputs in case no map is specified
if the channel map was modified due to PA_SINK_INPUT_FIX_CHANNELS, remap the specified volume properly
additional validity checks
after calling PA_CORE_HOOK_SINK_SET_VOLUME hook, check again whether the volume changed
if a stream comes with now sensible properties attached, use common fallback db entry.
add a comment that pa_sink_input_set_volume and module-flat-volume.c are related
remove $Id$
ignore sinks that do not carry decibel information
some minor reformatting
check the maximum volume of all sink inputs instead of the average volume to avoid digital amplification in favour of attenuation
use pa_sink_set_volume() for changing the volume
query the sink volume outside of the loop because it might be quite expensive
enable flat volumes by default
define 0dB in PA as maximum amplification
correctly load module-flat-volume instead of module-flat-volumes
properly remove dbus matches an filters when unloading m-b-d
always check for libtool prefix binary name to avoid confusion when using both installed and run-from-build-tree versions of PA in parallel
Fix spelling of privilige
Make missing git-changelog.perl non-fatal
fix invalid validity check
add new virtual function may_move_to to sink inputs/source outputs to allow modules to forbid certain connections
implement may_move_to for ladspa/remap sinks
fix return value of pa_frame_aligned()
convert argument to boolean int in PA_UNLIKELY, too
fix arguments to format string
add pa_config_parse_unsigned()
include log.h near the end so that macro.h can be included in log.h and defines pa_bool_t properly
Support showing a backtrace on log messages
support changing logging parameters during runtime using the CLI
Make log meta, time, backtrace configurable using config file
make log meta, time, backtrace configurable using command line
Try to catch certain driver errors
make the debug trap macro a proper macro in macro.h
reorder setting of AM_CFLAGS a bit
temporary commit to allow flameeyes a look
update map file
make new build logic actually work
a lot more build system updates
reorder setting of AM_CFLAGS a bit
update map file
don't set the volume of pacat unless it is explicitly set
warn if ALSA wakes us up and there is actually nothing to do
make sure to use 64bit rounding even on 32bit machines when converting to pa_usec_t
bump micro version
Implement new flags DONT_INHIBIT_AUTO_SUSPEND and START_UNMUTED
a bit of pa_bool_t'ization
Make sure libpulse never gets unloaded
make shm marker architecture independant, patch from michich, closes #401
Check if environ is actually set before we use it
libtool 2.2 updates
Fix return value of --dump-resample-methods
fix implementation of bind now ltdl loader for libtool 2.2
Don't mix front-center into rear channels
Pass GDBM_NOLOCK to gdbm
Load module-volume-restore and module-device-restore before all other modules
Don't hit an assert when checking for idleness
introduce new function pa_module_unload_request_by_index
Don't store pointer to pa_module
actually unload the modules from a new stack frame
unload tunnel modules from a new stack frame
it's better to always use the index of a module instead of the pa_module*
downgrade a few warnings
Make sure we drop CAP_NICE if RT is not allowed
Allow access("/dev/dsp", W_OK) succeed
Use FIONREAD instead of TIOCINQ
Implement PA_SOURCE_MESSAGE_GET_LATENCY
make sure we don't hit an assert when we issue two rewind requests in a single iteration
If we cannot open an ALSA device with SND_PCM_NO_AUTO_FORMAT retry without
fix a gcc warning
Add new API functions pa_volume_snprint() and pa_sw_volume_snprint_dB()
Add APIs to pass pa_volume_t fields in a tagstruct
Add "base volume" field to sinks/sources
Implement base_volume for ALSA sinks/sources
Rework handling of the PA_SINK_LATENCY/PA_SOURCE_LATENCY flags
-Wconvert is pain, let's drop it again
Prefer mixer controls with volumes over switches
run "make update-po"
Add new debuuging API pa_memchunk_dump_to_file()
A few minor cleanups and updates
Add new test source module-sine-source
drop a few warning options, add a few new ones
add a few missing parens
make things compile again
Add new pa_reduce() and pa_gcd() functions
show maximum usable slot size
make module-sine-source actually work
Make sure we don't drop any data on the client side
fix version check
for record streams fill in the latency as the fragsize
read base volume only in proto 15
Fix suspending of all sinks/sources
Extend command name lookup tables to cover complete protocol
add new API function pa_memchunk_sine()
Port sine modules to pa_memchunk_sine()
bump version/soname
Fix version info
add pa_proplist_size() and pa_proplist_isempty()
fix calculation of avail_min
include new proplist functions in export list
remove calc_sine() since we don't need it anymore
Fix a typo I know owe Marc-Andre a beer for.
make pa_asyncq_push() fail under no circumstances.
document that PA_API_VERSION is only for incompatible API changes
fix a potential format string vulnerability
don't rely on PA_SINK_RUNNING vs. PA_SINK_IDLE for optimizations since it might not be fully up to date
add new dont_rewind_render flag to allow quick starts of newly created streams
convert pa_client instantiation to use a pa_client_new_data struct and add hooks for manipulating it
port missing modules to new pa_client_new() API
make PA_CONTEXT_IS_GOOD/PA_STREAM_IS_GOOD a macro so that we can easily check for its availability
fix bad memory access
add new pa_card object as a way to logically combine multiple sinks and sources
maintain a list of sink inputs/source outputs as part of the pa_client object
add functionality to dump list of cards
redirect folks to the ALSA developers not me when their sound drivers are broken
kill autoload stuff as planned
we don't support glib1.2 anymore
make things compile again
make proplist inheritance scheme automatic and implicit
don't show autoload flag anymore since it is obsolete
rework module usage counter stuff to be pull based
move alsa and oss modules into their own subdirectories
add stub makefiles for oss and alsa subdirs
include libcli.la in libprotocol-cli's dependencies
rename card config to card profile
Add SPDIF/HDMI ALSA devices and device descriptions to device search table
fix version info in protocol history
add support for 24bit packed samples
Add support for 24bit samples encoded in the LSB of 32 bit words
make use of PR_SET_TIMERSLACK
remvoe a bit of duplicate code
add card profile prober
add pa_strbuf_isempty
add pa_proplist_to_string_sep()
Split up pa_alsa_init_proplist into two seperate functions for the card and snd_pcm_t specific parts
Don't enumerate invalid profile
actually create pa_card object in module-alsa-card
dump profiles when listing cards
beautify cli output a bit
get rid of pa_module_get_info because it is not used
add api for manipulating volume balances
show balance value in CLI listings
allow setting properties for modules, too
fix bad free()
fix doxygen version references
fix up balance format string a bit
show dB and balance for cached samples
Beef pactl output up a bit
Document explicitly that the internal sink/source states are not considered part of the ABI/API
include sink/source state in pactl output
remove misplaced whitespace
document that I am a retard
add missing eof checks
fix profile names to include input/output specifier
don't divide by zero if no left resp. no right channels are defined
fix destruction when no profiles are defined
dump active profile
add client API for querying card information
show active profile
remove unused variable
always add 'disabled' profile
add priority logic to find best default profile
export pa_channel_map_superset()
add new call pa_alsa_open_by_device_id_profile()
add an API to create arbitrary alsa sinks/sources dynamically without having to load/unload modules
fix copy/paste error
allow cards be referenced by their index
add set-card-profile CLI command
remove bogus pa_core_check_idle() call
when changing profiles do the actual assignment in the generic implementation
remove leftover define
fill in dev_id properly
make implementation of module-alsa-card complete
make pa_card_new_data::active_profile a string
don't restore mute/volume when already set
minor cleanups
add a card profile restore module
enable module-card-restore by default
implement PA_COMMAND_SET_CARD_PROFILE
implement pactl set-card-profile
require autoconf 2.63
don't include full path in driver name.
mark a few more ALSA dB values as 'valid' for valgrind
add new function pa_card_suspend()
add new function pa_strna
fix copy'n'paste error
make gcc shut up a bit more
only reread volume if we actually have a good mixer. Closes #466
fix segfault when in record-only mode
make gcc shut up
rework logic how alsa sinks/sources/cards are named
fix minor memleak in prober
include PA_SINK_INVALID_STATE in all switch/case statements to make gcc shut up
rework module-hal-detect and make it use module-alsa-card instead of module-alsa-sink/-source
When resuming an OSS device ask for the very same fragment settings as we did the first time
add API pa_ncpus()
make rtstutter use pa_ncpus()
use pthread_setaffinity_np() only when it is available
don't overflow when we do digital amplification of 16 bit samples
add a simple abstraction for SIMD operations
drop --ltdl from the libtoolize invocation, since we don't ship ltdl anymore
allow sample spec/channel map to be queried for pa_resampler objects
maintain a pa_core state variable
teach module-rescue-streams and module-always-sink to not do anything if we are shutting down anyway
include list of sinks/source in card dump
in most cases we can use i->core instead of i->sink->core and o->coure instead of o->source->core
move sink input/source output move functions into two parts so that we can start the move, delete the original sink, create a new sink, finish the move; similar for source outputs
add functions to move all inputs of a sink away/similar for source outputs
make module-alsa-card move streams between the old and new sink/source, allowing 'hot' switching between profiles
add support for static mutexes
add generic rate limiting implementation
add pa_log_rate_limit()
use pa_log_ratelimit() at a few places
include a few HAL properties in our card/sink/source properties for ALSA devices
rate limit a warning
add a bitset implementation
implement new API functions pa_channel_map_can_balance(), pa_channel_map_to_name() and pa_channel_map_to_pretty_name()
implement pa_cvolume_scale()
check for availability of RLIMIT_NOFILE and RLIMIT_AS before we make use of it
make a few comments appear in doxygen
store requested resampling method in a seperate field and use it when create a new resampler after a move
remove redundant cast
show pretty channel map name if possible
invert an ill-placed assert
always define PA_MAJOR/PA_MINOR/PA_MICRO to ease feature checking in client applications
import version.h in all header files to make sure that version-based feature testing works
add a few missing doxygen comments
swap argument order of pa_cvolume_get_balance() to be a bit more systematic
allow samples to be played with 'default' (i.e. unspecified) volume.
get rid of module-flat-volumes since we are moving this into the core
fix size calculation
move flat volume logic into the core. while doing so add n_volume_steps field to sinks/sources
add new paramter ignore_dB= to alsa modules
add missing 'const'
when changing volume, store whether it is worth remembering or no
only store volume/device information that has been flagged for saving, and store both relative and absolute volumes
make m-p-e-s use pa_cvolume_set_balance()
instead of making the volume relative our own, let' pa_sink_input_new() do it for us
don't make m-e-s hit an assert when the latency is queried
add missing usage strings
make m-v-r a stub that simply load m-s-r
print the right software volume
fix two typos
store the default sink/source in proper pa_sink*/pa_source* pointers instead of a string
Run make update-po
make things compile again
add new functions pa_dbus_add_matches()/pa_dbus_remove_matches()
make use of new functions pa_dbus_add_matches/pa_dbus_remove_matches
get rid of nonsensical late initialization of namereg/scache and things
add some helpers for dealing with DBusPendingCall based on Mrc-Andre's work in module-bluetooth-discover
temporary commit of lennarts new bt changes
add missing files
properly deal with the case when l/r is silent when adjust balance
fix a bogus assert
implement pa_cvolume_{get|set}_fade
Add a little Gtk test tool to show how balance/fade/value and the channel volumes play together
add new function pa_alsa_get_driver_name()
include ALSA driver in properties for cards/sink
suppress lines made up only of whitespace
dump properties when we create a new sink or source
drop -Wpacked
implement pa_channel_map_can_fade
look for libpulse in multiple different places
allow passing of channel map on command line and hide unused sliders
check for NULL before accessing the name
use uintpr_t when casting between pointers and integers
work around dlsym() return value mistyping as suggested in POSIX
introduce PA_PROP_APPLICATION_PROCESS_MACHINE_ID
add a few new form factors
download everything from gitweb twice to make sure we don't get a 'Generating...' message
drop -pedantic
store the module index shifted by 1 to map PA_INVALID_INDEX to NULL
when determining the minimum volume of all sink inputs make sure to handle the case when there are no sink inputs correctly
try to use glib's g_get_application_name() to set PA_PROP_APPLICATION_NAME
set PA_PROP_WINDOW_X11_DISPLAY from :0.0 and initialize PA_PROP_APPLICATION_PROCESS_MACHINE_ID properly
add new functions pa_bluetooth_cleanup_name() and pa_bluetooth_get_form_factor()
Fix a few sink/source calls when they are called in suspended state.
shortcut pa_sink_process_rewind() when no rewind is happenning and none was requested
reset rewind_requested when we enter suspend mode
update sbc stuff
fix soft_mute handling
handle EAGAIN properly
whitespace cleanup
make rtp.h ANSI C compliant
big module-bluetooth-device.c rework
don't use PA_STREAM_NOT_MONOTONOUS anymore
pull in new SBC/BT files
make update-sbc should also update other BT related sources
make iterating with pa_idxset_next() robust in regards to idxset modifications
implement PA_STREAM_FAIL_ON_SUSPEND logic
add new error code PA_ERR_NOTIMPLEMENTED
make a few functions return void where the retval isn't used/never != 0
make a couple of functions return proper error codes
add a macro definition for each error code
before applying balance/fade check it actually makes sense
when moving a sink between sinks make volume relative
add new API pa_cvolume_compatible_with_channel_map()
add a bit of missing i18n
add a lot of validity checking
add pa_sample_size_of_format()
add new API pa_ascii_valid(), pa_ascii_filter()
fix up parser in pa_proplist_from_string() to handle escapes correctly; make pa_proplist_to_string() escape quotes properly
in addition to per-property env vars PULSE_PROP_xxx look for for a stringified PULSE_PROP env var
beef up proplist test a bit
simplify code a bit by using pa_sample_size_of_format()
rearrange a few things
make gcc shut up
add new calls pa_replace() and pa_unescape()
add a few additional validity checks
clarify things a bit
merge in properties earlier to make identification of streams from hooks easier
version all entries in the database
fix a validity check
properly handle failing stream creation
remove soft volume from pa_sink_input_new_info since it should be handled internally and automatically by the sink input
rate limit underrun messages
make pacmd work in a pipe
bump version and soname
run make update-po
store the identification key in the module-stream-restore.id property
add a .mailmap file for git shortlog
add a 'volume factor' that is implicitly multiplied into the volume of a sink input without being visible to the outside
make module-position-event-sounds use volume factor
handle default volume initialization properly
add pa_client_update_proplist() call
make return value of pa_{sink_input|source_output}_update_proplist() void
allow overwriting of process properties with environment variables
add missing hook
make native protocol use pa_{sink_input|source_output|card}_update_proplist()
parse ini-style sections properly
add new module-augment-properties module for augmenting properties from .desktop files
A few MacOS X portability fixes
add #defines for all enums that lacked it
allow sending meta/policy events to clients
implement a module that corks music/video streams automatically when a phone call is active
make gcc 4.4 shut up
declare 'animation' stream role for Flash and suchlike
minor reformatting
call _kill functions instead of _unlink since the latter should only be called be the stream implementor
addendum to f56da9893: don't crash when s->sink is NULL
instead of reparsing the rate module argument when changing profile, simply restore the originally requested sample_spec, this also makes sure the channel count is properly reset
some minor fixups
tabs are evil
properly free modargs object when init fails; don't abbreviate modargs in struct
make module-hal-detect pick up all cards even when they have no device 0
handle errors from BT service properly
prepare test2
run make update-po
the service fd is a stream socket, so handle things accordingly
minor service IO fixes
use the same service fd shutdown logic when destructing module and changing profile
don't claim that profile changes are always successful
don't try to recycle rtpoll objects
add full set of argument description
add a module that forwards cork/uncork requests to X11 as fake pause/resume key events
fix aiff channel mapping for 6 channels
we reinit proplist since the server will copy from client proplist anyway
drop check for PA_PROP_APPLICATION_NAME since often enough we can deduce this better from g_get_application_name()
make PA_GCC_PACKED and PA_GCC_MALLOC actually work
add definition for GCC style weak references
make PULSE_PROP env vars non-overriding but introduce PULSE_PROP_OVERRIDE for allowing overriding
properly read icon/application name/display from gtk/glib/gdk
ignore gtk-test
show whether gtk+ support is enabled after configure
document all currently known properties
add doxygen comment for PA_GCC_WEAKREF
unify ALSA mixer initialization
don't open the alsa devices in hw:xxx mode
bluetooth: fix message queue/rtpoll
bump required alsa version
allow pa to be run in a chroot() environment tht lacks /proc
simplify pa_alsa_init_proplist_pcm() a bit and include resolution bits in alsa device props
minor optimizations
refer folks to the ALSA devs, not us
allow importing of more memory blocks than exporting
if we fail to import a memblock fill in silence to guarantee stability of timing
export pa_match()
introduce pa_realpath()
export card information for sinks/sources and number of sinks/sources a profile would create to clients
handle both positive and negative errno's
additional validity check
additional validity check
make interpol-test useful for recording as well
add pa_timespec_load
modernize pa_msleep() a bit
split out mixer setup into seperate functions to make things more readable
don't try to use weakref stuff on older compilers that don't really support it
make profile names translatable
make it easier to debug timing related problems
Make sure we actually call _() for translating profile names
add test tool for debugging broken timing in sound drivers
fix comment
big alsa module rework to make things more robust to broken sound drivers and make it easier to debug them
run make update-po
simplify some code
tell gcc to ignore invalid gtk header files
split off foreign code into a convenience library to make gcc warnings go away
check for ENABLE_LEGACY_RUNTIME_DIR with #ifdef, not #if
add new property PA_PROP_APPLICATION_PROCESS_SESSION_ID and initialize it by default
introduce default channel map in addition to the default sample spec
print warnings about driver bugs at most once
prefer profiles that match the default channel map
fix wording, closes #484
make string translatable (fixes #483)
rework logging to make it more modular
make sure we don't choke on PULSE_PROP_OVERRIDE
make sure we don't choke on overly long lines in .desktop files
initialize selem index
rework suspending/resuming
prepare test for tracking down ens1371 issue
Allow passing a NULL proplist to pa_xxxx_update_proplist() to just fire a notification
a couple of boring updates
add new function pa_alsa_get_driver_name_by_pcm()
add new wrapper pa_alsa_safe_delay() around snd_pcm_delay()
print driver name when we encounter driver bugs
use pa_alsa_safe_delay() where appropriate
allow scache entries to have arbitrary names
set esound.byte_order property
implement esd sample panning. closes #428
complete esd suspend/resume implementation
it's probably more appropriate to return the configured latency instead of the actual latency
fix handling of stereo
update gitignore
introduce new well-known role 'a11y'
if ALSA gives us nonsensical data at least try to fix it up a little
in case alsa lies to use don't spin forever
implement device reservation scheme
update reserve.c from upstream git
don't put both the card and the pcm name in the description of a device if one contains the other
set reserve interface application device name
run make update-po
ignore tags file
make sure we check the sink status for PA_SINK_INPUT_FAIL_ON_SUSPEND only after module-suspend-on-idle had the chance to resume the device
hide shave in gitignore
forgot to bump the revision
try to vacuum a little when nothing is going on
revise list of form factors a little
when an underrun happens, increase watermark by 10ms instead of doubling it
when alsa tweaks our sample_spec make sure we adjust the watermark accordingly
make example code a bit more robust/change-proof
introduce seperate vendor/product id fields
revise form factor list a bit, simplify and use singular everywhere
rename PA_PROP_DEVICE_CONNECTOR to PA_PROP_DEVICE_BUS
get additional device data from udev
add logic for initializing a useful icon name
For now don't list icon property (in favour of icon name property) since icon negotiation is probably much more complex (i.e. sizes...) than just putting icon data somewhere.
make dependency on udev versioned
add update-shave target
run make update-shave
run update-reserve
run make update-sbc
run make update-ffmpeg
properly handle directed card info requests
pass profile priority value to clients
fix device reservation for system mode
document more closely from which context certain functions may be called
pa_xnew cannot fail -- that's what the x is in the name
various smaller cleanups
Fix a NULL pointer access when sutting down esound/simple connections
Don't allow suspending of monitor sources.
make suspend state of monitor source follow the suspend state of the sink it belongs to
fix handling of _suspend_all(), return first failure error code
handle negative error codes
print error code when suspend/resume fails
never try to suspend monitor sources, suspend the sinks they belong to instead
try more things to get a proper icon for sinks/sources
fix typo in FOREIGN_CFLAGS
make interpol test more interesting by corking/uncorking multiple times
try to detect when stupid clients forks and refuse all service from then on
run make update-po
prepare release 0.9.15-test4
prepare test5
Ignore HAL NoSuchProperty errors when looking for capabilities field. Closes rhbz #489394
deduce a proper icon for TV sets
get rid of setsockopt() calls since they have never been implemented upstream
document todo items discussed at bt meeting
fix prototypes of sbc functions a bit
unfuck i18n
document things that need to be fixed with FIXME
fix a comment
introduce pa_assert_fp() for fast path assertions
introduce pa_sink_input_get_relative_volume()
always remap relative volume properly
simply bluetooth nrec handling a bit
fix channel mapping for a52 devices. Closes #508
don't try to unref reserve stuff if we don't use it
fix prototypes of remaining sbc.[ch] API regarding size_t/const
rework bluetooth IO loops
fix a misplaced assert
make sure we dispatch messages in order
add pa_hook_is_firing
rework device discovery to share a single device list among all modules
at a couple of #ifdef NOKIAs for now
add functions that modules can call whenever they now the volume changed
readd volume control logic
enable bluetooth default by support
only store card profile if flagged for that
add pa_assert_cc() for compile time assertions
don't fail when no session bus is available
only decrease timer slack, never increase
simplify latency range by not allowing stored 'wildcard' ranges anymore
set request/rewind sizes only via accessor functions
minimal reordering
Allow calling pa_{sink|source}_update_proplist() without an actual proprlist
fix bad memory access when destroying m-b-d
get rid of 'default' min/max latencies, simplify things by just having absolute boundaries
make pa_source_set_max_rewind() work similar to pa_sink_set_max_rewind()
introduce new flag that marks sinks/sources which can adjust the latency dynamically
simplify things and make sure timing setters can be called in most contexts
link jack modules's max_request to the jack buffer size
set latency range only in tsched mode
don't fiddle with latency range because we cannot adjust it dynamically
Don't initialize userdata twice
again, don't fiddle with latency range in sinks with static latency
initialize max_request
don't fiddle with latency range in sources with static latency
initialize max_request to SO_SNDBUF
beef up esd sink properties a bit
trivial simplification
add simple ref counting debugging framework
don't show full so path in backtrace
optionally skip initial frames in backtrace
fix misplace _ref() calls that should have been _assert_ref()
fix value of DYNAMIC_LATENCY
use u->use_tsched everywhere
copy latency flags from sink to monitor source
add missing whitespace
on monitor source be fine with any latency range set by the sink
make sure the discovery module is only loaded once
add missing initialization
fix typo
Small fix for MacOSX compat
don't enabled tsched on software ALSA devices
Trigger move callback a little bit earlier so that no IO thread is running
simplify latency config functions a bit and make them callable in more contexts
document more often the context certain functions are called in
add pa_memblockq_apply_attr()/pa_memblockq_get_attr()
typo fix
notify clients about tlength changes
rework tunneling code
Use pa_source_set_max_rewind_within_thread() for updating the monitor source's max_rewind
introduce typedef for pa_bt_audio_state and use it everywhere
get rid of old 'Connected' property parsing and make sure we don't execute two case branches
make sure we always read in all properties
make sure we never access an invalid pa_bluetooth_device object
fix compiler warning
take org.pulseaudio.Server instead of org.pulseaudio to match the interface name already used in the HAL module
minor cleanups
allow nofail mode only when no server string was specified
Revert "make sure we always read in all properties"
explain ff7033c11d9248fe837204b03c8397231dc511fe
fix an error where a signal was accidently freed when it is tried to register it twice
update command name table
handle buffer_attr changed messages properly
Log underruns
be a bit more verbose about max_request changes
fix buffer defaults
add buffer_attr callback stuff to exported symbol list
in verbose mode log buffer attr changes
increase timing update interval exponentially
prepare test6
don't access i->sink if it is not set
pass destination source/sink when moving streams so that we can access them
prepare test7
load bt discover module only when installed
use machine id instead of hostname to identify local connections
properly account for seeks in the requested_bytes counter
plot the difference between system and sound card time
downgrade a few messages
run make update-po
add missing files to POTFILES.in
refuse to initialize on modem devices
increase log buffer further
initialize sound cards only after the 'control' object appeared
Modify smoothing code to make cubic interpolation optional and allow 'quick fixups' on resuming
introduce pa_{sink|source}_get_latency_within_thread()
don't try to outsmart the transport
Fix a couple of races in native protocol
make it easy to disable interpolation in the interpolation test tool
run make po-update
make sure we keep a reference of the bus connection during the whole runtime if we manage to acquire the bus name
be a bit more verbose about the busses we are connected to
don't fail device reservation if the D-Bus connection is dead
properly handle interpolation when queried x is left of last data position
extend documentation for pa_stream_cork() a bit
Make sure we don't get stuck when prebuf is too high
make sure we don't apply sampling rate fixes that bring the sampling freq > PA_RATE_MAX
enable debugging output based on if DEBUG_DATA macro is set
add suspend_within_thread() callbacks to pa_sink_input/pa_source_output
send the source latency based on the MTU size
adjust max_rewind/max_request whenever the latency changes
mark null sink as support dynamic latency
make use of SO_TIMESTAMP timestamp for accuracy and leave smoother paused until we have data
If the sink volume is lowered to 0 and then increased again, make sure all stream volumes follow instead of staying at 0
compare with doubles, not integer
reduce number of conversions to/from linear volumes
we need to make our multiplications with linear values
after propagating a sink volume change to the sink inputs recalculate their soft volumes
update documentation regarding stream timing a bit
print smallest attenuation/sample
when calculating volume from dB use ceil()
introduce relative_volume field in sink_input and make use of it on sink flat volume change
bluetooth: make sure to set max_request
interpol-test: make it easier to test corking only optionally
bluetooth: memory leak, actually free discovery struct itself
dbus: memory leak, free server id after use
dbus: memory leak, free pending calls
socket-server: memory leak, free machine id after use
protocol-native: print underrun message only once for each underrun
protocol-native: downgrade message if we receive pcm block for dead stream
dbus: drop pa_ prefix from static symbol
dbus: memory leak, actually free dbus wrapper
core: memory leak, fix ref counting when moving streams
core: add a seperate fixed_latency field for sinks/sources with fixed latency
bluetooth: rename sco to hsp also for the user
bluetooth: be a bit more verbose if we exit due to bad poll() revents flag
bluetooth: rework timing logic, properly implement latency callbacks
bluetooth: when starting up HSP stream, send 2 packets first, only afterwards enter one-read-one-write logic
alsa: when printing warning about bogus data from alsa include snd_pcm_dump()
run make update-po
set fixed latencies at more places where appropriate
prepare another snapshot
add missing languages to LINGUAS
Downgrade default log level to NOTICE to follow documentation
make sure we never overflow when calculating sleep time
lirc: drop lirc_in_use, it's made redundant by PA_MODULE_LOAD_ONCE
api: introduce PA_VOLUME_MAX
lirc, mmkbd: extend controllable volume range to PA_VOLUME_MAX
mmkbd,lirc: make use of pa_assert_not_reached()
mmkbd: get rid of support for ancient kernels
lirc: fix logic behind mute buttons
cork-music-on-phone: make sure that we don't check the refcnt of pa_core when the daemon goes down
core-util: add pa_session_id()
core-util: filter utf8 in pa_machine_id()
print session id when starting up
client-conf: modernize a few things
proplist-util: use pa_session_id() instead of accessing 7b816367b01393ed3e3e650047d78f6e-1239640487.203609-1061245823 directly
client-conf: make setting a default server independant from the autospawn setting
client-conf: when is set, disable autospawn setting
client-conf-x11: unbreak autospawn due to stale X11 properties
volume: increase dB range to -90dB
alsa: when passing emptry mixer control name, force sw volume
alsa: store mixer controls to use in profile data
alsa: include the alsa mixer control that is used in the property list
core: introduce new 'reference' volume for sinks
update LINGUAS
run make update-po
sort LINGUAS
core: use pa_{source|sink}_get_latency_within_thread() at one more place
pacat: add missing newline
core: when applying delay memblockq take monitored sink latency into account
bump version for final 0.9.15 release
explcitly ignore return values of some functions marked with gcc's warn_unused_result attribute
add a few missing initializations
Luiz Augusto von Dentz (15):
Unload module-bluetooth-device if the remote device disconnects.
Fix possible invalid read while attempting to load module-bluetooth-device.
Fix bug walking on module list.
Disable warnings for bluetooth-device-module.
Update module-bluetooth-device to the new ipc.
Send packets with proper size.
Fix send and recv message sizes.
Fix sending wrong codec capability length.
Fix hsp rate and channels.
Prevent changing volume on wrong device.
Maintain the original code style for sbc.
Fix misuse of 'frame.joint' when estimating the frame length.
Update ipc to match new message headers introduced on BlueZ 4.34.
Query and make use of the current configuration.
Do not reconfigure capabilities.
Luke Yelavich (1):
POTFILES.IN: Refer to src/pulsecore/dbus-util.c
Maarten Bosmans (3):
handle failure to parse proplist in cli-command gracefully
fix some typos in doxygen comments
various spelling fixes
Marc-Andre Lureau (2):
volume hooks
flat-volume thingy
Marc-André Lureau (96):
build: use pkg-config for X11
build: compile libltdl directory first
build: Don't include builddir, but only srcdir.
build: introduce $SKIP_GIT for make dist (off-line or behind a proxy).
build: add atomic.h and refcnt.h to libpulsecommon
build: Use proper -disable-static instead of removing .a
build: run some tests during make check (and distcheck)
bluetooth: add update-sbc and friends
bluetooth: Update sbc from git upstream.
build: fix missing x11 modules dependencies
core: add pa_sink_update_proplist
core: add pa_source_update_proplist
core: report remaining shared objects when cleanup
libpulse: add proplist_from_string
cli: update-sink-proplist
build: print more informations about preopen
core: add source, si, so proplist_update
cli: add missing update-*-proplist
build: fix few warnings
sink: add a virtual_volume to sink
match: can now change properties also
match: add "key" argument to match different properties
flat-volume: use pa_sink_get_volume(s, TRUE) to work with slaved sink
pulse: introspect sink state
sink: trigger subscribe event on sink state change
cli: fix broken array access with signed state enums
pulse: share private enum values with client side
bluetooth: hsp volume control
bluetooth: cold hsp/a2dp device detection
bluetooth: typo
bluetooth: reconnect to audio service when switching profile
bluetooth: SCO over PCM
bluetooth: suspend SCO state when over PCM
bluetooth: export nrec
bluetooth: reinitialize the sample spec when switching profile
suspend-on-idle: don't crash when so->source is NULL
pulsecore: add PA_CORE_HOOK_*_MOVE_FAIL
bluetooth: update SBC from upstream
bluetooth: don't crash on pa_thread_mq_done() if pa_init() fail
bluetooth: print SBC encoder implementation info
pulse/context: add --enable-legacy-runtime-dir
dbus-util: avoid double free
hal-detect: make sure r is initialized, so we don't take random path
alsa-util: make sure we check an initialized cn variable
log: don't leak bt
card-restore: it's not useful to check an array, let's check the length
protocol-native: fix get_info() for cards
paplay: check if pa_context_connect() succeed
pactl: check if pa_context_connect succeed
tests/sync-playback: check if pa_context_connect succeed
tests/interpol-test: check if mainloop_start() succeed
tests/thread-mainloop-test: check if threaded_mainloop_start() succeed
pactl: return in case of error reading file (avoid using freed d)
main: remove unused lf variable
pulsecore: remove unused variable from cli_command_load()
rtp-recv: remove unused variable assignment
pacat: remove unused variable
pulsecore: fix check for cb (m is already checked before)
padsp: don't use si if it's NULL
tests/ipacl-test: check inet_pton()
pulsecore: unused variable e in hashmap_put()
pulsecore: use r returned from fgets()
daemon-conf: make sure c->log_level < LEVEL_MAX
protocol-esound: don't accept a request of PROTOCOL_MAX
stream-resotre: don't leak a name
protocol-native: don't leak a proplist
rtp: remove unused variable a
pulsecore: don't leak d in case of error
pulsecore: don't leak p when make_random_dir_and_link()
alsa-util: check if mixer_poll_descriptors_count() < 0
bluetooth: fix suspend on a2dp (to do on HSP non SCO over PCM)
build: shave it!
bluetooth: hsp case, check l for appropriate error message
bluetooth: service_fd could be 0
bluetooth: don't init profile when off
bluetooth: reset read/write index when starting to stream
bluetooth: s/handled/not_yet_handled for signals
bluetooth: accept temporarily unavailable error
bluetooth: restart timer when write begin
bluetooth: stream also when source is suspended
bluetooth: load bluetooth device with connected profile
bluetooth: update SCO over PCM with latest changes
bluetooth: mark info_valid when receive Connected
bluetooth: rework the info_valid logic to be more tolerant
pulse: check context (do not user pstream when NULL)
bluetooth: fix #NOKIA, correctly unlink sink/src
bluetooth: connected can be -1, check > 0
bluetooth: fail when switching on non-connected profile
bluetooth: don't access outside array range
bluetooth: remove racy GetProperties to check profile
bluetooth: GetProperties after profile UUID show up
bluetooth: use new audio State properties
dbus: split dbus-util into dbus-shared
daemon: take org.pulseaudio
pulse: client connect to dbus
gtk-test: updated to use PA_CONTEXT_NOAUTOSPAWN|PA_CONTEXT_NOFAIL
Micha Pietsch (1):
German translation done.
PabloMartin-Gomez (1):
Last strings translated to French
Petr Kovář (3):
Added Czech translation.
LINGUAS: Added cs.
Updated Czech translation.
Piotr Drąg (11):
Initial Polish translation
Added Polish translation to LINGUAS
Updated Polish translation
Updated LINGUAS
Updated Polish translation
Updated Polish translation
Updated Polish translation
Updated Polish translation
Updated Polish translation
Updated Polish translation
Updated Polish translation
Sean McNamara (1):
--check: Updated manpage slightly and pulseaudio --help slightly.
Sjoerd Simons (1):
Load module gconf earlier
Timo Jyrinki (4):
Add Finnish (fi) translation by Timo Jyrinki.
Add fi (Finnish) to LINGUAS.
Argh, send pulseaudio Finnish translation (instead of paprefs) by Timo Jyrinki.
Updated Finnish translation against current trunk.
Tom Bamford (1):
Multicast SDP packets sent with same IP TTL as RTP packets
Wang Zeguo (1):
Updated Chinese(zh_CN) translation.
Xavier Conde (6):
Added catalan translation
Added catalan locale
Updated catalan po
Updated catalan po
Updated catalan po
Update catalan po
amitakhya (2):
Sending translation for po/as.po
Sending translation for Assamese
beckerde (3):
Sending translation for Spanish
Sending translation for Spanish
Sending translation for Spanish
chocolateboy (1):
Fix typo in log message: s/Recevied/Received/
daniel cabrera (1):
Updated Spanich translation
elsupergomez (1):
Sending translation for Spanish
ifelix (2):
Sending translation for po/ta.po
Sending translation for Tamil
kkrothap (2):
Sending translation for po/te.po
Sending translation for Telugu
kmilos (4):
Sending translation for po/sr.po
Sending translation for po/sr@latin.po
Sending translation for Serbian
Sending translation for po/sr@latin.po
leahliu (2):
Sending translation for Chinese (Simplified)
Sending translation for Chinese (Simplified)
mgiri (5):
Sending translation for po/or.po
Sending translation for Oriya
Sending translation for Oriya
Sending translation for Oriya
Sending translation for Oriya
raven (1):
Sending translation for Polish
runab (2):
Sending translation for po/bn_IN.po
Sending translation for Bengali (India)
sainrysec (1):
Only creat zh_CN.po
sandeeps (1):
Sending translation for po/mr.po
shanky (1):
Sending translation for po/kn.po
soko (7):
Sending translation for Serbian
Sending translation for Serbian
Sending translation for po/sr@latin.po
Sending translation for Serbian
Sending translation for po/sr@latin.po
Sending translation for Serbian
Sending translation for po/sr@latin.po
swkothar (4):
Sending translation for po/gu.po
Sending translation for Gujarati
Sending translation for Gujarati
Sending translation for Gujarati
tombo (1):
Sending translation for Italian
vpv (4):
Sending translation for Finnish
Sending translation for Finnish
Sending translation for Finnish
Sending translation for Finnish
warrink (1):
Sending translation for po/nl.po
甘露(Gan Lu) (1):
Add zh_CN entry for Chinese Simplified translation.
Note: See
TracRoadmap for help on using
the roadmap.
