Georg Chini | 23 Nov 21:27 2014

[PATCH RFC] module-loopback: Make module loopback honor requested latency

This patch makes module loopback adjust to the requested latency if possible
by tweaking the rate adjustment. In the case that the latency is too 
small, at
least 25ms of audio will be kept in the buffer. As the rate adjustment 
can only be
done in small steps, adjustment takes a while for long latencies. I 
could not figure
out how to initially delay playing to the sink until the requested 
latency is reached.
If there is a way to do this, it would simplify the logic of the rate 
calculation
because only small deviations of the sample rate would have to be taken into
account.
This patch includes a modified version of the patch sent on Friday.

---------

  src/modules/module-loopback.c                  | 88 +++++++++++++++++-----
  1 file changed, 68 insertions(+), 20 deletions(-)

---------

diff --git a/src/modules/module-loopback.c b/src/modules/module-loopback.c
index b3b9557..cbeec56 100644
--- a/src/modules/module-loopback.c
+++ b/src/modules/module-loopback.c
 <at>  <at>  -25,6 +25,7  <at>  <at> 
  #endif

  #include <stdio.h>
(Continue reading)

Alexander E. Patrakov | 23 Nov 17:15 2014
Picon

Valgrind complains about bluetooth on pulseaudio exit

Hi.

Today I tried to valgrind pulseaudio, for reasons unrelated to 
bluetooth. Result: found nothing about my bug, but got this on exit:

