mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-31 22:25:33 -04:00
No description
Calling change_cb() whenever anything happens in the ownership of the bus name caused trouble in PulseAudio in this scenario: 1. PulseAudio is using a device and owns the corresponding service name. 2. Another application requests device release. 3. PulseAudio releases the device. 4. Change in the bus name ownership: PulseAudio gives up the ownership, and nobody owns the name. 5. reserve-monitor notices that, and notifies PulseAudio. 6. Since reserve-monitor reports the device as "not busy", PulseAudio decides to reserve the bus name immediately back to itself and opens the device again. The other application will forcibly take the bus name to itself, as it should according to the protocol, but the other application may have trouble opening the device if it tries to do that before PulseAudio has had time to react to the NameLost signal. This can be solved by not calling change_cb() if there are no changes in the device busy status. In this scenario the device is considered "not busy" while PulseAudio is owning the bus name, so PulseAudio gets no notification when the ownership changes from PulseAudio to nobody. |
||
|---|---|---|
| doc | ||
| doxygen | ||
| m4 | ||
| man | ||
| po | ||
| src | ||
| vala | ||
| .gitignore | ||
| .mailmap | ||
| autogen.sh | ||
| bootstrap.sh | ||
| configure.ac | ||
| git-version-gen | ||
| GPL | ||
| LGPL | ||
| libpulse-mainloop-glib.pc.in | ||
| libpulse-simple.pc.in | ||
| libpulse.pc.in | ||
| LICENSE | ||
| Makefile.am | ||
| orc.mak | ||
| PROTOCOL | ||
| pulseaudio-text.svg | ||
| pulseaudio.svg | ||
| PulseAudioConfig.cmake.in | ||
| PulseAudioConfigVersion.cmake.in | ||
| README | ||
| todo | ||
PULSEAUDIO SOUND SERVER
WEB SITE:
http://pulseaudio.org/
GIT:
git://anongit.freedesktop.org/pulseaudio/pulseaudio
GITWEB/CGIT:
http://cgit.freedesktop.org/pulseaudio/pulseaudio/
MAILING LIST:
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
GIT COMMITS MAILING LIST:
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-commits
TRAC/BUGZILLA TICKET CHANGES MAILING LIST:
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-bugs
IRC:
#pulseaudio on irc.freenode.org
CIA:
http://cia.navi.cx/stats/project/polypaudio
FRESHMEAT:
http://freshmeat.net/projects/pulseaudio/
OHLOH:
http://www.ohloh.net/projects/4038
AUTHORS:
Several
HACKING:
In order to run pulseaudio from the build dir __OPTIMIZE__ should be
disabled (look at src/pulsecore/core-util.h::pa_run_from_build_tree()),
this can be done by passing "CFLAGS=-O0" to the configure script:
./autogen.sh
CFLAGS="-ggdb3 -O0" LDFLAGS="-ggdb3" ./configure
make
./src/pulseaudio -n -F src/default.pa -p $(pwd)/src/.libs/
SPELLING:
PulseAudio