1. 23 Nov, 2020 5 commits
    • Arun Raghavan's avatar
      build-sys: Bump libpulse soversion · d1e0594e
      Arun Raghavan authored
      This is because we reverted the previous API breaking change to the
      meaning of the pa_mainloop_prepare() timeout argument.
      d1e0594e
    • Arun Raghavan's avatar
      Revert "mainloop: fix timeout assignment in pa_mainloop_prepare" · e6b3edd3
      Arun Raghavan authored
      This reverts commit 6b1719d0, as it
      inadvertently broke the semantics of timeout in the API.
      
      Fixes: #1039
      e6b3edd3
    • Tanu Kaskinen's avatar
      build-sys: Disable GStreamer by default with Autotools · 2ea425d1
      Tanu Kaskinen authored
      With Meson GStreamer is already disabled by default, let's match that
      with Autotools.
      2ea425d1
    • pali's avatar
      alsa: Fix compile warnings · e99e862a
      pali authored
      modules/alsa/alsa-sink.c: In function ‘pa_alsa_sink_new’:
      modules/alsa/alsa-sink.c:2603:15: warning: declaration of ‘state’ shadows a previous local [-Wshadow]
               void *state;
                     ^~~~~
      modules/alsa/alsa-sink.c:2270:11: note: shadowed declaration is here
           void *state = NULL;
                 ^~~~~
        CC       modules/alsa/module_alsa_sink_la-module-alsa-sink.lo
      modules/alsa/alsa-source.c: In function ‘pa_alsa_source_new’:
      modules/alsa/alsa-source.c:2289:15: warning: declaration of ‘state’ shadows a previous local [-Wshadow]
               void *state;
                     ^~~~~
      modules/alsa/alsa-source.c:1975:11: note: shadowed declaration is here
           void *state = NULL;
                 ^~~~~
      modules/alsa/module-alsa-card.c: In function ‘prune_singleton_availability_groups’:
      modules/alsa/module-alsa-card.c:691:71: warning: pointer of type ‘void *’ used in arithmetic [-Wpointer-arith]
                   pa_hashmap_put(group_counts, p->availability_group, count + 1);
                                                                             ^
      e99e862a
    • Tanu Kaskinen's avatar
      switch-on-port-available: Fix switching away from unplugged headphones · eaa6d5d6
      Tanu Kaskinen authored
      Commits 323195e3 ("switch-on-port-available: Switch to headphones on
      unknown availability") and d83ad699 ("module-alsa-card: Drop
      availability groups with only one port") broke switching from headphones
      to speakers when headphones are unplugged. switch_from_port() selects
      speakers, whose availability is unknown and availability group is unset,
      and then calls switch_to_port(). The new logic in switch_on_port()
      unintentionally blocked that switch.
      
      This patch moves the problematic logic from switch_to_port() to
      port_available_hook_callback() where it doesn't interfere with
      switch_from_port().
      
      Fixes: #1043
      eaa6d5d6
  2. 22 Nov, 2020 1 commit
  3. 21 Nov, 2020 8 commits
  4. 17 Nov, 2020 1 commit
  5. 15 Nov, 2020 1 commit
    • Arun Raghavan's avatar
      switch-on-port-available: Switch to headphones on unknown availability · 323195e3
      Arun Raghavan authored
      Since not all users will have environments that asks what they plugged
      in when their hardware supports TRRS inputs but don't have impedance
      sensing, let's emulate our previous default behaviour of enabling the
      headphone port at least.
      
      This can likely be improved so users can configure the module to select
      for the device they are most likely to plug in (so an option to enable
      just the microphone, or headphones+headset-mic ports).
      
      Fixes: #1028
      323195e3
  6. 31 Oct, 2020 2 commits
  7. 30 Oct, 2020 2 commits
    • Tanu Kaskinen's avatar
      alsa-mixer: Fix jack name comparison · daf3a3c4
      Tanu Kaskinen authored
      HDMI jacks are configured like this:
      
          [Jack HDMI/DP]
          append-pcm-to-name = yes
      
      The pa_alsa_jack.name field is then "HDMI/DP" and pa_alsa_jack.alsa_name
      is set to "HDMI/DP,pcm=3 Jack" or similar. If we compare the name fields
      of HDMI paths, they appear to use the same jack element even though they
      are different in reality, so all HDMI ports got incorrectly assigned to
      the same availability group.
      daf3a3c4
    • Tanu Kaskinen's avatar
      alsa-mixer: Set availability groups once per card · eee8292a
      Tanu Kaskinen authored
      Previously they were set once per mapping, which caused the numbering to
      restart from 1 for every mapping, so ports were incorrectly assigned to
      the same group.
      eee8292a
  8. 26 Oct, 2020 2 commits
  9. 23 Oct, 2020 4 commits
    • Arun Raghavan's avatar
      build-sys: Set the GStreamer RTP backend to disabled by default · d8e708e4
      Arun Raghavan authored
      Packaging shouldn't be using the automatic setting anyway, and let's
      disable by default for one release and mark this as experimental so we
      can flush out any corner cases.
      d8e708e4
    • Arun Raghavan's avatar
      rtp: gstreamer: Account for rounding errors in RTP timestamp conversion · 314e97d9
      Arun Raghavan authored
      Since the RTP timestamp is converted to time units and back, a small
      error can creep up, which then results in a single frame error in where
      we place the buffer in the output memblockq. This results in minor
      glitches, so we check for and eliminate the error.
      314e97d9
    • Arun Raghavan's avatar
      rtp: gstreamer: Don't count on buffer DTS for capture time · 5f12dde2
      Arun Raghavan authored
      With GStreamer 1.18, the old behaviour of storing the capture time in
      DTS is gone (which is reasonable, since the semantics really don't
      match). So instead, we get a capture timestamp when the buffer is being
      pushed from udpsrc. This should eventually move into udpsrc, and the
      timestamp should come from the cmsg instead of the clock.
      
      We still fallback to the DTS if the meta isn't available, as the meta
      might be dropped in older versions of rtpL16pay due to a bug.
      5f12dde2
    • Igor Kovalenko's avatar
      module-bluez5-discover: avoid use after free on de-init · 3fc2ac10
      Igor Kovalenko authored
      Hashmap loaded_device_paths contain objects holding keys to entries, and
      these objects must be alive while map is emptied.
      
      Reorder freeing this hashmap before destroying device objects to fix
      crash on exit.
      3fc2ac10
  10. 20 Oct, 2020 3 commits
  11. 14 Oct, 2020 1 commit
  12. 13 Oct, 2020 5 commits
  13. 04 Oct, 2020 3 commits
  14. 29 Sep, 2020 1 commit
  15. 28 Sep, 2020 1 commit