==16639== Invalid read of size 8
==16639==    at 0x5D5F3F0: pa_hashmap_iterate (hashmap.c:245)
==16639==    by 0x1E71A5C9: adapter_free (bluez5-util.c:521)
==16639==    by 0x5D5F2DC: pa_hashmap_remove_all (hashmap.c:232)
==16639==    by 0x5D5F341: pa_hashmap_free (hashmap.c:120)
==16639==    by 0x1E71CAC5: pa_bluetooth_discovery_unref 
(bluez5-util.c:1667)
==16639==    by 0x1E51243E: module_bluez5_discover_LTX_pa__done 
(module-bluez5-discover.c:159)
==16639==    by 0x4E60B48: pa_module_free (module.c:227)
==16639==    by 0x4E61929: pa_module_unload_all (module.c:292)
==16639==    by 0x406476: main (main.c:1161)
==16639==  Address 0x1c57fe20 is 32 bytes inside a block of size 1,072 
free'd
==16639==    at 0x4C2A20C: free (in 
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==16639==    by 0x510395E: pa_xfree (xmalloc.c:131)
==16639==    by 0x1E71CAB4: pa_bluetooth_discovery_unref 
(bluez5-util.c:1664)
==16639==    by 0x1E51243E: module_bluez5_discover_LTX_pa__done 
(module-bluez5-discover.c:159)
==16639==    by 0x4E60B48: pa_module_free (module.c:227)
==16639==    by 0x4E61929: pa_module_unload_all (module.c:292)
==16639==    by 0x406476: main (main.c:1161)

(Continue reading)

Tanu Kaskinen | 23 Nov 14:33 2014
Picon

[PATCH] NEWS: Zsh completion support isn't new in 6.0

There have been several fixes to the Zsh completion during the current
development cycle, but the completion was initially implemented
already in 4.0.
---
 NEWS | 1 -
 1 file changed, 1 deletion(-)

diff --git a/NEWS b/NEWS
index a86a33d..6e49f6b 100644
--- a/NEWS
+++ b/NEWS
 <at>  <at>  -6,7 +6,6  <at>  <at>  Changes at a glance:
   * SystemD socket activation support
   * Better support for multichannel and 2.1 profiles
   * Protocol optimisations
-  * Zsh shell completion support
   * Remap optimisations
   * Lots of other enhancements, bug fixes, and documenation and i18n updates

--

-- 
1.9.3

_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
Tanu Kaskinen | 23 Nov 14:23 2014
Picon

[PATCH 0/2] A couple of bluetooth related build system fixes

Tanu Kaskinen (2):
  build-sys: Always define bluetooth related HAVE_* variables
  build-sys: Fix the BlueZ 5 native headset backend check

 configure.ac | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

--

-- 
1.9.3

_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
Raymond Yau | 23 Nov 00:39 2014
Picon

Re: redirect sound to different out jack

>
> I don't know how to test it in a correct way. I don't know what hw:0,0 stands for in my case. So far I did:

speaker-test -c2 -t wav -d -D hw:0,0



hw:0,0 mean card 0 device 0

there are 32 subdevices for playback

APLAY
**** List of PLAYBACK Hardware Devices ****

card 0: Live [SB Live! Value [CT4832]], device 0: emu10k1 [ADC Capture/Standard PCM Playback]

  Subdevices: 32/32

>
> I chose surround 4.0 and tested in settings
>http://i.imgur.com/0zBIvDV.png
> I could hear only rear left, rear right.
>
> With the same setting I tested command
>
> speaker-test -c2 -t wav -D rear:0
>
> speaker-test 1.0.27.2
>
> Playback device to rear:0
> Rate set to 48000Hz, S16_LE, 2 channels
> files WAV
> frequency set to 48000Hz (requested 48000Hz)
> Buffer size range from 64 to 16384
> Period size range from 16 to 16384
> Using max buffer size 16384
> Periods = 4
> was set period_size = 4096
> was set buffer_size = 16384
>  0 - Front Left
>  1 - Front Right
> Period time = 2,731817
>  0 - Front Left
>  1 - Front Righ

>
> I can also hear youtube and music player but not line in (TV card).
> Seems to work ok with this test file and also when I press in settings rear lef rear right but the problem is still no control for this in Master and no sound from line in (TV tuner).  The stange thing is that after I did PulseAudio/Log test some new controls/sliders appeared in Kmix and I could choose the main channel and there was option for wave surround and this allowed me to control sound level from this one slider in kmix in tray. Although I tried to chack many sliders  Line in didn't worked.

Line in playback is provided by ac97 mixer which connect to green jack only,  you lost the wavetable synth,   mic, line in, video playback of ac97 mixer if your green jack is broken

the black jack is connected to i2s dac

>
> But when I removed /.pulse/client.conf I ended up with previous settings where basic channel is set to surround 4.0 and there are no other options.
>
> I'm not sure if it is important but on card label I have CT4830 while aplay reports CT4832.
>
> pulseaudio verbose log as described here (with surround 4.0)
>https://wiki.ubuntu.com/PulseAudio/Log
> I played youtube, tv tuner and radio stream from clementine
>http://pastebin.com/CDmpLkn1

(   0.094|   0.000) D: [pulseaudio] alsa-util.c: Trying surround40:0 with SND_PCM_NO_AUTO_FORMAT ...
(   0.095|   0.000) D: [pulseaudio] alsa-util.c: Managed to open surround40:0
(   0.095|   0.000) D: [pulseaudio] alsa-util.c: Maximum hw buffer size is 341 ms
(   0.096|   0.001) D: [pulseaudio] alsa-util.c: Set buffer size first (to 3840 samples), period size second (to 480 samples).
(   0.096|   0.000) I: [pulseaudio] alsa-util.c: Device surround40:0 doesn't support 44100 Hz, changed to 48000 Hz.
(   0.097|   0.000) I: [pulseaudio] alsa-sink.c: Successfully opened device surround40:0.
(   0.097|   0.000) I: [pulseaudio] alsa-sink.c: Selected mapping 'Analog Surround 4.0' (analog-surround-40).
(   0.097|   0.000) I: [pulseaudio] alsa-sink.c: Device doesn't support mmap(), falling back to UNIX read/write mode.
(   0.097|   0.000) I: [pulseaudio] alsa-sink.c: Cannot enable timer-based scheduling, falling back to sound IRQ scheduling.

The multi plugin seem not support mmap interleaved and pulseaudio fallback to use unix read write mode

(   0.097|   0.000) I: [pulseaudio] (alsa-lib)control.c: Invalid CTL surround40:0
(   0.097|   0.000) I: [pulseaudio] alsa-util.c: Unable to attach to mixer surround40:0: No such file or directory
(   0.098|   0.000) I: [pulseaudio] alsa-util.c: Successfully attached to mixer 'hw:0'
(   0.098|   0.000) D: [pulseaudio] alsa-mixer.c: Added 2 ports
(   0.098|   0.000) I: [pulseaudio] module-device-restore.c: Restoring port for sink sink:alsa_output.pci-0000_04_02.0.analog-surround-40.
(   0.098|   0.000) I: [pulseaudio] module-device-restore.c: Restoring volume for sink alsa_output.pci-0000_04_02.0.analog-surround-40.
(   0.098|   0.000) I: [pulseaudio] module-device-restore.c: Restored volume: 0:  62% 1:  62% 2:  62% 3:  62%
(   0.098|   0.000) I: [pulseaudio] module-device-restore.c: Restoring mute state for sink alsa_output.pci-0000_04_02.0.analog-surround-40.
(   0.098|   0.000) W: [pulseaudio] sink.c: Default and alternate sample rates are the same.

Only support 48000Hz when pulseaudio specify no resample

(   0.098|   0.000) I: [pulseaudio] sink.c: Created sink 0 "alsa_output.pci-0000_04_02.0.analog-surround-40" with sample spec s16le 4ch 48000Hz and channel map front-left,front-right,rear-left,rear-right
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.resolution_bits = "16"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.api = "alsa"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.class = "sound"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.class = "generic"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.subclass = "generic-mix"
(   0.098|   0.000) I: [pulseaudio] sink.c:    alsa.name= "ADC Capture/Standard PCM Playback"
(   0.098|   0.000) I: [pulseaudio] sink.c:    alsa.id= "emu10k1"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.subdevice = "0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.subdevice_name = "subdevice #0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.device = "0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.card = "0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.card_name = "SB Live! Value [CT4832]"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.long_card_name = "SB Live! Value [CT4832] (rev.8, serial:0x80271102) at 0xa000, irq 18"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.driver_name = "snd_emu10k1"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.bus_path = "pci-0000:04:02.0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     sysfs.path = "/devices/pci0000:00/0000:00:1e.0/0000:04:02.0/sound/card0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.bus = "pci"
(   0.098|   0.000) I: [pulseaudio] sink.c:    device.vendor.id= "1102"
(   0.098|   0.000) I: [pulseaudio] sink.c:    device.vendor.name= "Creative Labs"
(   0.098|   0.000) I: [pulseaudio] sink.c:    device.product.id= "0002"
(   0.098|   0.000) I: [pulseaudio] sink.c:    device.product.name= "CT4832 SBLive! Value"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.string = "surround40:0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.buffering.buffer_size = "30720"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.buffering.fragment_size = "3840"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.access_mode = "serial"
(   0.098|   0.000) I: [pulseaudio] sink.c:    device.profile.name= "analog-surround-40"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.profile.description = "Analog Surround 4.0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.description = "CT4832 SBLive! Value Analog Surround 4.0"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.mixer_name = "TriTech TR28602"
(   0.098|   0.000) I: [pulseaudio] sink.c:     alsa.components = "AC97a:54524123"
(   0.098|   0.000) I: [pulseaudio] sink.c:     module-udev-detect.discovered = "1"
(   0.098|   0.000) I: [pulseaudio] sink.c:     device.icon_name = "audio-card-pci"
(   0.099|   0.000) D: [pulseaudio] core-subscribe.c: Dropped redundant event due to change event.
(   0.099|   0.000) I: [pulseaudio] source.c: Created source 0 "alsa_output.pci-0000_04_02.0.analog-surround-40.monitor" with sample spec s16le 4ch 48000Hz and channel map front-left,front-right,rear-left,rear-right
(   0.099|   0.000) I: [pulseaudio] source.c:     device.description = "Monitor of CT4832 SBLive! Value Analog Surround 4.0"
(   0.099|   0.000) I: [pulseaudio] source.c:     device.class = "monitor"
(   0.099|   0.000) I: [pulseaudio] source.c:     alsa.card = "0"
(   0.099|   0.000) I: [pulseaudio] source.c:     alsa.card_name = "SB Live! Value [CT4832]"
(   0.099|   0.000) I: [pulseaudio] source.c:     alsa.long_card_name = "SB Live! Value [CT4832] (rev.8, serial:0x80271102) at 0xa000, irq 18"
(   0.099|   0.000) I: [pulseaudio] source.c:     alsa.driver_name = "snd_emu10k1"
(   0.099|   0.000) I: [pulseaudio] source.c:     device.bus_path = "pci-0000:04:02.0"
(   0.099|   0.000) I: [pulseaudio] source.c:     sysfs.path = "/devices/pci0000:00/0000:00:1e.0/0000:04:02.0/sound/card0"
(   0.099|   0.000) I: [pulseaudio] source.c:     device.bus = "pci"
(   0.099|   0.000) I: [pulseaudio] source.c:    device.vendor.id= "1102"
(   0.099|   0.000) I: [pulseaudio] source.c:    device.vendor.name= "Creative Labs"
(   0.099|   0.000) I: [pulseaudio] source.c:    device.product.id= "0002"
(   0.099|   0.000) I: [pulseaudio] source.c:    device.product.name= "CT4832 SBLive! Value"
(   0.099|   0.000) I: [pulseaudio] source.c:     device.string = "0"
(   0.099|   0.000) I: [pulseaudio] source.c:     module-udev-detect.discovered = "1"
(   0.099|   0.000) I: [pulseaudio] source.c:     device.icon_name = "audio-card-pci"
(   0.100|   0.000) I: [pulseaudio] alsa-sink.c: Using 8,0 fragments of size 3840 bytes (10,00ms), buffer size is 30720 bytes (80,00ms)

Monitor also 4 channels

   0.100|   0.000) D: [pulseaudio] alsa-mixer.c: Setting output-amplifier-on (Amplifier) priority=10
