On Fri, 2014-08-08 at 15:32 +0600, Alexander E. Patrakov wrote: > 08.08.2014 15:11, Tanu Kaskinen wrote: > > If you agree that these changes would be a good thing, I'll add that to > > my "list of things to do during the next decade" (it's a long todo list > > of random lower priority things that I work on occasionally in fifo > > order). > > May I look at the other items in this list? Why not. It's attached. -- Tanu -------------- next part -------------- Implement device-manager support in pactl. branch: pactl-device-manager Print something on subscription events. [done] Figure out the relation between "devices", "roles" and "database entries". [done] entry = device roles don't have separate objects devices have a priority for each role (there's an array of priorities in the device entries) -> implicit priority list for each role can be constructed from all the device entries pactl device-manager-list-devices pactl device-manager-set-device-description pactl device-manager-delete-entries pactl device-manager-set-routing (boolean/toggle) pactl device-manager-reorder-devices-for-role Fix alsa-lib memory leak (snd_mixer_load() leaks something). https://bugs.freedesktop.org/show_bug.cgi?id=74213 The "canned responses" link on the Community wiki page is broken. Fix https://bugs.freedesktop.org/show_bug.cgi?id=55262 - If volume was at 0% at shutdown upon reboot it's at 100% Fix https://bugs.freedesktop.org/show_bug.cgi?id=74609 - Speakers are unmuted on pulseaudio start, even if headphones are plugged in Fix https://bugs.freedesktop.org/show_bug.cgi?id=74624 - pa_stream_disconnect() is broken Write a new version of the Valgrind patch. http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/19603/focus=19687 In case wtay drops the ball, add a check to the bluetooth thread_func that ensures that we don't try to skip excessive amounts of data in one go. Fix https://bugs.freedesktop.org/show_bug.cgi?id=68107 - monitor source rewinding Also relevant: https://bugs.freedesktop.org/show_bug.cgi?id=79807 Move http://www.freedesktop.org/wiki/Software/PulseAudio/Software/PulseAudio/Documentation/Maintainer/ to a better location. Fix https://bugs.freedesktop.org/show_bug.cgi?id=75643 - Please make pavucontrol have a default device option like gnome-volume-control Fix module-tunnel-sink-new: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/19828 Inhibit analog-output: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/19880/focus=19882 Fix https://bugs.freedesktop.org/show_bug.cgi?id=75954 - FIX_RATE and AUTO_TIMING_UPDATE don't work properly together Convert existing extensions to use pa_extension, and submit that to upstream. Build a proper model of the server state in pactl. The "Home" link on the wiki front page points to a wrong place. Create a separate "Bugs" page, remove the bug section from "Community". Revamp the "About" page. Fix positional sounds: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/19890 Check out the backlog: https://jira01.devtools.intel.com/browse/FARM Get money from Gnome Foundation. Enable TYPEDEF_HIDES_STRUCT in doxygen.conf.in. Enable WARN_NO_PARAMDOC? Figure out what to do with Transifex. http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/19921 Review and redo the threading in module-zeroconf-publish. Make separate sets of main thread and avahi thread variables. Replace pa_mainloop_run_once() usage with messages. Fix function call contexts (at least publish_main_service() is being called from both threads). Rename pa_hashmap_remove() to pa_hashmap_steal(). Release pavucontrol Pester Peter about cleaning up the multi-channel volume patch for pactl: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/19274/focus=19917 Replace PA_CORE_HOOK_SINK/SOURCE_NEW with SINK/SOURCE_SET_INITIAL_DESCRIPTION and SINK/SOURCE_SET_INITIAL_PORT. Write v2 for http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/16965 Study the sink and source latency updating, and try to simplify it (or at least document the update_requested_latency() callback better). ~/misc/latency_updating.txt real_volume should be written to only in sink.c/source.c. Instead of assigning d->adapter directly, add device_set_adapter() and use it. device_set_adapter() should call device_set_valid(). (bluez5-util.c) Replace subscription usage in the dbus protocol module with hooks. Work on smarter remixing (start from always enabling remixing for mono streams). Remove the use of atomic variables in module-combine-sink.c. Document the latency and max request fields of the output and userdata structs in module-combine-sink.c. ~/misc/combine_sink_latency.txt. Use volume and mute change hooks in stream/device-restore instead of subscription. Remove pa_sink_get_mute(), use pa_sink_mute_changed() in alsa and solaris sinks. Change the tizen-ivi subscription address to @linux.intel.com Implement section name parsing in pa_conf_parser, so that we can print errors about invalid or missing object names already when parsing the section header, instead of parsing the object name repeatedly (and in case of errors, we can't log the line number of the invalid section name). Merge the core namereg and the "names" hashmaps of tizen-volume-api and main-volume-policy. The core namereg would lose its default device handling and object lookup functionality, but both can probably be removed without much trouble (the biggest issue may be "political" - other developers don't want to mess with the well-functioning namereg concept). Fix https://bugs.freedesktop.org/show_bug.cgi?id=64563 - pavucontrol is leaking memory pa_open_config_file() should not have separate global and local parameters. If the configuration file should be searched only from the system or the user configuration directory, that should be expressed with flags. Open discussion about how to reset options to the default value in the configuration files. Assigning an empty string would be one approach, but doesn't work well in all cases: if the default behaviour of the "audio-groups" option is to use all defined audio groups, then assigning an empty string should probably result in "don't use any audio groups" rather than resetting to the default. Get rid of the json deprecation warnings. module-murphy-ivi has a horrible hack in murphy/Makefile.am: CONDITIONAL_CFLAGS += -Wl,-rpath -Wl,/usr/lib/pulse-5.0/modules Get rid of it, or at least add a comment. The rpath should be automatically set by libtool, but for some reason it's not being set. If an application wants frequent wakeups, we should honor the application's wish by using a timer if the device can't otherwise do it. https://bugs.freedesktop.org/show_bug.cgi?id=66962 Fix https://bugs.freedesktop.org/show_bug.cgi?id=76529 - Mix of translated and untranslated message Fix https://bugs.freedesktop.org/show_bug.cgi?id=78563 - Please remove exclamation marks from messages Fix https://bugs.freedesktop.org/show_bug.cgi?id=78564 - Untranslatable string due to wrong usage of gettext Fix https://bugs.freedesktop.org/show_bug.cgi?id=78565 - Placeholders describing command line options should not have spaces Fix https://bugs.freedesktop.org/show_bug.cgi?id=78566 - Auth stands for authentication, not authorization Rename FASTPATH to something more obvious. Add --routing to the shell completions. Get rid of the duplication in profile-set configuration files. Fix issues found by Klocwork. https://otckw.jf.intel.com pa_in_system_mode() works by checking an environment variable. That's weird, let's add a flag to pa_core instead. Return an error code from pa_get_user_name_malloc() so that it's clear that the function can fail. Document that pa_context_new() may return NULL in some cases. Document that pa_context_unref() won't automatically disconnect the context. Remove the core argument from pa_module_unload(). The rate calculation in module-loopback doesn't work right if it takes time for the sink to start consuming audio. Also, the loopback buffer grows large in this scenario, causing lots of latency. Reduce the alsa probing logging. Fix https://bugs.freedesktop.org/show_bug.cgi?id=48307 - Volume changes can be delayed a lot Fix https://bugs.freedesktop.org/show_bug.cgi?id=77499 - One should be able to modify the volume when audio is mute Fix https://bugs.freedesktop.org/show_bug.cgi?id=50056 - Feedback popping sound when volume sliders are moved Change the return type to int of functions that currently return a pointer and can fail. Fix https://bugs.freedesktop.org/show_bug.cgi?id=79911 - incoherent muting of GStreamer channels (mutes master, headphone and speaker, but unmutes only master) pa_config_parser ignores sections with no assignments, which it shouldn't do, because in pa_inidb the bare existence of a section means that an object should be created. Add pa_config_parser_log(), that logs an error message with file name and line number. Reject non-utf8 input in pa_config_parser. Fix resume failure, if alsa card can be opened using only one sampling rate for both input and output. If a sink suspends while at 44.1 kHz, then a source is opened at 48 kHz, the sink fails to resume when the source is open. Fix https://bugs.freedesktop.org/show_bug.cgi?id=79778 - Flash: Very high latency s/pa_strbuf_tostring_free/pa_strbuf_to_string_free/ authkey.c logs a message about zero-length cookie file when creating a new cookie. Silence that message when it doesn't indicate any error. Document the branching in otcshare/pulseaudio, otcshare/pulseaudio-module-murphy-ivi and 01org/murphy. Also document the location of pulseaudio-module-murphy-ivi on the Murphy web site. Remove the hard dependency to lynx when building pavucontrol. When a sink input is being created, change things so that the initial volume is set via pa_sink_input_set_volume() instead of pa_sink_input_new_data_set_volume(). Fix some rpmlint errors/warnings in pulseaudio (see the end of "gbs build" output). Review introspect.c, add input validation where appropriate. Fix https://bugs.freedesktop.org/show_bug.cgi?id=81269 - Add pacmd/pactl command to set volumes by role Search for the machine-id file from /etc/machine-id even if sysconfdir is something else than /etc. Avoid unnecessary volume meter updates in pavucontrol. Some discussion here: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/20599 Fix https://bugs.freedesktop.org/show_bug.cgi?id=81075 - pa_simple_get_latency() reports latency inaccurately Remove the auto_connect parameter from module-bluez4-device.c - it's not used. In module-tunne-sink-new.c, thread_func(), there's if (writable > 0) check. Inverting that check and using "continue;" would allow decreasing the indentation level. Make the subscription API overview documentation more helpful for newbies (add more explanation). Mention the "listen" module argument explicitly in the documentation for module-native-protocol-tcp instead of just referring to module-cli-protocol-tcp. Fix or remove the Ohloh badge on http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Community/ Fix https://bugs.freedesktop.org/show_bug.cgi?id=81802 - Synchronous name service queries are done from the main thread -> potential long delays Replace this patch with a better solution (explained in the commit message): http://thread.gmane.org/gmane.comp.resource-policy.murphy.devel/78 Change the git send-email instructions so that they don't recommend in-thread patch revisions. Don't stop parsing conf files if parse errors happen. In pactl list, when printing things that have controls, print the full control info instead of just the index. Remove the redundant use of PA_SOEXT from default.pa and system.pa. Measure the amount of consumed hashmap entries in a basic setup. It probably exceeds FLIST_SIZE, so increase FLIST_SIZE. Or maybe it's better to not use the overkill flist implementation (which is a multiple-writer multiple-reader contraption). The save_volume flags are almost unused, because volumes are pretty much always saved, so it might be good to try to get rid of the flags. module-device-restore doesn't save the volume when it restores device volume, but that's a bug (harmless, though). When entering passthrough mode, the sink/source volume is reset, and this volume of course isn't saved. To get rid of all save_volume flags, some alternative solution for passthrough is needed. Improve remapping: http://lists.freedesktop.org/archives/pulseaudio-discuss/2014-August/021133.html