(   0.100|   0.000) D: [pulseaudio] alsa-mixer.c: Setting output-amplifier-off (No Amplifier) priority=0
(   0.100|   0.000) I: [pulseaudio] alsa-sink.c: Successfully enabled deferred volume.
(   0.100|   0.000) I: [pulseaudio] alsa-sink.c: Hardware volume ranges from -100080,99 dB to 12,00 dB.

Seem sum of master playback volume, pcm playback volume and front playback volume

The dB range of emu10k1 DSP volume controls are  -99999.99 dB to 0dB 

/** Mute state */
#define SND_CTL_TLV_DB_GAIN_MUTE        -9999999

+12 dB is the gain provided by ac97 analog mixer master playback volume

(   0.100|   0.000) I: [pulseaudio] alsa-sink.c: Fixing base volume to -12,00 dB
(   0.100|   0.000) I: [pulseaudio] alsa-sink.c: Using hardware volume control. Hardware dB scale supported.
(   0.100|   0.000) I: [pulseaudio] alsa-sink.c: Using hardware mute control.
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: snd_pcm_dump():
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Multi PCM
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   Channel bindings:
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:     0: slave 0, channel 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:     1: slave 0, channel 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:     2: slave 1, channel 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:     3: slave 1, channel 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Its setup is:
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stream       : PLAYBACK
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   access       : RW_INTERLEAVED
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   format       : S16_LE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   subformat    : STD
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   channels     : 4
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   rate         : 48000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   exact rate   : 48000 (48000/1)
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   msbits       : 16
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   buffer_size  : 3840
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_size  : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_time  : 10000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   tstamp_mode  : ENABLE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_step  : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   avail_min    : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_event : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   start_threshold  : -1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stop_threshold   : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_threshold: 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_size : 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   boundary     : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Slave #0: Hooks PCM
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Its setup is:
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stream       : PLAYBACK
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   access       : MMAP_INTERLEAVED
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   format       : S16_LE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   subformat    : STD
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   channels     : 2
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   rate         : 48000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   exact rate   : 48000 (48000/1)
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   msbits       : 16
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   buffer_size  : 3840
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_size  : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_time  : 10000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   tstamp_mode  : ENABLE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_step  : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   avail_min    : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_event : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   start_threshold  : -1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stop_threshold   : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_threshold: 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_size : 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   boundary     : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Slave: Hardware PCM card 0 'SB Live! Value [CT4832]' device 0 subdevice 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Its setup is:
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stream       : PLAYBACK
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   access       : MMAP_INTERLEAVED
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   format       : S16_LE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   subformat    : STD
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   channels     : 2
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   rate         : 48000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   exact rate   : 48000 (48000/1)
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   msbits       : 16
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   buffer_size  : 3840
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_size  : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_time  : 10000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   tstamp_mode  : ENABLE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_step  : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   avail_min    : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_event : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   start_threshold  : -1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stop_threshold   : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_threshold: 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_size : 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   boundary     : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   appl_ptr     : 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   hw_ptr       : 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Slave #1: Hooks PCM
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Its setup is:
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stream       : PLAYBACK
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   access       : MMAP_INTERLEAVED
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   format       : S16_LE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   subformat    : STD
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   channels     : 2
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   rate         : 48000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   exact rate   : 48000 (48000/1)
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   msbits       : 16
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   buffer_size  : 3840
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_size  : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_time  : 10000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   tstamp_mode  : ENABLE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_step  : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   avail_min    : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_event : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   start_threshold  : -1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stop_threshold   : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_threshold: 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_size : 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   boundary     : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Slave: Hardware PCM card 0 'SB Live! Value [CT4832]' device 0 subdevice 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c: Its setup is:
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stream       : PLAYBACK
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   access       : MMAP_INTERLEAVED
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   format       : S16_LE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   subformat    : STD
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   channels     : 2
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   rate         : 48000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   exact rate   : 48000 (48000/1)
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   msbits       : 16
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   buffer_size  : 3840
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_size  : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_time  : 10000
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   tstamp_mode  : ENABLE
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_step  : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   avail_min    : 480
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   period_event : 1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   start_threshold  : -1
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   stop_threshold   : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_threshold: 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   silence_size : 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   boundary     : 8646911284551352320
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   appl_ptr     : 0
(   0.100|   0.000) D: [pulseaudio] alsa-util.c:   hw_ptr       : 0

The slaves are using mmap

(   0.102|   0.001) D: [alsa-sink-emu10k1] alsa-sink.c: Thread starting up
(   0.102|   0.000) D: [pulseaudio] alsa-sink.c: Requested volume: 0:  62% 1:  62% 2:  62% 3:  62%
(   0.102|   0.000) D: [pulseaudio] alsa-sink.c:            in dB: 0: -12,40 dB 1: -12,40 dB 2: -12,40 dB 3: -12,40 dB
(   0.102|   0.000) D: [pulseaudio] alsa-sink.c: Got hardware volume: 0:  63% 1:  63% 2:  63% 3:  63%
(   0.103|   0.000) D: [pulseaudio] alsa-sink.c:               in dB: 0: -12,00 dB 1: -12,00 dB 2: -12,00 dB 3: -12,00 dB
(   0.103|   0.000) D: [pulseaudio] alsa-sink.c: Calculated software volume: 0:  98% 1:  98% 2:  98% 3:  98% (accurate-enough=no)
(   0.103|   0.000) D: [pulseaudio] alsa-sink.c:                      in dB: 0: -0,40 dB 1: -0,40 dB 2: -0,40 dB 3: -0,40 dB
(   0.106|   0.002) D: [alsa-sink-emu10k1] core-util.c: RealtimeKit worked.
(   0.106|   0.000) I: [alsa-sink-emu10k1] core-util.c: Successfully enabled SCHED_RR scheduling for thread, with priority 5.
(   0.106|   0.000) I: [alsa-sink-emu10k1] alsa-sink.c: Starting playback.
(   0.106|   0.000) I: [alsa-sink-emu10k1] (alsa-lib)pcm_hw.c: SNDRV_PCM_IOCTL_START failed (-77)

This look like the playback stream  fail to start

(   0.107|   0.000) D: [pulseaudio] module-device-restore.c: Could not set format on sink alsa_output.pci-0000_04_02.0.analog-surround-40

_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
Pali Rohár | 22 Nov 22:39 2014
Picon

System mode & SHM

Hello,

it is possible to enable shared memory when pulseaudio is stared 
in system mode?

--

-- 
Pali Rohár
pali.rohar <at> gmail.com
_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
David Henningsson | 21 Nov 16:05 2014

[ANNOUNCE] PulseAudio 6.0 RC1 released!

Hi!

PulseAudio 6.0 rc1 has now been released - compared to 5.0, we have over 
300 patches contributed by 41 people, and that's just the tip of the 
iceberg. All the millions of you who are using it, discussing it with 
your friends or random people who are wrong on the Internet [1], 
reporting bugs, answering questions on support forums, IRC channels, 
Facebook etc, or in other ways have been caring for PulseAudio, you have 
all helped shape PulseAudio what it is today. Thank you!

Some of the new features include:

  * Bluez 5 HSP (headset profile) support, both with and without oFono
  * SystemD socket activation support
  * Better support for multichannel and 2.1 profiles
  * Protocol optimisations
  * Zsh shell completion support
  * Remap optimisations

...but most of all, it's all of the many minor improvements and bug 
fixes all across the place [2].

As usual, we are not 100% confident that not a bug or two might have 
slipped in with all the improvements. Hence this is a release candidate, 
which we count on you to test in your environment to make sure it still 
works for you.

You can get the tarballs here:

http://www.freedesktop.org/software/pulseaudio/releases/pulseaudio-5.99.1.tar.xz
MD5: ce6fae362378d5b1c7d4d52235dc8219
SHA1: 7a84bc008c64ab00153756c2696ecffcd41e0881

http://www.freedesktop.org/software/pulseaudio/releases/pulseaudio-5.99.1.tar.gz
MD5: 7afcfbf27807d231f21b7cac69826cbe
SHA1: 3ba2f03bc821e5e2445e23bee63c3d0c908ef8c1

Oh, and btw. There is a caveat: extra-hdmi.conf has been merged into 
default.conf. This can cause a transitional problem with a lot of 
hardware not being detected by PulseAudio, and you can resolve it by 
either rebooting your computer, or making a symlink from extra-hdmi.conf 
to default.conf (in /usr/share/pulseaudio/alsa-mixer/profile-sets).

Enjoy!

-- 
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic

[1] http://xkcd.com/386/

[2] And if I missed an improvement substantial enough to warrant being 
listed in the above list, my apologies.
Alexander Couzens (2):
      tunnel-new: add un/corking to the state change callback
      tunnel-new: remove uncorking in thread_func. Now handled by state change callback.

Alexander E. Patrakov (10):
      Fix a few "it's -> its" typos
      Name HDMI outputs uniquely
      core-util: Remove redundant check of directory permissions
      build-sys: Eliminate _FORTIFY_SOURCE warnings
      resampler: Support speex resampler compiled with FIXED_POINT
      source, sink: Support weird sample rates
      rtp-recv: fix crash on empty UDP packets (CVE-2014-3970)
      alsa: Add extra HDMI mappings
      resampler: Moved speex_is_fixed_point() to speex.c
      resampler: Changed style of includes

Alexander Kurtz (1):
      vala: Add bindings for libpulse-simple

Alexander Potashev (1):
      i18n: Update Russian translation

Andrey Semashev (1):
      resampler: Fix sample_format_more_precise() for the case of comparing against PA_SAMPLE_S32BE

Arun Raghavan (8):
      gconf: Remove unused variable
      gconf: Avoid calling deprecated function if possible
      echo-cancel: Fix drift timer restart logic across suspend
      srbchannel: Trivial whitespace and style fixes
      srbchannel: Fix documentation error
      pulse: Initalise pa_threaded_mainloop with zeroes
      creds: Rename pa_ancil to pa_cmsg_ancil_data
      bluetooth: Fix some native backend command sending

Bradley Broom (2):
      core-util: Call fchown() only when necessary
      default.pa: Use freedesktop theme sounds in sample examples

Colin Guthrie (8):
      man: Fix XDG_RUNTIME_DIR variable reference.
      build-sys: Clarify some systemd sub-component variable/define names.
      build-sys: Add support for newer systemd without compatibility libs
      socket-server: Add support for systemd socket activation.
      launch: Avoid specifically starting PA and rely on autospawn/socket activation
      launch: Add systemd units for launching pulseaudio user instances
      launch: Disable autospawn by default when systemd daemon support is enabled.
      build-sys: Minor cosmetic tidyup of configure summary

David Henningsson (62):
      alsa-mixer: Fix Analog Input showing up on USB Headset
      sink/source: Initialize port before fixate hook (fixes volume/mute not saved)
      module-switch-on-port-available: Don't switch profiles on uninitialized cards
      module-switch-on-port-available: Use port->card pointer
      module-switch-on-port-available: Use new find best port function
      pstream: Use pa_xnew0 in initialization
      fdsem: remove superfluous parameter in call to pa_fdsem_new_shm
      fdsem: Use atomic.h
      channelmap: Add 2.1 surround
      alsa-mixer: Add surround 2.1 profile
      po: Add two files to POTFILES.in
      module-rescue-streams: Fixup previous patch w r t fallback sink/sources
      creds: Add struct for ancillary data
      iochannel/pstream/pdispatch: Add support for receiving file descriptors
      iochannel/pstream: Support sending file descriptors
      srbchannel: Add the shared ringbuffer object
      shm: Allow to open shm in writable mode
      memblock, pstream: Allow send/receive of remote writable memblocks
      core: Add a second rw mempool
      pstream: Allow reading/writing through srbchannel
      Protocol, client: Add commands to enable srbchannel
      protocol-native: Enable srbchannel
      tests: Add pstream/srbchannel test
      creds: Unbreak build without HAVE_CREDS
      alsa: Add "exact-channels" mapping configurability
      alsa: Allow "fallback" configuration for mappings and profiles
      alsa: Add a multichannel fallback mapping
      alsa: Remove four channel input profile
      conf-parser: Add debug print of parsed files
      sink/source: Fix restore of volume on devices without hw volume
      resampler: Remove duplicate forward declaration of pa_resampler
      Make all debug/info level messages untranslatable
      Replace "authorization" with "authentication"
      alsa-mixer: Improve workaround for Valgrind's false warnings
      core-util: Fail if XDG_RUNTIME_DIR belongs to someone else
      configure: Fix spelling of "backend"
      alsa-util: Add functions for accessing mixer elements through mixer class
      alsa-mixer/card: Move to use the new mixer interface
      alsa: Remove unnecessary hctl handles being passed around
      alsa-time-test: Add fillrate parameter
      alsa-time-test: Do not use Lennart's card by default
      alsa-time-test: Make constants for channels and rate
      srbchannel: Defer reading when setting up read callback
      module-mmkbd-evdev: Don't crash on failure to close fd
      connect-stress-test: Fix number of streams per sink to "20"
      memblockq: Do not allow non-frame indices in the memblock queue
      stream: Fail on client submitting non-frame-aligned memblocks
      protocol-native: Fail if trying to push unaligned memblock into queue
      configure: Remove "WIBBLE" test
      pstream-util: Fix build on freebsd
      module-card/device-restore: Do not legacy load an empty entry
      alsa-mixer: Add support for "Headphone+LO" and "Speaker+LO"
      rtpoll: Fixup pa_rtpoll_run
      bluez 5: Build both headset backends, if available
      bluez 5: Load the native headset backend if the oFono one is unavailable
      bluez 5: Fix a debug message
      bluez 5: remove null headset backend
      bluetooth: Select headset backend through module argument
      dbus-iface: Initialize "new_active" variable to NULL
      configure: Bump sonames
      NEWS: Write entry for 6.0
      po: add pulseaudio.service.in to POTFILES.in

Dimitris Spingos (1):
      i18n: Update Greek translation

Dusan Kazik (1):
      i18n: Add Slovak translation

Dušan Kazik (1):
      i18n: Update the Slovak translation

Evan Nemerson (1):
      client-conf: add missing directory to pulse/client-conf.x11.h include

Felipe Sateler (2):
      zsh-completion: Fix completion for default sink/source
      util: Try finding out application name using dladdr if available

Hemanth Meenakshisundaram (1):
      combine-sink: fix zero adjust_time behaviour.

Hui Wang (3):
      rescue-streams: try to find best one using availability and priority
      module-switch-on-connect: add an argument for conditionally connecting
      module-switch-on-port-available: make the output more accurate

James Bunton (2):
      bluetooth: Don't abort on SBC decoding error
      bluetooth: Fix timing to count based on decoded data

Javier Jardón (2):
      build-sys: Use AM_CPPFLAGS instead of AM_CFLAGS for preprocessor arguments
      build-sys: Add -fdiagnostics-color=auto to CFLAGS

Joe Marcus Clarke (1):
      daemon: Don't try to lock and synchronise threads on (k)FreeBSD

João Paulo Rechi Vita (21):
      bluetooth: Fix lines going over column 128
      bluetooth: Change BlueZ 5 card profile name from a2dp to a2dp_sink
      bluetooth: Rename variable to improve code readability
      bluetooth: Notify the main thread of a stream fd HUP
      bluetooth: Add basic support for HEADSET profiles
      bluetooth: Add BlueZ 5 headset profile names in policy module
      bluetooth: Create NULL backend
      bluetooth: Create oFono backend
      bluetooth: Monitor D-Bus signals
      bluetooth: Create hf_dbus_send_and_add_to_pending() for oFono backend
      bluetooth: Register/Unregister Handsfree Audio Agent with oFono
      bluetooth: List HandsfreeAudioCard objects from oFono
      bluetooth: Parse HandsfreeAudioCard properties
      bluetooth: Implement transport acquire for hf_audio_agent transports
      bluetooth: Implement transport release for hf_audio_agent transports
      bluetooth: Track oFono service
      bluetooth: Handle CardAdded signal
      bluetooth: Handle CardRemoved signal
      bluetooth: Implement org.ofono.HandsfreeAudioAgent.Release()
      bluetooth: Implement org.ofono.HandsfreeAudioAgent.NewConnection()
      bluetooth: Switch transport state to idle in case of HUP

Juho Hämäläinen (1):
      dbus: Use correct initialization for source ports hashmap.

Luiz Augusto von Dentz (6):
      bluetooth: Assert transport has a matching profile
      bluetooth: Add pa_bluetooth_transport_set_state
      bluetooth: Add pa_bluetooth_transport_unlink
      bluetooth: Only create backend instance once objects are listed
      bluetooth: Add discovery to pa_bluetooth_backend_new
      bluetooth: Allow policy module to pick 'off' profile

Lukas Peleska (1):
      jack: made it possible to use multiple jack sources and sinks

Lukasz Marek (1):
      Client API: Add pa_stream_write_ext_free() function.

Mauro Guerrera (1):
      build-sys: Fix daemon linking when building with systemd-daemon support

Michał Górny (1):
      build-sys: Alias bash-completion for all PulseAudio commands

Niels Ole Salscheider (1):
      virtual-surround-sink: Move normalization heuristic to its own function

Pali Rohár (1):
      bluetooth: bluez4: Add profile name to sinks and sources

Parin Porecha (1):
      pactl: Allow to set volume of each channel independently (Bug #39190)

Pete Beardmore (1):
      alsa: Use card description in default sink/source prefix when available

Peter Meerwald (99):
      doc: Fix a couple of 'to to' typos
      doc: Fix pa_stream_set_latency_update_callback() documentation
      tunnel-source-new: Fix shadow compiler warning
      doc: Use correct parameter name wait_for_accept in documentation of pa_threaded_mainloop_signal()
      core: add missing SET_PORT_LATENCY_OFFSET to dispatcher opcode string table
      doc: Use \since doxygen command correctly in mainloop-api.h
      doc: Fix some typos/wording in man/pulse-daemon.conf.5
      man: Fix typos in pulse-daemon.conf.5.xml.in
      pactl: Stop parsing option when the first non-option is encountered
      pactl: Check consistency of volumes specified
      pactl: Document ability to specify channel volumes individually
      pactl: Clean up checking for VOL_RELATIVE flag
      sconv: Cleanup ARM NEON code
      pacat: Mention source in addition to sink where applicable in help
      remap: Don't use PA_VOLUME_NORM
      remap: Rename pa_init_remap() to pa_init_remap_func()
      remap: Refactor channel remap table computation calc_map_table()
      remap: Make resampler's remap structure more self-contained
      remap: Split remapping functions into s16 and float implementation
      remap: Use float constant instead of double
      remap: Add helper function to setup channel arrangement information
      remap: Cleanup remap function selection, add pa_set_remap_func() helper
      remap: Change remapping function argument type from void to int16_t / float as appropriate
      remap: Add (optional) state to remap struct
      remap: Add special remapping case which just re-arranges channels
      remap: Add stereo to mono and 4-channel special case remapping
      mix: Add special-case ARM NEON code for s16 mixing
      core: Distinguish Cortex processors: A8 vs later (A9, A15)
      remap: Add ARM NEON optimized remapping and rearrange code
      core: Initialize ARM NEON remapping code if available
      tests: Adapt memblock-test to changed pa_memimport_get()
      core: Misc srbchannel cleanup
      core: Add SRBCHANNEL command names for debug
      mix: Fix mixing of S24 samples stored as S32RE
      sconv: Use optimized conversion function for both directions
      tests: Cleanup mix-test
      endianmacros: Fix PA_MAYBE_INT16_SWAP() macro
      tests: Fix mix-test on big-endian systems
      util: Fix pa_get_binary_name() on Debian/kFreeBSD
      remap: Add 4-channel to mono channel rearrangement
      tests: Add *.log and *.trs to src/.gitignore
      echo-cancel: Fix spelling of canceller
      misc: Fix format specifiers
      core-util: Avoid warnings when missing certain system calls
      tests: Check expected result of sigbus-test
      memtrap: Debian/kFreeBSD seems to signal SIGSEGV, not SIGBUS
      srbchannel: Cleanup when pa_fdsem_open_shm() fails
      srbchannel: pa_srbchannel_new() may fail
      context: Stop and return if srbchannel memblock looks fishy
      context: Handle client-side failure of pa_srbchannel_new_from_template()
      format: Don't _put() objects obtained with json_object_object_get() or json_object_array_get_idx()
      format: Use json_object_object_get_ex() instead of deprecated json_object_object_get()
      build-sys: Drop support for json 0.9
      format: Don't use deprecated json-c is_error() macro
      daemon: Debian/kFreeBSD 9.2 fails to compile due to caps
      svolume: Make volume pointer parameter const for pa_volume_float32re_c()
      endianmacros: Replace borked PA_FLOAT32_SWAP() with PA_READ_FLOAT32RE() / PA_WRITE_FLOAT32RE()
      core: Add pa_cpu_init() / cpu.c
      cpu: Don't check for both x86 and ARM code
      cpu: Add force_generic_code flag to cpu_info struct
      tests: Split cpu tests in separate files
      tests: Use single-line #ifdef for ARM NEON code
      tests: Add tests for mix special-case code
      tests: Add ARM NEON test code to cpu-mix-test
      tests: Use remap function passed in remap struct
      tests: Reorganize cpu-remap-test program
      tests: Add to remapping special case code tests to cpu-remap-test
      tests: Add rearrange remapping test cases to cpu-remap-test
      tests: Add ARM NEON test code to cpu-remap-test
      tests: Use float constants in cpu-sconv-test
      tests: Remove mix-special-test
      Remove link to CIA from README
      Cleanup !! for bool
      mainloop: Fix typo
      modules: Fix )== typos
      alsa-sink: Check for after-avail is redundant
      tests: Make global variables static in srbchannel-test
      tests: Be careful with data types to avoid cast
      rtpoll: typo
      pactl: Remove deprecated 'stat' behaviour
      resampler: Drop pointless remix variable
      asyncmsgq: Drop weird assert
      pstream: Duplicate assignment, write.data is always NULL
      mix: Make use of pa_cvolume_is_norm/muted() macros
      log: Cleanup
      core: Replace assert()s with pa_assert()s
      alsa: Precompute maximum frames per block
      iochannel: Remove unnecessary zero-initialization
      mix: pa_mix() is always called with more than one steam
      mix: Length over all chunk has already been computed by the caller
      rtpoll: Fix condition for DEBUG_TIMING output
      rtpoll: Drop extra wait_op argument to pa_rtpoll_run()
      alsa-util: Finish description of pa_alsa_set_hw_params()
      build-sys: Deprecate libsamplerate support
      macro: Abort() when pa_assert_not_reached() even for NDEBUG
      macro: Add macro PA_UNUSED
      core: Annotate variables only used within assert()s to be PA_UNUSED
      tests: Use pa_assert_se() to get rid of an used variable warning
      alsa-mixer: Use pa_assert_not_reached()

Peter Ujfalusi (1):
      alsa-util: Reset hwparams_copy before the second try of buffer setup

Pierre Ossman (6):
      protocol-native: Early request bandaid for high latency sink/source
      build-sys: don't build raop modules on win32 as they need librtp
      mainloop: avoid race-y double wakeup status
      poll: don't use shared event in Windows pa_poll()
      poll: don't let select() block on Windows
      daemon: get rid of win32 message timer

Rafael Ferreira (1):
      i18n: Updated Brazilian Portuguese translation

Rex Dieter (2):
      daemon: consolidate startup scripts
      daemon: ensure pulseaudio early startup on kde

Ricardo Salveti de Araujo (3):
      daemon-conf: changing default rlimit_rttime value to 200 ms
      module-stream-restore: use entry_write when filling up the database
      vala: adding missing fields for sink_input/source_output info struct

Sajeesh Sidharthan (1):
      core: Closing proper file descriptor when pipe creation fails

Sjoerd Simons (3):
      alsa-mixer: recognize Dock headphone jack
      alsa-mixer: Disable line-out if headphone jack is plugged
      Alsa: Correct port availability with multiple jacks

Tanu Kaskinen (90):
      Remove all references to the removed KDE files
      alsa: Remove a redundant check
      pactl: Fix a copy-paster error
      tunnel: Fix inverted if condition
      volume: Increase PA_SW_VOLUME_SNPRINT_DB_MAX
      mainloop-api: Improve pa_mainloop_api_once() documentation
      core-util: Make pa_yes_no() translatable
      pacat: Fix partially translated message
      zeroconf-publish: Add locking around pa_mainloop_api_once()
      zeroconf-publish: Don't react to messages while shutting down
      doxygen: Update the configuration file
      direction: Add a couple of direction helper functions
      introspect: Use pa_direction_valid() to validate port direction
      pactl: Fix crash with older servers
      util: Check that the home dir is an absolute path
      client-conf: Remove redundant function parameters
      client-conf: Don't create multiple cookie files
      zeroconf-publish: Don't assume any particular defer event ordering
      hashmap: Add pa_hashmap_remove_and_free()
      Use pa_hashmap_remove_and_free() where appropriate
      doxygen: Enable GENERATE_DEPRECATEDLIST
      sink-input, source-output: Fix mute saving
      sink, source: Assign to reference_volume from only one place
      sink-input, source-output: Assign to volume from only one place
      sink, source: Return early from set_mute()
      sink-input, source-output: Add logging to set_mute()
      sink, source: Allow calling set_mute() during initialization
      echo-cancel: Remove redundant get_mute() callback
      sink, source: Call set_mute() from mute_changed()
      sink, source: Assign to s->muted from only one place
      sink-input, source-output: Remove redundant get_mute() functions
      solaris, tunnel: Remove some redundant boolean conversions
      sink, source: Add hooks for volume changes
      sink-input, source-output: Add hooks for volume changes
      sink, source: Add hooks for mute changes
      sink-input, source-output: Add hooks for mute changes
      bluetooth: Remove redundant assignments
      bluetooth: Fix a copy-paste error in log message
      resampler: Remove prefix from static functions
      shell-completion: Add completion for parec
      bluetooth: Add "valid" flag to pa_bluetooth_adapter
      bluetooth: Refactor device validity management
      combine-sink: Make the latency range calculation easier to read
      combine-sink: Add a convenience variable
      combine-sink: Fix the initial requested latency of new outputs
      combine-sink: Rearrange block_usec initialization
      client-conf: Don't report failure from pa_client_conf_load()
      client-conf: Move x11 and env loading to pa_client_conf_load()
      authkey: Remove pa_authkey_load(), it's redundant
      authkey: Rename pa_authkey_load_auto() to pa_authkey_load()
      core-util: Add pa_append_to_home_dir()
      esound, native: Pass an absolute path to pa_authkey_load() when using a file in the home directory
      core-util: Add pa_get_config_home_dir()
      core-util: Add pa_append_to_config_home_dir()
      authkey: Use the config home dir for relative paths
      bluetooth: Refactor POLLHUP handling
      device-manager: Add a comment about non-extensible struct
      .gitignore: Add srbchannel-test
      simple: Take locally buffered data into account in pa_simple_get_latency()
      sink-input, source-output: Assign to reference_ratio from a single place
      shell-completion: Install the Zsh completions
      shell-completion: zsh: Move duplicated code into a function
      shell-completion: zsh: Support also --server in remote detection
      shell-completion: zsh: Don't say "this help" when it's a different help
      shell-completion: zsh: Don't use multiple option sets for one command
      shell-completion: zsh: Use -S and -A with _arguments
      shell-completion: zsh: Add "=" to the end of some command options
      alsa-mixer: Fix path subset detection
      device-restore: Sync the database on unload
      raop: Don't use incompatible default sample spec parameters
      bluetooth: Always initialize profile->available
      device-manager: Don't allow setting an empty description in the client API
      alsa-mixer: Mark "Line HP Swap" as required-any
      Add a Valgrind suppression file
      core-util: Add pa_unset_env()
      switch-on-connect: Initialize userdata contents to zero
      tunnel-sink-new: Limit the maximum latency to 200 ms
      bluetooth: Move stuff to pa_bluetooth_transport_put/unlink()
      tunnel-sink-new: Fix requested latency check
      shell-completion: zsh: Mark a variable as local
      shell-completion: zsh: Rework pactl completion
      alsa-mixer: Merge analog-output-desktop-speaker with analog-output-speaker(-always)
      alsa-mixer: Ignore some elements in the analog-output path
      socket-server: Improve readability
      build-sys: Fix a variable value check
      .gitignore: Add pulseaudio.service
      shell-completion: zsh: Fix set-default-sink/source completion
      shell-completion: zsh: Fix the set-card-profile description
      dbus: Fix the ActivePort property handler
      raop: Fix a memory leak

Wim Taymans (9):
      device-restore: log restored mute state
      combine-sink: rework output add/remove
      combine-sink: add support for DYNAMIC_LATENCY
      configure: fix headset check
      bluez5-device: use get_profile_direction
      bluez5-util: add destroy function
      backend-native: add a new native headset backend
      backend-native: implement volume control
      bluetooth: set gain correctly

Yuri Chornoivan (1):
      Update Ukrainian translation

poljar (Damir Jelić) (1):
      resampler: Split the resampler implementations into separate files

_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
Georg Chini | 21 Nov 14:42 2014

[PATCH] module-loopback.c: latency optimization

This patch flushes the buffer when the sink input is detached
and discards data after attaching a sink input until the pop callback
is called for the first time, thus eliminating latency arising from
slow starting sinks and from streaming to the previous sink.

----

  src/modules/module-loopback.c                             | 11 +++++++++--
  1 file changed, 9 insertions(+), 2 deletions(-)

----

diff --git a/src/modules/module-loopback.c b/src/modules/module-loopback.c
index da83894..22eadfc 100644
--- a/src/modules/module-loopback.c
+++ b/src/modules/module-loopback.c
 <at>  <at>  -87,6 +87,7  <at>  <at>  struct userdata {
      pa_usec_t latency;

      bool in_pop;
+    bool pop_called;
      size_t min_memblockq_length;

      struct {
 <at>  <at>  -464,6 +465,8  <at>  <at>  static int sink_input_pop_cb(pa_sink_input *i, 
size_t nbytes, pa_memchunk *chunk
      pa_assert_se(u = i->userdata);
      pa_assert(chunk);

+    if (PA_SINK_IS_RUNNING(u->sink_input->sink->thread_info.state) && 
!u->pop_called)
+        u->pop_called = true;
      u->in_pop = true;
      while (pa_asyncmsgq_process_one(u->asyncmsgq) > 0)
          ;
 <at>  <at>  -515,7 +518,7  <at>  <at>  static int sink_input_process_msg_cb(pa_msgobject 
*obj, int code, void *data, in

              pa_sink_input_assert_io_context(u->sink_input);

-            if (PA_SINK_IS_OPENED(u->sink_input->sink->thread_info.state))
+            if 
(PA_SINK_IS_RUNNING(u->sink_input->sink->thread_info.state) && 
u->pop_called)
                  pa_memblockq_push_align(u->memblockq, chunk);
              else
                  pa_memblockq_flush_write(u->memblockq, true);
 <at>  <at>  -542,7 +545,7  <at>  <at>  static int sink_input_process_msg_cb(pa_msgobject 
*obj, int code, void *data, in

              pa_sink_input_assert_io_context(u->sink_input);

-            if (PA_SINK_IS_OPENED(u->sink_input->sink->thread_info.state))
+            if 
(PA_SINK_IS_RUNNING(u->sink_input->sink->thread_info.state) && 
u->pop_called)
                  pa_memblockq_seek(u->memblockq, -offset, 
PA_SEEK_RELATIVE, true);
              else
                  pa_memblockq_flush_write(u->memblockq, true);
 <at>  <at>  -607,6 +610,7  <at>  <at>  static void sink_input_attach_cb(pa_sink_input *i) {
      pa_memblockq_set_maxrewind(u->memblockq, 
pa_sink_input_get_max_rewind(i));

      u->min_memblockq_length = (size_t) -1;
+    u->pop_called = false;
  }

  /* Called from output thread context */
 <at>  <at>  -621,6 +625,8  <at>  <at>  static void sink_input_detach_cb(pa_sink_input *i) {
          pa_rtpoll_item_free(u->rtpoll_item_read);
          u->rtpoll_item_read = NULL;
      }
+    pa_memblockq_flush_write(u->memblockq, true);
+    update_min_memblockq_length(u);
  }

  /* Called from output thread context */
 <at>  <at>  -820,6 +826,7  <at>  <at>  int pa__init(pa_module *m) {
      u->core = m->core;
      u->module = m;
      u->latency = (pa_usec_t) latency_msec * PA_USEC_PER_MSEC;
+    u->pop_called = false;

      adjust_time_sec = DEFAULT_ADJUST_TIME_USEC / PA_USEC_PER_SEC;
      if (pa_modargs_get_value_u32(ma, "adjust_time", &adjust_time_sec) 
< 0) {

_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
Raymond Yau | 21 Nov 13:55 2014
Picon

Re: redirect sound to different out jack


>
> I have Sound Balster Live. Is possible to redirect Line out jack signal to Rear out jack?
> The reason I want to do that is that my Line out jack is damaged and searching for solution I read:
> " redirecting front signal to rear output of SB Live! was for a long time a favourite trick for computer audio enthusiasts who want better sound for minimum of money."
>http://www.audiokarma.org/forums/archive/index.php/t-311614.html
> And I want to do that but I don't know how.
>
> When I just put headphone to Rear out jack and set PulseAudio to surround 4.0. the slider in Master w Gnome Alsa Mixer doesn't react to changing volume. The other problem is that there is no sound from line in.
>
> Using surround is a workaround not a solution.
>
> Can you tell me if surround 4.0 is just stereo doubled or it is differently recorded sound for movies?
>
> My goal is to have good stereo sound. Help please.

Post the output of alsa-info.sh

Assume you don't have Live Drive and your rear jack is using Philips UDA1334 DAC and front jack is using AC97

Just swap the definition of front and rear device and change the channel map

you may need to find out whether rear jack support mono or not

http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/conf/cards/EMU10K1.conf;hb=HEAD

_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
sabayon11 | 21 Nov 12:30 2014
Picon

redirect sound to different out jack

I have Sound Balster Live. Is possible to redirect Line out jack signal to Rear out jack?
The reason I want to do that is that my Line out jack is damaged and searching for solution I read:
" redirecting front signal to rear output of SB Live! was for a long time a favourite trick for computer audio enthusiasts who want better sound for minimum of money."
http://www.audiokarma.org/forums/archive/index.php/t-311614.html
And I want to do that but I don't know how.

When I just put headphone to Rear out jack and set PulseAudio to surround 4.0. the slider in Master w Gnome Alsa Mixer doesn't react to changing volume. The other problem is that there is no sound from line in.

Using surround is a workaround not a solution.

Can you tell me if surround 4.0 is just stereo doubled or it is differently recorded sound for movies?

My goal is to have good stereo sound. Help please.
_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
David Henningsson | 20 Nov 08:35 2014

Re: [Ubuntu-audio-dev] Preferred resampler method on armhf.

Crossposting to Debian and upstream lists.

Apparently Debian has a patch that uses fixed point by default on armhf, 
so I'm just echoing Luke's question here: Has anybody performed any 
testing or benchmarks across armhf hardware, w r t fixed point vs 
floating point resampling with speex and PulseAudio?

Reference:
http://anonscm.debian.org/cgit/pkg-pulseaudio/pulseaudio.git/tree/debian/patches/0002-Use-the-fixed-point-speex-resampler-on-ARM.patch

On 2014-11-18 00:25, Luke Yelavich wrote:
> Hey folks.
> I'm starting to work on merging Ubuntu and Debian packaging for pulseaudio. One of the patches Debian
currently has is to use fixed point on all arm flavours they support. The argument given is that float
resampling doesn't necessarily perform better than fixed point resampling, even on hard float capable
hardware, and sometimes it is worse. here is the blurb taken from the patch:
>
> Switch to use the speex fixed point resampler method by default on ARM.
> Traditionately there wasn't any standard floating point hardware, so for
> those machines it's an obvious choise. On machine using the hardfloat
> ABI floating point still isn't an obvious win over integer performance,
> it's of equal performance on some machines, but slower on others.
>
> Has anybody performed any testing or benchmarks on the hardware we support? Should we just drop this and
continue to use floating point resampler code?
>
> Luke
>
> _______________________________________________
> Mailing list: https://launchpad.net/~ubuntu-audio-dev
> Post to     : ubuntu-audio-dev <at> lists.launchpad.net
> Unsubscribe : https://launchpad.net/~ubuntu-audio-dev
> More help   : https://help.launchpad.net/ListHelp
>

--

-- 
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic
_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss <at> lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Gmane